llvm.org GIT mirror llvm / 019314c
restore comments to this file git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10704 91177308-0d34-0410-b5e6-96231b3b80d8 Chris Lattner 16 years ago
1 changed file(s) with 106 addition(s) and 52 deletion(s). Raw diff Collapse all Expand all
None %lldb.compile_unit = type { uint, ushort, ushort, sbyte*, sbyte*, sbyte*, { }* }
1 %lldb.global = type { uint, %lldb.compile_unit*, sbyte*, { }*, sbyte*, bool }
2 %lldb.local = type { %lldb.global*, sbyte*, sbyte* }
3 %llvm.dbg.translation_units = linkonce global { } { } ; <{ }*> [#uses=1]
4 %llvm.dbg.globals = linkonce global { } { } ; <{ }*> [#uses=1]
5 %.str_1 = internal constant [11 x sbyte] c"funccall.c\00" ; <[11 x sbyte]*> [#uses=1]
6 %.str_2 = internal constant [12 x sbyte] c"/home/sabre\00" ; <[12 x sbyte]*> [#uses=1]
7 %.str_3 = internal constant [14 x sbyte] c"llvmgcc 3.4.x\00" ; <[14 x sbyte]*> [#uses=1]
8 %d.compile_unit = internal constant %lldb.compile_unit { uint 17, ushort 0, ushort 1, sbyte* getelementptr ([11 x sbyte]* %.str_1, long 0, long 0), sbyte* getelementptr ([12 x sbyte]* %.str_2, long 0, long 0), sbyte* getelementptr ([14 x sbyte]* %.str_3, long 0, long 0), { }* %llvm.dbg.translation_units } ; <%lldb.compile_unit*> [#uses=9]
9 %.str_5 = internal global [5 x sbyte] c"main\00" ; <[5 x sbyte]*> [#uses=1]
10 %.str_6 = internal global [4 x sbyte] c"foo\00" ; <[4 x sbyte]*> [#uses=1]
11 %.str_7 = internal global [2 x sbyte] c"q\00" ; <[2 x sbyte]*> [#uses=1]
12 %d.main = global %lldb.global { uint 46, %lldb.compile_unit* %d.compile_unit, sbyte* getelementptr ([5 x sbyte]* %.str_5, long 0, long 0), { }* %llvm.dbg.globals, sbyte* null, bool true } ; <%lldb.global*> [#uses=1]
13 %d.foo = global %lldb.global { uint 46, %lldb.compile_unit* %d.compile_unit, sbyte* getelementptr ([4 x sbyte]* %.str_6, long 0, long 0), { }* %llvm.dbg.globals, sbyte* null, bool true } ; <%lldb.global*> [#uses=1]
14 %q = internal global int 0 ; [#uses=7]
15 %d.q = internal global { %lldb.global, int* } { %lldb.global { uint 52, %lldb.compile_unit* %d.compile_unit, sbyte* getelementptr ([2 x sbyte]* %.str_7, long 0, long 0), { }* %llvm.dbg.globals, sbyte* null, bool false }, int* %q } ; <{ %lldb.global, int* }*> [#uses=0]
0 ;; Debugger type declarations
1 %lldb.compile_unit = type { uint, ushort, ushort, sbyte*, sbyte*, sbyte*, {}* }
2 %lldb.global = type { uint, %lldb.compile_unit*, sbyte*, {}*, sbyte*, bool, bool }
3 %lldb.local = type { uint, %lldb.global*, sbyte*, sbyte*, bool, bool }
4
5
6 ;; Debugger intrinsic declarations...
7 declare {}* %llvm.dbg.stoppoint({}*, uint, uint, %lldb.compile_unit*)
8 declare {}* %llvm.dbg.func.start(%lldb.global*)
9 declare {}* %llvm.dbg.region.start({}*)
10 declare {}* %llvm.dbg.region.end({}*)
11 declare {}* %llvm.dbg.declare({}*, ...)
12
13 ;; Global object anchors
14 %llvm.dbg.translation_units = linkonce global {} {}
15 %llvm.dbg.globals = linkonce global {} {}
16
17
18 %.str_1 = internal constant [11 x sbyte] c"funccall.c\00"
19 %.str_2 = internal constant [12 x sbyte] c"/home/sabre\00"
20 %.str_3 = internal constant [14 x sbyte] c"llvmgcc 3.4.x\00"
21
22 %d.compile_unit = internal constant %lldb.compile_unit {
23 uint 17, ;; DW_TAG_compile_unit
24 ushort 0, ;; LLVM Debug version #
25 ushort 1, ;; Language: DW_LANG_C89
26 sbyte* getelementptr ([11 x sbyte]* %.str_1, long 0, long 0), ;; Source filename
27 sbyte* getelementptr ([12 x sbyte]* %.str_2, long 0, long 0), ;; Working directory
28 sbyte* getelementptr ([14 x sbyte]* %.str_3, long 0, long 0), ;; producer
29 {}* %llvm.dbg.translation_units ;; Anchor
30 }
31
32
33 %.str_5 = internal global [5 x sbyte] c"main\00"
34 %.str_6 = internal global [4 x sbyte] c"foo\00"
35 %.str_7 = internal global [2 x sbyte] c"q\00"
36 %.str_8 = internal global [2 x sbyte] c"t\00"
37
38 %d.main = global %lldb.global {
39 uint 46, ;; DW_TAG_subprogram
40 %lldb.compile_unit* %d.compile_unit, ;; context pointer
41 sbyte* getelementptr ([5 x sbyte]* %.str_5, long 0, long 0), ;; name
42 {}* %llvm.dbg.globals, ;; anchor
43 sbyte* null, ;; EVENTUALLY the type
44 bool true, ;; non-static linkage?
45 bool false ;; definition, not declaration
46 }
47
48 %d.foo = global %lldb.global {
49 uint 46, ;; DW_TAG_subprogram
50 %lldb.compile_unit* %d.compile_unit, ;; context pointer
51 sbyte* getelementptr ([4 x sbyte]* %.str_6, long 0, long 0), ;; name
52 {}* %llvm.dbg.globals, ;; anchor
53 sbyte* null, ;; EVENTUALLY the type
54 bool true, ;; non-static linkage
55 bool false ;; definition, not declaration
56 }
57
58 %d.q = internal global %lldb.global {
59 uint 52, ;; DW_TAG_variable
60 %lldb.compile_unit* %d.compile_unit, ;; context pointer
61 sbyte* getelementptr ([2 x sbyte]* %.str_7, long 0, long 0), ;; name
62 {}* %llvm.dbg.globals, ;; anchor
63 sbyte* null, ;; EVENTUALLY the type
64 bool false, ;; static linkage
65 bool false ;; definition, not declaration
66 }
67
68
69 %d.t = internal global %lldb.local {
70 uint 52, ;; DW_TAG_variable
71 %lldb.global* %d.foo, ;; context pointer
72 sbyte* getelementptr ([2 x sbyte]* %.str_8, long 0, long 0), ;; name
73 sbyte* null, ;; EVENTUALLY the type
74 bool false, ;; local variable
75 bool false ;; definition, not declaratation
76 }
77
78
79
80 %q = internal global int 0
1681
1782 implementation ; Functions:
1883
19 declare { }* %llvm.dbg.stoppoint({ }*, uint, uint, %lldb.compile_unit*)
84 void %foo() {
85 entry:
86 %t = alloca int
87 %.1 = call {}* %llvm.dbg.func.start(%lldb.global* %d.foo)
88 %.2 = call {}* %llvm.dbg.stoppoint({}* %.1, uint 5, uint 2, %lldb.compile_unit* %d.compile_unit)
2089
21 declare { }* %llvm.dbg.func.start(%lldb.global*)
22
23 declare { }* %llvm.dbg.region.start({ }*)
24
25 declare { }* %llvm.dbg.region.end({ }*)
26
27 void %foo() {
28 %t = alloca int ; [#uses=2]
29 %.1 = call { }* %llvm.dbg.func.start( %lldb.global* %d.foo ) ; <{ }*> [#uses=1]
30 %.2 = call { }* %llvm.dbg.stoppoint( { }* %.1, uint 5, uint 2, %lldb.compile_unit* %d.compile_unit ) ; <{ }*> [#uses=1]
31 %tmp.0 = load int* %q ; [#uses=1]
90 %.3 = call {}*({}*, ...)* %llvm.dbg.declare({}* %.2, %lldb.local* %d.t, int* %t)
91 %tmp.0 = load int* %q
3292 store int %tmp.0, int* %t
33 %.3 = call { }* %llvm.dbg.stoppoint( { }* %.2, uint 6, uint 2, %lldb.compile_unit* %d.compile_unit ) ; <{ }*> [#uses=1]
34 %tmp.01 = load int* %t ; [#uses=1]
35 %tmp.1 = add int %tmp.01, 1 ; [#uses=1]
93 %.4 = call {}* %llvm.dbg.stoppoint({}* %.3, uint 6, uint 2, %lldb.compile_unit* %d.compile_unit)
94 %tmp.01 = load int* %t
95 %tmp.1 = add int %tmp.01, 1
3696 store int %tmp.1, int* %q
37 %.4 = call { }* %llvm.dbg.stoppoint( { }* %.3, uint 7, uint 1, %lldb.compile_unit* %d.compile_unit ) ; <{ }*> [#uses=1]
38 call { }* %llvm.dbg.region.end( { }* %.4 ) ; <{ }*>:0 [#uses=0]
97 %.5 = call {}* %llvm.dbg.stoppoint({}* %.4, uint 7, uint 1, %lldb.compile_unit* %d.compile_unit)
98 call {}* %llvm.dbg.region.end({}* %.5)
3999 ret void
40100 }
41101
42102 int %main() {
43103 entry:
44 %.1 = call { }* %llvm.dbg.func.start( %lldb.global* %d.main ) ; <{ }*> [#uses=1]
45 %result = alloca int ; [#uses=2]
46 %.2 = call { }* %llvm.dbg.stoppoint( { }* %.1, uint 9, uint 2, %lldb.compile_unit* %d.compile_unit ) ; <{ }*> [#uses=1]
104 %.1 = call {}* %llvm.dbg.func.start(%lldb.global* %d.main)
105 %result = alloca int
106 %.2 = call {}* %llvm.dbg.stoppoint({}* %.1, uint 9, uint 2, %lldb.compile_unit* %d.compile_unit)
47107 store int 0, int* %q
48 %.3 = call { }* %llvm.dbg.stoppoint( { }* %.2, uint 10, uint 2, %lldb.compile_unit* %d.compile_unit ) ; <{ }*> [#uses=1]
49 call void %foo( )
50 %.4 = call { }* %llvm.dbg.stoppoint( { }* %.3, uint 11, uint 2, %lldb.compile_unit* %d.compile_unit ) ; <{ }*> [#uses=1]
51 %tmp.2 = load int* %q ; [#uses=1]
52 %tmp.3 = sub int %tmp.2, 1 ; [#uses=1]
108 %.3 = call {}* %llvm.dbg.stoppoint({}* %.2, uint 10, uint 2, %lldb.compile_unit* %d.compile_unit)
109 call void %foo()
110 %.4 = call {}* %llvm.dbg.stoppoint({}* %.3, uint 11, uint 2, %lldb.compile_unit* %d.compile_unit)
111 %tmp.2 = load int* %q
112 %tmp.3 = sub int %tmp.2, 1
53113 store int %tmp.3, int* %q
54 %.5 = call { }* %llvm.dbg.stoppoint( { }* %.4, uint 13, uint 2, %lldb.compile_unit* %d.compile_unit ) ; <{ }*> [#uses=1]
55 %tmp.4 = load int* %q ; [#uses=1]
114 %.5 = call {}* %llvm.dbg.stoppoint({}* %.4, uint 13, uint 2, %lldb.compile_unit* %d.compile_unit)
115 %tmp.4 = load int* %q
56116 store int %tmp.4, int* %result
57 br label %return
58
59 after_ret: ; No predecessors!
60 br label %return
61
62 return: ; preds = %entry, %after_ret
63 %tmp.5 = load int* %result ; [#uses=1]
64 %.6 = call { }* %llvm.dbg.stoppoint( { }* %.5, uint 14, uint 1, %lldb.compile_unit* %d.compile_unit ) ; <{ }*> [#uses=1]
65 call { }* %llvm.dbg.region.end( { }* %.6 ) ; <{ }*>:0 [#uses=0]
117 %tmp.5 = load int* %result
118 %.6 = call {}* %llvm.dbg.stoppoint({}* %.5, uint 14, uint 1, %lldb.compile_unit* %d.compile_unit)
119 call {}* %llvm.dbg.region.end({}* %.6)
66120 ret int %tmp.5
67121 }