diff options
author | Farzon Lotfi <farzonlotfi@microsoft.com> | 2025-06-04 15:31:15 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-06-04 15:31:15 -0400 |
commit | 5411ebdebc445b32982b75a94d347b5fcdd8ece9 (patch) | |
tree | a2b8fa72a2a044a3d874a17e36fd830e0625b596 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | 2eb9655d569ce425f8fc667edd5e2f8d6f6da81c (diff) | |
download | llvm-5411ebdebc445b32982b75a94d347b5fcdd8ece9.zip llvm-5411ebdebc445b32982b75a94d347b5fcdd8ece9.tar.gz llvm-5411ebdebc445b32982b75a94d347b5fcdd8ece9.tar.bz2 |
[DirectX] add GEP i8 legalization (#142475)
fixes #140415
The i8 legalization code in DXILLegalizePass's `fixI8UseChain` needs to
be updated to check for i8 geps.
It seems like there are i8 GEPs being left around after we remove all
the other i8 instructions and this is causing problem on validation.
Since this is cleaning up a missed GEP The approach is to assume the
getPointerOperand is to an alloca we further will check if this is an
array alloca then do some byte offset arithmetic to figure out the
memory index to use. Finally we will emit the new gep and cleanup the
old one.
Finally needed to update upcastI8AllocasAndUses to account for loads off
of GEPs instead of just loads from the alloca.
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions