77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 ; RUN: llc -mcpu=core2 -mtriple=i686-pc-win32 -O0 < %s | FileCheck --check-prefix=X86 %s
|
95
|
2 ; RUN: llc -mcpu=core2 -mtriple=i686-pc-win32 -o - -O0 < %s | llvm-mc -triple=i686-pc-win32 -filetype=obj | llvm-readobj -s -sr -codeview -section-symbols | FileCheck --check-prefix=OBJ32 %s
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 ; RUN: llc -mcpu=core2 -mtriple=x86_64-pc-win32 -O0 < %s | FileCheck --check-prefix=X64 %s
|
95
|
4 ; RUN: llc -mcpu=core2 -mtriple=x86_64-pc-win32 -o - -O0 < %s | llvm-mc -triple=x86_64-pc-win32 -filetype=obj | llvm-readobj -s -sr -codeview -section-symbols | FileCheck --check-prefix=OBJ64 %s
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 ; This LL file was generated by running clang on the following code:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 ; D:\input.c:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 ; 1 void g(void);
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 ; 2
|
83
|
10 ; 3 void f(void) {
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
11 ; 4 #line 1 "one.c"
|
83
|
12 ; 5 g();
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
13 ; 6 #line 2 "two.c"
|
83
|
14 ; 7 g();
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 ; 8 #line 7 "one.c"
|
83
|
16 ; 9 g();
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
17 ; 10 }
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
18
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
19 ; X86-LABEL: _f:
|
83
|
20 ; X86: # BB
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
21 ; X86-NEXT: [[CALL_LINE_1:.*]]:{{$}}
|
83
|
22 ; X86: calll _g
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
23 ; X86-NEXT: [[CALL_LINE_2:.*]]:{{$}}
|
83
|
24 ; X86: calll _g
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
25 ; X86-NEXT: [[CALL_LINE_3:.*]]:{{$}}
|
83
|
26 ; X86: calll _g
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
27 ; X86-NEXT: [[RETURN_STMT:.*]]:
|
83
|
28 ; X86: ret
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
29 ; X86-NEXT: [[END_OF_F:.*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
30 ;
|
83
|
31 ; X86-LABEL: .section .debug$S,"dr"
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
32 ; X86-NEXT: .long 4
|
83
|
33 ; Symbol subsection
|
|
34 ; X86-NEXT: .long 241
|
|
35 ; X86-NEXT: .long [[F1_END:.*]]-[[F1_START:.*]]
|
|
36 ; X86-NEXT: [[F1_START]]:
|
|
37 ; X86-NEXT: .short [[PROC_SEGMENT_END:.*]]-[[PROC_SEGMENT_START:.*]]
|
|
38 ; X86-NEXT: [[PROC_SEGMENT_START]]:
|
|
39 ; X86-NEXT: .short 4423
|
|
40 ; X86-NEXT: .zero 12
|
|
41 ; X86-NEXT: .long [[END_OF_F]]-_f
|
|
42 ; X86-NEXT: .zero 12
|
|
43 ; X86-NEXT: .secrel32 _f
|
|
44 ; X86-NEXT: .secidx _f
|
|
45 ; X86-NEXT: .byte 0
|
|
46 ; X86-NEXT: .byte 102
|
|
47 ; X86-NEXT: .byte 0
|
|
48 ; X86-NEXT: [[PROC_SEGMENT_END]]:
|
|
49 ; X86-NEXT: .short 2
|
|
50 ; X86-NEXT: .short 4431
|
|
51 ; X86-NEXT: [[F1_END]]:
|
|
52 ; Padding
|
|
53 ; X86-NEXT: .zero 3
|
|
54 ; Line table
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
55 ; X86-NEXT: .long 242
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
56 ; X86-NEXT: .long [[F2_END:.*]]-[[F2_START:.*]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
57 ; X86-NEXT: [[F2_START]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
58 ; X86-NEXT: .secrel32 _f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
59 ; X86-NEXT: .secidx _f
|
95
|
60 ; X86-NEXT: .short 1
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
61 ; X86-NEXT: .long [[END_OF_F]]-_f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
62 ; Segment for file 'D:\\one.c' begins
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
63 ; X86-NEXT: [[FILE_SEGMENT_START:[^:]*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
64 ; X86-NEXT: .long 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
65 ; X86-NEXT: .long 1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
66 ; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
67 ; X86-NEXT: .long [[CALL_LINE_1]]-_f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
68 ; X86-NEXT: .long 1
|
95
|
69 ; X86-NEXT: .short 0
|
|
70 ; X86-NEXT: .short 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
71 ; X86-NEXT: [[FILE_SEGMENT_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
72 ; Segment for file 'D:\\two.c' begins
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
73 ; X86-NEXT: [[FILE_SEGMENT_START:[^:]*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
74 ; X86-NEXT: .long 8
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
75 ; X86-NEXT: .long 1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
76 ; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
77 ; X86-NEXT: .long [[CALL_LINE_2]]-_f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
78 ; X86-NEXT: .long 2
|
95
|
79 ; X86-NEXT: .short 0
|
|
80 ; X86-NEXT: .short 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
81 ; X86-NEXT: [[FILE_SEGMENT_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
82 ; A new segment for file 'D:\\one.c' begins
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
83 ; X86-NEXT: [[FILE_SEGMENT_START:[^:]*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
84 ; X86-NEXT: .long 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
85 ; X86-NEXT: .long 2
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
86 ; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
87 ; X86-NEXT: .long [[CALL_LINE_3]]-_f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
88 ; X86-NEXT: .long 7
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
89 ; X86-NEXT: .long [[RETURN_STMT]]-_f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
90 ; X86-NEXT: .long 8
|
95
|
91 ; X86-NEXT: .short 0
|
|
92 ; X86-NEXT: .short 0
|
|
93 ; X86-NEXT: .short 0
|
|
94 ; X86-NEXT: .short 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
95 ; X86-NEXT: [[FILE_SEGMENT_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
96 ; X86-NEXT: [[F2_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
97 ; File index to string table offset subsection
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
98 ; X86-NEXT: .long 244
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
99 ; X86-NEXT: .long 16
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
100 ; X86-NEXT: .long 1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
101 ; X86-NEXT: .long 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
102 ; X86-NEXT: .long 10
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
103 ; X86-NEXT: .long 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
104 ; String table
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
105 ; X86-NEXT: .long 243
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
106 ; X86-NEXT: .long 19
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
107 ; X86-NEXT: .byte 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
108 ; X86-NEXT: .ascii "D:\\one.c"
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
109 ; X86-NEXT: .byte 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
110 ; X86-NEXT: .ascii "D:\\two.c"
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
111 ; X86-NEXT: .byte 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
112 ; X86-NEXT: .zero 1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
113
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
114 ; OBJ32: Section {
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
115 ; OBJ32: Name: .debug$S (2E 64 65 62 75 67 24 53)
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
116 ; OBJ32: Characteristics [ (0x42100040)
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
117 ; OBJ32: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
118 ; OBJ32: Relocations [
|
83
|
119 ; OBJ32-NEXT: 0x2C IMAGE_REL_I386_SECREL _f
|
|
120 ; OBJ32-NEXT: 0x30 IMAGE_REL_I386_SECTION _f
|
|
121 ; OBJ32-NEXT: 0x44 IMAGE_REL_I386_SECREL _f
|
|
122 ; OBJ32-NEXT: 0x48 IMAGE_REL_I386_SECTION _f
|
|
123 ; OBJ32-NEXT: ]
|
|
124 ; OBJ32: Subsection [
|
|
125 ; OBJ32-NEXT: Type: 0xF1
|
|
126 ; OBJ32-NOT: ]
|
|
127 ; OBJ32: ProcStart {
|
|
128 ; OBJ32-NEXT: DisplayName: f
|
|
129 ; OBJ32-NEXT: Section: _f
|
|
130 ; OBJ32-NEXT: CodeSize: 0x10
|
|
131 ; OBJ32-NEXT: }
|
|
132 ; OBJ32-NEXT: ProcEnd
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
133 ; OBJ32-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
134 ; OBJ32: FunctionLineTable [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
135 ; OBJ32-NEXT: Name: _f
|
95
|
136 ; OBJ32-NEXT: Flags: 0x1
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
137 ; OBJ32-NEXT: CodeSize: 0x10
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
138 ; OBJ32-NEXT: FilenameSegment [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
139 ; OBJ32-NEXT: Filename: D:\one.c
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
140 ; OBJ32-NEXT: +0x0: 1
|
95
|
141 ; OBJ32-NEXT: ColStart: 0
|
|
142 ; OBJ32-NEXT: ColEnd: 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
143 ; OBJ32-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
144 ; OBJ32-NEXT: FilenameSegment [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
145 ; OBJ32-NEXT: Filename: D:\two.c
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
146 ; OBJ32-NEXT: +0x5: 2
|
95
|
147 ; OBJ32-NEXT: ColStart: 0
|
|
148 ; OBJ32-NEXT: ColEnd: 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
149 ; OBJ32-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
150 ; OBJ32-NEXT: FilenameSegment [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
151 ; OBJ32-NEXT: Filename: D:\one.c
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
152 ; OBJ32-NEXT: +0xA: 7
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
153 ; OBJ32-NEXT: +0xF: 8
|
95
|
154 ; OBJ32-NEXT: ColStart: 0
|
|
155 ; OBJ32-NEXT: ColEnd: 0
|
|
156 ; OBJ32-NEXT: ColStart: 0
|
|
157 ; OBJ32-NEXT: ColEnd: 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
158 ; OBJ32-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
159 ; OBJ32-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
160 ; OBJ32: }
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
161
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
162 ; X64-LABEL: f:
|
95
|
163 ; X64-NEXT: .L{{.*}}:{{$}}
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
164 ; X64-NEXT: [[START:.*]]:{{$}}
|
83
|
165 ; X64: # BB
|
|
166 ; X64: subq $40, %rsp
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
167 ; X64-NEXT: [[CALL_LINE_1:.*]]:{{$}}
|
83
|
168 ; X64: callq g
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
169 ; X64-NEXT: [[CALL_LINE_2:.*]]:{{$}}
|
83
|
170 ; X64: callq g
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
171 ; X64-NEXT: [[CALL_LINE_3:.*]]:{{$}}
|
83
|
172 ; X64: callq g
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
173 ; X64-NEXT: [[EPILOG_AND_RET:.*]]:
|
83
|
174 ; X64: addq $40, %rsp
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
175 ; X64-NEXT: ret
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
176 ; X64-NEXT: [[END_OF_F:.*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
177 ;
|
83
|
178 ; X64-LABEL: .section .debug$S,"dr"
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
179 ; X64-NEXT: .long 4
|
83
|
180 ; Symbol subsection
|
|
181 ; X64-NEXT: .long 241
|
|
182 ; X64-NEXT: .long [[F1_END:.*]]-[[F1_START:.*]]
|
|
183 ; X64-NEXT: [[F1_START]]:
|
|
184 ; X64-NEXT: .short [[PROC_SEGMENT_END:.*]]-[[PROC_SEGMENT_START:.*]]
|
|
185 ; X64-NEXT: [[PROC_SEGMENT_START]]:
|
|
186 ; X64-NEXT: .short 4423
|
|
187 ; X64-NEXT: .zero 12
|
|
188 ; X64-NEXT: .long [[END_OF_F]]-f
|
|
189 ; X64-NEXT: .zero 12
|
|
190 ; X64-NEXT: .secrel32 f
|
|
191 ; X64-NEXT: .secidx f
|
|
192 ; X64-NEXT: .byte 0
|
|
193 ; X64-NEXT: .byte 102
|
|
194 ; X64-NEXT: .byte 0
|
|
195 ; X64-NEXT: [[PROC_SEGMENT_END]]:
|
|
196 ; X64-NEXT: .short 2
|
|
197 ; X64-NEXT: .short 4431
|
|
198 ; X64-NEXT: [[F1_END]]:
|
|
199 ; Padding
|
|
200 ; X64-NEXT: .zero 3
|
|
201 ; Line table
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
202 ; X64-NEXT: .long 242
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
203 ; X64-NEXT: .long [[F2_END:.*]]-[[F2_START:.*]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
204 ; X64-NEXT: [[F2_START]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
205 ; X64-NEXT: .secrel32 f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
206 ; X64-NEXT: .secidx f
|
95
|
207 ; X64-NEXT: .short 1
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
208 ; X64-NEXT: .long [[END_OF_F]]-f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
209 ; Segment for file 'D:\\input.c' begins
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
210 ; X64-NEXT: [[FILE_SEGMENT_START:[^:]*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
211 ; X64-NEXT: .long 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
212 ; X64-NEXT: .long 1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
213 ; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
214 ; X64-NEXT: .long [[START]]-f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
215 ; X64-NEXT: .long 3
|
95
|
216 ; X64-NEXT: .short 0
|
|
217 ; X64-NEXT: .short 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
218 ; X64-NEXT: [[FILE_SEGMENT_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
219 ; Segment for file 'D:\\one.c' begins
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
220 ; X64-NEXT: [[FILE_SEGMENT_START:[^:]*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
221 ; X64-NEXT: .long 8
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
222 ; X64-NEXT: .long 1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
223 ; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
224 ; X64-NEXT: .long [[CALL_LINE_1]]-f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
225 ; X64-NEXT: .long 1
|
95
|
226 ; X64-NEXT: .short 0
|
|
227 ; X64-NEXT: .short 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
228 ; X64-NEXT: [[FILE_SEGMENT_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
229 ; Segment for file 'D:\\two.c' begins
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
230 ; X64-NEXT: [[FILE_SEGMENT_START:[^:]*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
231 ; X64-NEXT: .long 16
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
232 ; X64-NEXT: .long 1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
233 ; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
234 ; X64-NEXT: .long [[CALL_LINE_2]]-f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
235 ; X64-NEXT: .long 2
|
95
|
236 ; X64-NEXT: .short 0
|
|
237 ; X64-NEXT: .short 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
238 ; X64-NEXT: [[FILE_SEGMENT_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
239 ; A new segment for file 'D:\\one.c' begins
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
240 ; X64-NEXT: [[FILE_SEGMENT_START:[^:]*]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
241 ; X64-NEXT: .long 8
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
242 ; X64-NEXT: .long 2
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
243 ; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
244 ; X64-NEXT: .long [[CALL_LINE_3]]-f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
245 ; X64-NEXT: .long 7
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
246 ; X64-NEXT: .long [[EPILOG_AND_RET]]-f
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
247 ; X64-NEXT: .long 8
|
95
|
248 ; X64-NEXT: .short 0
|
|
249 ; X64-NEXT: .short 0
|
|
250 ; X64-NEXT: .short 0
|
|
251 ; X64-NEXT: .short 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
252 ; X64-NEXT: [[FILE_SEGMENT_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
253 ; X64-NEXT: [[F2_END]]:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
254 ; File index to string table offset subsection
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
255 ; X64-NEXT: .long 244
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
256 ; X64-NEXT: .long 24
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
257 ; X64-NEXT: .long 1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
258 ; X64-NEXT: .long 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
259 ; X64-NEXT: .long 12
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
260 ; X64-NEXT: .long 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
261 ; X64-NEXT: .long 21
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
262 ; X64-NEXT: .long 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
263 ; String table
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
264 ; X64-NEXT: .long 243
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
265 ; X64-NEXT: .long 30
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
266 ; X64-NEXT: .byte 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
267 ; X64-NEXT: .ascii "D:\\input.c"
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
268 ; X64-NEXT: .byte 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
269 ; X64-NEXT: .ascii "D:\\one.c"
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
270 ; X64-NEXT: .byte 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
271 ; X64-NEXT: .ascii "D:\\two.c"
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
272 ; X64-NEXT: .byte 0
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
273 ; X64-NEXT: .zero 2
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
274
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
275 ; OBJ64: Section {
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
276 ; OBJ64: Name: .debug$S (2E 64 65 62 75 67 24 53)
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
277 ; OBJ64: Characteristics [ (0x42100040)
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
278 ; OBJ64: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
279 ; OBJ64: Relocations [
|
83
|
280 ; OBJ64-NEXT: 0x2C IMAGE_REL_AMD64_SECREL f
|
|
281 ; OBJ64-NEXT: 0x30 IMAGE_REL_AMD64_SECTION f
|
|
282 ; OBJ64-NEXT: 0x44 IMAGE_REL_AMD64_SECREL f
|
|
283 ; OBJ64-NEXT: 0x48 IMAGE_REL_AMD64_SECTION f
|
|
284 ; OBJ64-NEXT: ]
|
|
285 ; OBJ64: Subsection [
|
|
286 ; OBJ64-NEXT: Type: 0xF1
|
|
287 ; OBJ64-NOT: ]
|
|
288 ; OBJ64: ProcStart {
|
|
289 ; OBJ64-NEXT: DisplayName: f
|
|
290 ; OBJ64-NEXT: Section: f
|
|
291 ; OBJ64-NEXT: CodeSize: 0x18
|
|
292 ; OBJ64-NEXT: }
|
|
293 ; OBJ64-NEXT: ProcEnd
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
294 ; OBJ64-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
295 ; OBJ64: FunctionLineTable [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
296 ; OBJ64-NEXT: Name: f
|
95
|
297 ; OBJ64-NEXT: Flags: 0x1
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
298 ; OBJ64-NEXT: CodeSize: 0x18
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
299 ; OBJ64-NEXT: FilenameSegment [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
300 ; OBJ64-NEXT: Filename: D:\input.c
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
301 ; OBJ64-NEXT: +0x0: 3
|
95
|
302 ; OBJ64-NEXT: ColStart: 0
|
|
303 ; OBJ64-NEXT: ColEnd: 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
304 ; OBJ64-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
305 ; OBJ64-NEXT: FilenameSegment [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
306 ; OBJ64-NEXT: Filename: D:\one.c
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
307 ; OBJ64-NEXT: +0x4: 1
|
95
|
308 ; OBJ64-NEXT: ColStart: 0
|
|
309 ; OBJ64-NEXT: ColEnd: 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
310 ; OBJ64-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
311 ; OBJ64-NEXT: FilenameSegment [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
312 ; OBJ64-NEXT: Filename: D:\two.c
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
313 ; OBJ64-NEXT: +0x9: 2
|
95
|
314 ; OBJ64-NEXT: ColStart: 0
|
|
315 ; OBJ64-NEXT: ColEnd: 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
316 ; OBJ64-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
317 ; OBJ64-NEXT: FilenameSegment [
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
318 ; OBJ64-NEXT: Filename: D:\one.c
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
319 ; OBJ64-NEXT: +0xE: 7
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
320 ; OBJ64-NEXT: +0x13: 8
|
95
|
321 ; OBJ64-NEXT: ColStart: 0
|
|
322 ; OBJ64-NEXT: ColEnd: 0
|
|
323 ; OBJ64-NEXT: ColStart: 0
|
|
324 ; OBJ64-NEXT: ColEnd: 0
|
77
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
325 ; OBJ64-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
326 ; OBJ64-NEXT: ]
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
327 ; OBJ64: }
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
328
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
329 ; Function Attrs: nounwind
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
330 define void @f() #0 {
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
331 entry:
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
332 call void @g(), !dbg !12
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
333 call void @g(), !dbg !15
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
334 call void @g(), !dbg !18
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
335 ret void, !dbg !19
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
336 }
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
337
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
338 declare void @g() #1
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
339
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
340 attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
341 attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
342
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
343 !llvm.dbg.cu = !{!0}
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
344 !llvm.module.flags = !{!9, !10}
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
345 !llvm.ident = !{!11}
|
Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
346
|
95
|
347 !0 = distinct !DICompileUnit(language: DW_LANG_C99, producer: "clang version 3.5 ", isOptimized: false, emissionKind: 0, file: !1, enums: !2, retainedTypes: !2, subprograms: !3, globals: !2, imports: !2)
|
|
348 !1 = !DIFile(filename: "<unknown>", directory: "D:\5C")
|
83
|
349 !2 = !{}
|
|
350 !3 = !{!4}
|
95
|
351 !4 = distinct !DISubprogram(name: "f", line: 3, isLocal: false, isDefinition: true, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false, scopeLine: 3, file: !5, scope: !6, type: !7, function: void ()* @f, variables: !2)
|
|
352 !5 = !DIFile(filename: "input.c", directory: "D:\5C")
|
|
353 !6 = !DIFile(filename: "input.c", directory: "D:C")
|
|
354 !7 = !DISubroutineType(types: !8)
|
83
|
355 !8 = !{null}
|
95
|
356 !9 = !{i32 2, !"CodeView", i32 1}
|
|
357 !10 = !{i32 1, !"Debug Info Version", i32 3}
|
83
|
358 !11 = !{!"clang version 3.5 "}
|
95
|
359 !12 = !DILocation(line: 1, scope: !13)
|
|
360 !13 = !DILexicalBlockFile(discriminator: 0, file: !14, scope: !4)
|
|
361 !14 = !DIFile(filename: "one.c", directory: "D:\5C")
|
|
362 !15 = !DILocation(line: 2, scope: !16)
|
|
363 !16 = !DILexicalBlockFile(discriminator: 0, file: !17, scope: !4)
|
|
364 !17 = !DIFile(filename: "two.c", directory: "D:\5C")
|
|
365 !18 = !DILocation(line: 7, scope: !13)
|
|
366 !19 = !DILocation(line: 8, scope: !13)
|