aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python
diff options
context:
space:
mode:
authorDavid Spickett <david.spickett@linaro.org>2025-10-10 11:08:50 +0100
committerGitHub <noreply@github.com>2025-10-10 10:08:50 +0000
commit6f1ce2b25b56d0fac317d93e7b59a22afbb54931 (patch)
treefea403f1261c81f513c0b2e87d8d76e284148cb7 /lldb/source/Plugins/ScriptInterpreter/Python
parent8ad5a217906db80c6d6502246b70947f26de9bbd (diff)
downloadllvm-6f1ce2b25b56d0fac317d93e7b59a22afbb54931.zip
llvm-6f1ce2b25b56d0fac317d93e7b59a22afbb54931.tar.gz
llvm-6f1ce2b25b56d0fac317d93e7b59a22afbb54931.tar.bz2
[llvm][ADT] Fix uint64_t array BitSet construction on 32-bit systems (#162814)
When the underlying storage element is 32-bit, we may only need half of the last value in the uint64_t array. I've adjusted the constructor to account for that. For example, if you construct a 65 bit bitset you will need both 32-bit halves of the first array value but only the bottom half of the second value. The storage will only have 3 elements, so attempting to assign the top 32-bits into the storage will fail. This happened on our buildbot: https://lab.llvm.org/buildbot/#/builders/154/builds/22555 (though the traceback is not useful) Then added tests for < 32 bit sizes, and assertions for the number of elements we decide to use. Given that the only member of BitSet is a std::array, I think the size will be consistent across systems. Tested on 32 and 64-bit Arm machines. Follow up to #162703.
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python')
0 files changed, 0 insertions, 0 deletions