[Instrumentation] Fix a warning
[llvm-project.git] / llvm / test / CodeGen / AArch64 / PHIElimination-debugloc.mir
blob01c44e3f253bb0c6dfd49671056fcc02a735c82c
1 # RUN: llc -mtriple=aarch64-linux-gnu -verify-machineinstrs -o - %s \
2 # RUN:   -run-pass=livevars,phi-node-elimination,twoaddressinstruction \
3 # RUN:   -no-phi-elim-live-out-early-exit=1 -phi-elim-split-all-critical-edges=1 \
4 # RUN: | FileCheck %s
5 # RUN: llc -mtriple=aarch64-linux-gnu -verify-each -o - %s \
6 # RUN:   --passes='require<live-vars>,phi-node-elimination,two-address-instruction' \
7 # RUN:   -no-phi-elim-live-out-early-exit=1 -phi-elim-split-all-critical-edges=1 \
8 # RUN: | FileCheck %s
10 --- |
11   define void @test() !dbg !7 {
12   entry:
13     ret void, !dbg !14
14   }
15   !llvm.dbg.cu = !{!0}
16   !llvm.module.flags = !{!3, !4}
18   !0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "Adrian", emissionKind: FullDebug)
19   !1 = !DIFile(filename: "/tmp/t.c", directory: "/")
20   !2 = !{}
21   !3 = !{i32 2, !"Dwarf Version", i32 2}
22   !4 = !{i32 2, !"Debug Info Version", i32 4}
23   !5 = !{i32 1, !"PIC Level", i32 2}
24   !7 = distinct !DISubprogram(name: "f", scope: !1, file: !1, line: 1, type: !8, isLocal: false, isDefinition: true, scopeLine: 1, flags: DIFlagPrototyped, isOptimized: true, unit: !0)
25   !8 = !DISubroutineType(types: !{})
26   !14 = !DILocation(line: 1, column: 0, scope: !7)
28 ---
29 name: test
30 tracksRegLiveness: true
31 body: |
32   bb.0:
33     liveins: $nzcv, $wzr
34     Bcc 8, %bb.2, implicit $nzcv
36   ; CHECK-LABEL: bb.1:
37   bb.1:
38     %x:gpr32 = COPY $wzr
39   ; Test that the debug location is not copied into bb1!
40   ; CHECK: %3:gpr32 = COPY killed %x{{$}}
41   ; CHECK-LABEL: bb.2:
42   bb.2:
43     %y:gpr32 = PHI %x:gpr32, %bb.1, undef %undef:gpr32, %bb.0, debug-location !14
44     $wzr = COPY %y:gpr32
45 ...