[llvm] [CodeGen][DebugInfo] Add missing DebugLoc for SplitCriticalEdge (PR #72192)

via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 13 18:42:07 PST 2023


================
@@ -6,7 +6,7 @@
 ; V01: .loc    1 9 5 is_stmt 1 discriminator 2 # foo.c:9:5
 ; V0: .loc    1 9 5 is_stmt 0 discriminator 11266 # foo.c:9:5
 ; V0: .loc    1 7 3 is_stmt 1 discriminator 11266 # foo.c:7:3
-; V1: .loc    1 9 5 is_stmt 0 discriminator 258 # foo.c:9:5
+; V1: .loc    1 9 5 is_stmt 0 discriminator 514 # foo.c:9:5
----------------
HaohaiWen wrote:

Before SplitCriticalEdge:
```
bb.1.while.cond1.preheader.lr.ph:
; predecessors: %bb.0
  successors: %bb.3(0x30000000), %bb.5(0x50000000); %bb.3(37.50%), %bb.5(62.50%)

  TEST64rr %0:gr64, %0:gr64, implicit-def $eflags
  JCC_1 %bb.3, 4, implicit $eflags, debug-location !10; foo.c:9:5
  JMP_1 %bb.5, debug-location !10; foo.c:9:5
....
bb.5.while.body2:
; predecessors: %bb.5, %bb.1
  successors: %bb.5(0x80000000); %bb.5(100.00%)

  JMP_1 %bb.5, debug-location !10; foo.c:9:5

```
After SplitCriticalEdge without this PR:
```
bb.1.while.cond1.preheader.lr.ph:
; predecessors: %bb.0
  successors: %bb.3(0x30000000), %bb.7(0x50000000); %bb.3(37.50%), %bb.7(62.50%)

  TEST64rr %0:gr64, %0:gr64, implicit-def $eflags
  JCC_1 %bb.3, 4, implicit $eflags, debug-location !10; foo.c:9:5

bb.7:
; predecessors: %bb.1
  successors: %bb.5(0x80000000); %bb.5(100.00%)

  JMP_1 %bb.5
...
bb.5.while.body2:
; predecessors: %bb.5, %bb.7
  successors: %bb.5(0x80000000); %bb.5(100.00%)

  JMP_1 %bb.5, debug-location !10; foo.c:9:5

```
After SplitCriticalEdge with this PR:
```
; predecessors: %bb.0
  successors: %bb.3(0x30000000), %bb.7(0x50000000); %bb.3(37.50%), %bb.7(62.50%)

  TEST64rr %0:gr64, %0:gr64, implicit-def $eflags
  JCC_1 %bb.3, 4, implicit $eflags, debug-location !10; foo.c:9:5

bb.7:
; predecessors: %bb.1
  successors: %bb.5(0x80000000); %bb.5(100.00%)

  JMP_1 %bb.5, debug-location !10; foo.c:9:5
...
bb.5.while.body2:
; predecessors: %bb.5, %bb.7
  successors: %bb.5(0x80000000); %bb.5(100.00%)

  JMP_1 %bb.5, debug-location !10; foo.c:9:5
```


https://github.com/llvm/llvm-project/pull/72192


More information about the llvm-commits mailing list