aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2025-02-04 14:29:58 +0100
committerGitHub <noreply@github.com>2025-02-04 14:29:58 +0100
commit3bd11b502c1846afa5e1257c94b7a70566e34686 (patch)
tree48881f3d34110a1232ef58b254c36fcfaac36952 /lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
parent6fc66d322b00bdabc27fe8e14b27ab9bd53ba770 (diff)
downloadllvm-3bd11b502c1846afa5e1257c94b7a70566e34686.zip
llvm-3bd11b502c1846afa5e1257c94b7a70566e34686.tar.gz
llvm-3bd11b502c1846afa5e1257c94b7a70566e34686.tar.bz2
[ValueTracking] Fix bit width handling in computeKnownBits() for GEPs (#125532)
For GEPs, we have three bit widths involved: The pointer bit width, the index bit width, and the bit width of the GEP operands. The correct behavior here is: * We need to sextOrTrunc the GEP operand to the index width *before* multiplying by the scale. * If the index width and pointer width differ, GEP only ever modifies the low bits. Adds should not overflow into the high bits. I'm testing this via unit tests because it's a bit tricky to test in IR with InstCombine canonicalization getting in the way.
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h')
0 files changed, 0 insertions, 0 deletions