xref: /aosp_15_r20/external/llvm/test/DebugInfo/COFF/register-variables.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s | FileCheck %s --check-prefix=ASM
2*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -filetype=obj | llvm-readobj -codeview - | FileCheck %s --check-prefix=OBJ
3*9880d681SAndroid Build Coastguard Worker
4*9880d681SAndroid Build Coastguard Worker; Generated from:
5*9880d681SAndroid Build Coastguard Worker; volatile int x;
6*9880d681SAndroid Build Coastguard Worker; int getint(void);
7*9880d681SAndroid Build Coastguard Worker; void putint(int);
8*9880d681SAndroid Build Coastguard Worker; static inline int inlineinc(int a) {
9*9880d681SAndroid Build Coastguard Worker;   int b = a + 1;
10*9880d681SAndroid Build Coastguard Worker;   ++x;
11*9880d681SAndroid Build Coastguard Worker;   return b;
12*9880d681SAndroid Build Coastguard Worker; }
13*9880d681SAndroid Build Coastguard Worker; void f(int p) {
14*9880d681SAndroid Build Coastguard Worker;   if (p) {
15*9880d681SAndroid Build Coastguard Worker;     int a = getint();
16*9880d681SAndroid Build Coastguard Worker;     int b = inlineinc(a);
17*9880d681SAndroid Build Coastguard Worker;     putint(b);
18*9880d681SAndroid Build Coastguard Worker;   } else {
19*9880d681SAndroid Build Coastguard Worker;     int c = getint();
20*9880d681SAndroid Build Coastguard Worker;     putint(c);
21*9880d681SAndroid Build Coastguard Worker;   }
22*9880d681SAndroid Build Coastguard Worker; }
23*9880d681SAndroid Build Coastguard Worker
24*9880d681SAndroid Build Coastguard Worker; ASM: f:                                      # @f
25*9880d681SAndroid Build Coastguard Worker; ASM: .Lfunc_begin0:
26*9880d681SAndroid Build Coastguard Worker; ASM: # BB#0:                                 # %entry
27*9880d681SAndroid Build Coastguard Worker; ASM:         pushq   %rsi
28*9880d681SAndroid Build Coastguard Worker; ASM:         subq    $32, %rsp
29*9880d681SAndroid Build Coastguard Worker; ASM:         #DEBUG_VALUE: f:p <- %ECX
30*9880d681SAndroid Build Coastguard Worker; ASM:         movl    %ecx, %esi
31*9880d681SAndroid Build Coastguard Worker; ASM: [[p_ecx_esi:\.Ltmp.*]]:
32*9880d681SAndroid Build Coastguard Worker; ASM:         #DEBUG_VALUE: f:p <- %ESI
33*9880d681SAndroid Build Coastguard Worker; ASM:         callq   getint
34*9880d681SAndroid Build Coastguard Worker; ASM: [[after_getint:\.Ltmp.*]]:
35*9880d681SAndroid Build Coastguard Worker; ASM:         #DEBUG_VALUE: a <- %EAX
36*9880d681SAndroid Build Coastguard Worker; ASM:         #DEBUG_VALUE: inlineinc:a <- %EAX
37*9880d681SAndroid Build Coastguard Worker; ASM:         #DEBUG_VALUE: c <- %EAX
38*9880d681SAndroid Build Coastguard Worker; ASM:         testl   %esi, %esi
39*9880d681SAndroid Build Coastguard Worker; ASM:         je      .LBB0_2
40*9880d681SAndroid Build Coastguard Worker; ASM: # BB#1:                                 # %if.then
41*9880d681SAndroid Build Coastguard Worker; ASM-DAG:     #DEBUG_VALUE: c <- %EAX
42*9880d681SAndroid Build Coastguard Worker; ASM-DAG:     #DEBUG_VALUE: inlineinc:a <- %EAX
43*9880d681SAndroid Build Coastguard Worker; ASM-DAG:     #DEBUG_VALUE: a <- %EAX
44*9880d681SAndroid Build Coastguard Worker; ASM-DAG:     #DEBUG_VALUE: f:p <- %ESI
45*9880d681SAndroid Build Coastguard Worker; ASM:         incl    %eax
46*9880d681SAndroid Build Coastguard Worker; ASM: [[after_inc_eax:\.Ltmp.*]]:
47*9880d681SAndroid Build Coastguard Worker; ASM:         #DEBUG_VALUE: inlineinc:b <- %EAX
48*9880d681SAndroid Build Coastguard Worker; ASM:         #DEBUG_VALUE: b <- %EAX
49*9880d681SAndroid Build Coastguard Worker; ASM:         incl    x(%rip)
50*9880d681SAndroid Build Coastguard Worker; ASM: [[after_if:\.Ltmp.*]]:
51*9880d681SAndroid Build Coastguard Worker; ASM: .LBB0_2:                                # %if.else
52*9880d681SAndroid Build Coastguard Worker; ASM:         #DEBUG_VALUE: f:p <- %ESI
53*9880d681SAndroid Build Coastguard Worker; ASM:         movl    %eax, %ecx
54*9880d681SAndroid Build Coastguard Worker; ASM:         addq    $32, %rsp
55*9880d681SAndroid Build Coastguard Worker; ASM:         popq    %rsi
56*9880d681SAndroid Build Coastguard Worker; ASM: [[func_end:\.Ltmp.*]]:
57*9880d681SAndroid Build Coastguard Worker; ASM:         rex64 jmp       putint          # TAILCALL
58*9880d681SAndroid Build Coastguard Worker
59*9880d681SAndroid Build Coastguard Worker; ASM:         .short  4414                    # Record kind: S_LOCAL
60*9880d681SAndroid Build Coastguard Worker; ASM:         .asciz  "p"
61*9880d681SAndroid Build Coastguard Worker; ASM:         .cv_def_range    .Lfunc_begin0 [[p_ecx_esi]], "A\021\022\000\000\000"
62*9880d681SAndroid Build Coastguard Worker; ASM:         .cv_def_range    [[p_ecx_esi]] [[func_end]], "A\021\027\000\000\000"
63*9880d681SAndroid Build Coastguard Worker; ASM:         .short  4414                    # Record kind: S_LOCAL
64*9880d681SAndroid Build Coastguard Worker; ASM:         .asciz  "a"
65*9880d681SAndroid Build Coastguard Worker; ASM:         .cv_def_range    [[after_getint]] [[after_inc_eax]], "A\021\021\000\000\000"
66*9880d681SAndroid Build Coastguard Worker; ASM:         .short  4414                    # Record kind: S_LOCAL
67*9880d681SAndroid Build Coastguard Worker; ASM:         .asciz  "c"
68*9880d681SAndroid Build Coastguard Worker; ASM:         .cv_def_range    [[after_getint]] [[after_inc_eax]], "A\021\021\000\000\000"
69*9880d681SAndroid Build Coastguard Worker; ASM:         .short  4414                    # Record kind: S_LOCAL
70*9880d681SAndroid Build Coastguard Worker; ASM:         .asciz  "b"
71*9880d681SAndroid Build Coastguard Worker; ASM:         .cv_def_range    [[after_inc_eax]] [[after_if]], "A\021\021\000\000\000"
72*9880d681SAndroid Build Coastguard Worker
73*9880d681SAndroid Build Coastguard Worker; ASM:         .short  4429                    # Record kind: S_INLINESITE
74*9880d681SAndroid Build Coastguard Worker; ASM:         .short  4414                    # Record kind: S_LOCAL
75*9880d681SAndroid Build Coastguard Worker; ASM:         .asciz  "a"
76*9880d681SAndroid Build Coastguard Worker; ASM:         .cv_def_range    [[after_getint]] [[after_inc_eax]], "A\021\021\000\000\000"
77*9880d681SAndroid Build Coastguard Worker; ASM:         .short  4414                    # Record kind: S_LOCAL
78*9880d681SAndroid Build Coastguard Worker; ASM:         .asciz  "b"
79*9880d681SAndroid Build Coastguard Worker; ASM:         .cv_def_range    [[after_inc_eax]] [[after_if]], "A\021\021\000\000\000"
80*9880d681SAndroid Build Coastguard Worker; ASM:         .short  4430                    # Record kind: S_INLINESITE_END
81*9880d681SAndroid Build Coastguard Worker
82*9880d681SAndroid Build Coastguard Worker; OBJ: Subsection [
83*9880d681SAndroid Build Coastguard Worker; OBJ:   SubSectionType: Symbols (0xF1)
84*9880d681SAndroid Build Coastguard Worker; OBJ:   ProcStart {
85*9880d681SAndroid Build Coastguard Worker; OBJ:     DisplayName: f
86*9880d681SAndroid Build Coastguard Worker; OBJ:   }
87*9880d681SAndroid Build Coastguard Worker; OBJ:   Local {
88*9880d681SAndroid Build Coastguard Worker; OBJ:     Type: int (0x74)
89*9880d681SAndroid Build Coastguard Worker; OBJ:     Flags [ (0x1)
90*9880d681SAndroid Build Coastguard Worker; OBJ:       IsParameter (0x1)
91*9880d681SAndroid Build Coastguard Worker; OBJ:     ]
92*9880d681SAndroid Build Coastguard Worker; OBJ:     VarName: p
93*9880d681SAndroid Build Coastguard Worker; OBJ:   }
94*9880d681SAndroid Build Coastguard Worker; OBJ:   DefRangeRegister {
95*9880d681SAndroid Build Coastguard Worker; OBJ:     Register: 18
96*9880d681SAndroid Build Coastguard Worker; OBJ:     LocalVariableAddrRange {
97*9880d681SAndroid Build Coastguard Worker; OBJ:       OffsetStart: .text+0x0
98*9880d681SAndroid Build Coastguard Worker; OBJ:       ISectStart: 0x0
99*9880d681SAndroid Build Coastguard Worker; OBJ:       Range: 0x7
100*9880d681SAndroid Build Coastguard Worker; OBJ:     }
101*9880d681SAndroid Build Coastguard Worker; OBJ:   }
102*9880d681SAndroid Build Coastguard Worker; OBJ:   DefRangeRegister {
103*9880d681SAndroid Build Coastguard Worker; OBJ:     Register: 23
104*9880d681SAndroid Build Coastguard Worker; OBJ:     LocalVariableAddrRange {
105*9880d681SAndroid Build Coastguard Worker; OBJ:       OffsetStart: .text+0x7
106*9880d681SAndroid Build Coastguard Worker; OBJ:       ISectStart: 0x0
107*9880d681SAndroid Build Coastguard Worker; OBJ:       Range: 0x18
108*9880d681SAndroid Build Coastguard Worker; OBJ:     }
109*9880d681SAndroid Build Coastguard Worker; OBJ:   }
110*9880d681SAndroid Build Coastguard Worker; OBJ:   Local {
111*9880d681SAndroid Build Coastguard Worker; OBJ:     Type: int (0x74)
112*9880d681SAndroid Build Coastguard Worker; OBJ:     Flags [ (0x0)
113*9880d681SAndroid Build Coastguard Worker; OBJ:     ]
114*9880d681SAndroid Build Coastguard Worker; OBJ:     VarName: a
115*9880d681SAndroid Build Coastguard Worker; OBJ:   }
116*9880d681SAndroid Build Coastguard Worker; OBJ:   DefRangeRegister {
117*9880d681SAndroid Build Coastguard Worker; OBJ:     Register: 17
118*9880d681SAndroid Build Coastguard Worker; OBJ:     LocalVariableAddrRange {
119*9880d681SAndroid Build Coastguard Worker; OBJ:       OffsetStart: .text+0xC
120*9880d681SAndroid Build Coastguard Worker; OBJ:       ISectStart: 0x0
121*9880d681SAndroid Build Coastguard Worker; OBJ:       Range: 0x6
122*9880d681SAndroid Build Coastguard Worker; OBJ:     }
123*9880d681SAndroid Build Coastguard Worker; OBJ:   }
124*9880d681SAndroid Build Coastguard Worker; OBJ:   Local {
125*9880d681SAndroid Build Coastguard Worker; OBJ:     Type: int (0x74)
126*9880d681SAndroid Build Coastguard Worker; OBJ:     Flags [ (0x0)
127*9880d681SAndroid Build Coastguard Worker; OBJ:     ]
128*9880d681SAndroid Build Coastguard Worker; OBJ:     VarName: c
129*9880d681SAndroid Build Coastguard Worker; OBJ:   }
130*9880d681SAndroid Build Coastguard Worker; OBJ:   DefRangeRegister {
131*9880d681SAndroid Build Coastguard Worker; OBJ:     Register: 17
132*9880d681SAndroid Build Coastguard Worker; OBJ:     LocalVariableAddrRange {
133*9880d681SAndroid Build Coastguard Worker; OBJ:       OffsetStart: .text+0xC
134*9880d681SAndroid Build Coastguard Worker; OBJ:       ISectStart: 0x0
135*9880d681SAndroid Build Coastguard Worker; OBJ:       Range: 0x6
136*9880d681SAndroid Build Coastguard Worker; OBJ:     }
137*9880d681SAndroid Build Coastguard Worker; OBJ:   }
138*9880d681SAndroid Build Coastguard Worker; OBJ:   Local {
139*9880d681SAndroid Build Coastguard Worker; OBJ:     Type: int (0x74)
140*9880d681SAndroid Build Coastguard Worker; OBJ:     Flags [ (0x0)
141*9880d681SAndroid Build Coastguard Worker; OBJ:     ]
142*9880d681SAndroid Build Coastguard Worker; OBJ:     VarName: b
143*9880d681SAndroid Build Coastguard Worker; OBJ:   }
144*9880d681SAndroid Build Coastguard Worker; OBJ:   DefRangeRegister {
145*9880d681SAndroid Build Coastguard Worker; OBJ:     Register: 17
146*9880d681SAndroid Build Coastguard Worker; OBJ:     LocalVariableAddrRange {
147*9880d681SAndroid Build Coastguard Worker; OBJ:       OffsetStart: .text+0x12
148*9880d681SAndroid Build Coastguard Worker; OBJ:       ISectStart: 0x0
149*9880d681SAndroid Build Coastguard Worker; OBJ:       Range: 0x6
150*9880d681SAndroid Build Coastguard Worker; OBJ:     }
151*9880d681SAndroid Build Coastguard Worker; OBJ:   }
152*9880d681SAndroid Build Coastguard Worker; OBJ:   InlineSite {
153*9880d681SAndroid Build Coastguard Worker; OBJ:     PtrParent: 0x0
154*9880d681SAndroid Build Coastguard Worker; OBJ:     PtrEnd: 0x0
155*9880d681SAndroid Build Coastguard Worker; OBJ:     Inlinee: inlineinc (0x1002)
156*9880d681SAndroid Build Coastguard Worker; OBJ:   }
157*9880d681SAndroid Build Coastguard Worker; OBJ:   Local {
158*9880d681SAndroid Build Coastguard Worker; OBJ:     Type: int (0x74)
159*9880d681SAndroid Build Coastguard Worker; OBJ:     Flags [ (0x1)
160*9880d681SAndroid Build Coastguard Worker; OBJ:       IsParameter (0x1)
161*9880d681SAndroid Build Coastguard Worker; OBJ:     ]
162*9880d681SAndroid Build Coastguard Worker; OBJ:     VarName: a
163*9880d681SAndroid Build Coastguard Worker; OBJ:   }
164*9880d681SAndroid Build Coastguard Worker; OBJ:   DefRangeRegister {
165*9880d681SAndroid Build Coastguard Worker; OBJ:     Register: 17
166*9880d681SAndroid Build Coastguard Worker; OBJ:     LocalVariableAddrRange {
167*9880d681SAndroid Build Coastguard Worker; OBJ:       OffsetStart: .text+0xC
168*9880d681SAndroid Build Coastguard Worker; OBJ:       ISectStart: 0x0
169*9880d681SAndroid Build Coastguard Worker; OBJ:       Range: 0x6
170*9880d681SAndroid Build Coastguard Worker; OBJ:     }
171*9880d681SAndroid Build Coastguard Worker; OBJ:   }
172*9880d681SAndroid Build Coastguard Worker; OBJ:   Local {
173*9880d681SAndroid Build Coastguard Worker; OBJ:     Type: int (0x74)
174*9880d681SAndroid Build Coastguard Worker; OBJ:     Flags [ (0x0)
175*9880d681SAndroid Build Coastguard Worker; OBJ:     ]
176*9880d681SAndroid Build Coastguard Worker; OBJ:     VarName: b
177*9880d681SAndroid Build Coastguard Worker; OBJ:   }
178*9880d681SAndroid Build Coastguard Worker; OBJ:   DefRangeRegister {
179*9880d681SAndroid Build Coastguard Worker; OBJ:     Register: 17
180*9880d681SAndroid Build Coastguard Worker; OBJ:     LocalVariableAddrRange {
181*9880d681SAndroid Build Coastguard Worker; OBJ:       OffsetStart: .text+0x12
182*9880d681SAndroid Build Coastguard Worker; OBJ:       ISectStart: 0x0
183*9880d681SAndroid Build Coastguard Worker; OBJ:       Range: 0x6
184*9880d681SAndroid Build Coastguard Worker; OBJ:     }
185*9880d681SAndroid Build Coastguard Worker; OBJ:   }
186*9880d681SAndroid Build Coastguard Worker; OBJ:   InlineSiteEnd {
187*9880d681SAndroid Build Coastguard Worker; OBJ:   }
188*9880d681SAndroid Build Coastguard Worker; OBJ:   ProcEnd
189*9880d681SAndroid Build Coastguard Worker; OBJ: ]
190*9880d681SAndroid Build Coastguard Worker
191*9880d681SAndroid Build Coastguard Worker; ModuleID = 't.cpp'
192*9880d681SAndroid Build Coastguard Workertarget datalayout = "e-m:w-i64:64-f80:128-n8:16:32:64-S128"
193*9880d681SAndroid Build Coastguard Workertarget triple = "x86_64-pc-windows-msvc18.0.0"
194*9880d681SAndroid Build Coastguard Worker
195*9880d681SAndroid Build Coastguard Worker@x = internal global i32 0, align 4
196*9880d681SAndroid Build Coastguard Worker
197*9880d681SAndroid Build Coastguard Worker; Function Attrs: nounwind uwtable
198*9880d681SAndroid Build Coastguard Workerdefine void @f(i32 %p) #0 !dbg !4 {
199*9880d681SAndroid Build Coastguard Workerentry:
200*9880d681SAndroid Build Coastguard Worker  tail call void @llvm.dbg.value(metadata i32 %p, i64 0, metadata !9, metadata !29), !dbg !30
201*9880d681SAndroid Build Coastguard Worker  %tobool = icmp eq i32 %p, 0, !dbg !31
202*9880d681SAndroid Build Coastguard Worker  %call2 = tail call i32 @getint() #3, !dbg !32
203*9880d681SAndroid Build Coastguard Worker  br i1 %tobool, label %if.else, label %if.then, !dbg !33
204*9880d681SAndroid Build Coastguard Worker
205*9880d681SAndroid Build Coastguard Workerif.then:                                          ; preds = %entry
206*9880d681SAndroid Build Coastguard Worker  tail call void @llvm.dbg.value(metadata i32 %call2, i64 0, metadata !10, metadata !29), !dbg !34
207*9880d681SAndroid Build Coastguard Worker  tail call void @llvm.dbg.value(metadata i32 %call2, i64 0, metadata !20, metadata !29), !dbg !35
208*9880d681SAndroid Build Coastguard Worker  %add.i = add nsw i32 %call2, 1, !dbg !37
209*9880d681SAndroid Build Coastguard Worker  tail call void @llvm.dbg.value(metadata i32 %add.i, i64 0, metadata !21, metadata !29), !dbg !38
210*9880d681SAndroid Build Coastguard Worker  %0 = load volatile i32, i32* @x, align 4, !dbg !39, !tbaa !40
211*9880d681SAndroid Build Coastguard Worker  %inc.i = add nsw i32 %0, 1, !dbg !39
212*9880d681SAndroid Build Coastguard Worker  store volatile i32 %inc.i, i32* @x, align 4, !dbg !39, !tbaa !40
213*9880d681SAndroid Build Coastguard Worker  tail call void @llvm.dbg.value(metadata i32 %add.i, i64 0, metadata !13, metadata !29), !dbg !44
214*9880d681SAndroid Build Coastguard Worker  tail call void @putint(i32 %add.i) #3, !dbg !45
215*9880d681SAndroid Build Coastguard Worker  br label %if.end, !dbg !46
216*9880d681SAndroid Build Coastguard Worker
217*9880d681SAndroid Build Coastguard Workerif.else:                                          ; preds = %entry
218*9880d681SAndroid Build Coastguard Worker  tail call void @llvm.dbg.value(metadata i32 %call2, i64 0, metadata !14, metadata !29), !dbg !47
219*9880d681SAndroid Build Coastguard Worker  tail call void @putint(i32 %call2) #3, !dbg !48
220*9880d681SAndroid Build Coastguard Worker  br label %if.end
221*9880d681SAndroid Build Coastguard Worker
222*9880d681SAndroid Build Coastguard Workerif.end:                                           ; preds = %if.else, %if.then
223*9880d681SAndroid Build Coastguard Worker  ret void, !dbg !49
224*9880d681SAndroid Build Coastguard Worker}
225*9880d681SAndroid Build Coastguard Worker
226*9880d681SAndroid Build Coastguard Workerdeclare i32 @getint() #1
227*9880d681SAndroid Build Coastguard Worker
228*9880d681SAndroid Build Coastguard Workerdeclare void @putint(i32) #1
229*9880d681SAndroid Build Coastguard Worker
230*9880d681SAndroid Build Coastguard Worker; Function Attrs: nounwind readnone
231*9880d681SAndroid Build Coastguard Workerdeclare void @llvm.dbg.value(metadata, i64, metadata, metadata) #2
232*9880d681SAndroid Build Coastguard Worker
233*9880d681SAndroid Build Coastguard Workerattributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
234*9880d681SAndroid Build Coastguard Workerattributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
235*9880d681SAndroid Build Coastguard Workerattributes #2 = { nounwind readnone }
236*9880d681SAndroid Build Coastguard Workerattributes #3 = { nounwind }
237*9880d681SAndroid Build Coastguard Worker
238*9880d681SAndroid Build Coastguard Worker!llvm.dbg.cu = !{!0}
239*9880d681SAndroid Build Coastguard Worker!llvm.module.flags = !{!25, !26, !27}
240*9880d681SAndroid Build Coastguard Worker!llvm.ident = !{!28}
241*9880d681SAndroid Build Coastguard Worker
242*9880d681SAndroid Build Coastguard Worker!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 3.9.0 (trunk 260617) (llvm/trunk 260619)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, globals: !22)
243*9880d681SAndroid Build Coastguard Worker!1 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
244*9880d681SAndroid Build Coastguard Worker!2 = !{}
245*9880d681SAndroid Build Coastguard Worker!4 = distinct !DISubprogram(name: "f", scope: !1, file: !1, line: 9, type: !5, isLocal: false, isDefinition: true, scopeLine: 9, flags: DIFlagPrototyped, isOptimized: true, unit: !0, variables: !8)
246*9880d681SAndroid Build Coastguard Worker!5 = !DISubroutineType(types: !6)
247*9880d681SAndroid Build Coastguard Worker!6 = !{null, !7}
248*9880d681SAndroid Build Coastguard Worker!7 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
249*9880d681SAndroid Build Coastguard Worker!8 = !{!9, !10, !13, !14}
250*9880d681SAndroid Build Coastguard Worker!9 = !DILocalVariable(name: "p", arg: 1, scope: !4, file: !1, line: 9, type: !7)
251*9880d681SAndroid Build Coastguard Worker!10 = !DILocalVariable(name: "a", scope: !11, file: !1, line: 11, type: !7)
252*9880d681SAndroid Build Coastguard Worker!11 = distinct !DILexicalBlock(scope: !12, file: !1, line: 10, column: 10)
253*9880d681SAndroid Build Coastguard Worker!12 = distinct !DILexicalBlock(scope: !4, file: !1, line: 10, column: 7)
254*9880d681SAndroid Build Coastguard Worker!13 = !DILocalVariable(name: "b", scope: !11, file: !1, line: 12, type: !7)
255*9880d681SAndroid Build Coastguard Worker!14 = !DILocalVariable(name: "c", scope: !15, file: !1, line: 15, type: !7)
256*9880d681SAndroid Build Coastguard Worker!15 = distinct !DILexicalBlock(scope: !12, file: !1, line: 14, column: 10)
257*9880d681SAndroid Build Coastguard Worker!16 = distinct !DISubprogram(name: "inlineinc", scope: !1, file: !1, line: 4, type: !17, isLocal: true, isDefinition: true, scopeLine: 4, flags: DIFlagPrototyped, isOptimized: true, unit: !0, variables: !19)
258*9880d681SAndroid Build Coastguard Worker!17 = !DISubroutineType(types: !18)
259*9880d681SAndroid Build Coastguard Worker!18 = !{!7, !7}
260*9880d681SAndroid Build Coastguard Worker!19 = !{!20, !21}
261*9880d681SAndroid Build Coastguard Worker!20 = !DILocalVariable(name: "a", arg: 1, scope: !16, file: !1, line: 4, type: !7)
262*9880d681SAndroid Build Coastguard Worker!21 = !DILocalVariable(name: "b", scope: !16, file: !1, line: 5, type: !7)
263*9880d681SAndroid Build Coastguard Worker!22 = !{!23}
264*9880d681SAndroid Build Coastguard Worker!23 = !DIGlobalVariable(name: "x", scope: !0, file: !1, line: 1, type: !24, isLocal: false, isDefinition: true, variable: i32* @x)
265*9880d681SAndroid Build Coastguard Worker!24 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !7)
266*9880d681SAndroid Build Coastguard Worker!25 = !{i32 2, !"CodeView", i32 1}
267*9880d681SAndroid Build Coastguard Worker!26 = !{i32 2, !"Debug Info Version", i32 3}
268*9880d681SAndroid Build Coastguard Worker!27 = !{i32 1, !"PIC Level", i32 2}
269*9880d681SAndroid Build Coastguard Worker!28 = !{!"clang version 3.9.0 (trunk 260617) (llvm/trunk 260619)"}
270*9880d681SAndroid Build Coastguard Worker!29 = !DIExpression()
271*9880d681SAndroid Build Coastguard Worker!30 = !DILocation(line: 9, column: 12, scope: !4)
272*9880d681SAndroid Build Coastguard Worker!31 = !DILocation(line: 10, column: 7, scope: !12)
273*9880d681SAndroid Build Coastguard Worker!32 = !DILocation(line: 15, column: 13, scope: !15)
274*9880d681SAndroid Build Coastguard Worker!33 = !DILocation(line: 10, column: 7, scope: !4)
275*9880d681SAndroid Build Coastguard Worker!34 = !DILocation(line: 11, column: 9, scope: !11)
276*9880d681SAndroid Build Coastguard Worker!35 = !DILocation(line: 4, column: 33, scope: !16, inlinedAt: !36)
277*9880d681SAndroid Build Coastguard Worker!36 = distinct !DILocation(line: 12, column: 13, scope: !11)
278*9880d681SAndroid Build Coastguard Worker!37 = !DILocation(line: 5, column: 13, scope: !16, inlinedAt: !36)
279*9880d681SAndroid Build Coastguard Worker!38 = !DILocation(line: 5, column: 7, scope: !16, inlinedAt: !36)
280*9880d681SAndroid Build Coastguard Worker!39 = !DILocation(line: 6, column: 3, scope: !16, inlinedAt: !36)
281*9880d681SAndroid Build Coastguard Worker!40 = !{!41, !41, i64 0}
282*9880d681SAndroid Build Coastguard Worker!41 = !{!"int", !42, i64 0}
283*9880d681SAndroid Build Coastguard Worker!42 = !{!"omnipotent char", !43, i64 0}
284*9880d681SAndroid Build Coastguard Worker!43 = !{!"Simple C/C++ TBAA"}
285*9880d681SAndroid Build Coastguard Worker!44 = !DILocation(line: 12, column: 9, scope: !11)
286*9880d681SAndroid Build Coastguard Worker!45 = !DILocation(line: 13, column: 5, scope: !11)
287*9880d681SAndroid Build Coastguard Worker!46 = !DILocation(line: 14, column: 3, scope: !11)
288*9880d681SAndroid Build Coastguard Worker!47 = !DILocation(line: 15, column: 9, scope: !15)
289*9880d681SAndroid Build Coastguard Worker!48 = !DILocation(line: 16, column: 5, scope: !15)
290*9880d681SAndroid Build Coastguard Worker!49 = !DILocation(line: 18, column: 1, scope: !4)
291