aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorAfanasyev Ivan <ivafanas@gmail.com>2024-10-30 00:26:15 +0700
committerGitHub <noreply@github.com>2024-10-29 10:26:15 -0700
commit4e1b9d34f922d3b8b04a65f29681cd95dc9ce75f (patch)
tree1e8b95e72241d88c2aefe0660641c63c356ec429 /flang/lib/Frontend/CompilerInvocation.cpp
parentd661aea4c5668fc9b06f4b26d9fb072b1a6d7ff4 (diff)
downloadllvm-4e1b9d34f922d3b8b04a65f29681cd95dc9ce75f.zip
llvm-4e1b9d34f922d3b8b04a65f29681cd95dc9ce75f.tar.gz
llvm-4e1b9d34f922d3b8b04a65f29681cd95dc9ce75f.tar.bz2
[mir-strip-debug] Fix debug location info strip for bundled instructions (#113676)
Fix bug that `mir-strip-debug` pass does not remove debug location from bundled instructions. Problem arises during testing that debug info does not affect optimization passes output (`llvm-lit` with ` -Dllc="llc -debugify-and-strip-all-safe"`), when pass operates on MIR with bundled instructions + memory operands. Let mir test check looks like: ``` CHECK-NEXT: BUNDLE { CHECK-NEXT: $r3 = LD $r1, $r2 :: (load (s64) from %ir.a, !tbaa !2) CHECK-NEXT: } ``` So as `mir-strip-debug` pass does not process bundled instructions, running `llc -debugify-and-strip-all-safe` on the test will produce the following output: ``` BUNDLE { $r3 = LD $r1, $r2, debug-location !DILocation(line: 3, column: 1, scope: <0x608cb2b99b10>) :: (load (s64) from %ir.a, !tbaa !2) } ``` And test will fail, but it shouldn't. Seems like the root cause is that `mir-strip-debug` pass should remove debug location from bundled instructions.
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions