]> git.proxmox.com Git - rustc.git/blob - src/binaryen/test/torture-s/vfprintf-1.c.s
New upstream version 1.23.0+dfsg1
[rustc.git] / src / binaryen / test / torture-s / vfprintf-1.c.s
1 .text
2 .file "vfprintf-1.c"
3 .section .text.inner,"ax",@progbits
4 .hidden inner # -- Begin function inner
5 .globl inner
6 .type inner,@function
7 inner: # @inner
8 .param i32, i32
9 .local i32
10 # BB#0: # %entry
11 i32.const $push78=, 0
12 i32.const $push76=, 0
13 i32.load $push75=, __stack_pointer($pop76)
14 i32.const $push77=, 16
15 i32.sub $push83=, $pop75, $pop77
16 tee_local $push82=, $2=, $pop83
17 i32.store __stack_pointer($pop78), $pop82
18 i32.store 8($2), $1
19 i32.store 12($2), $1
20 block
21 i32.const $push0=, 10
22 i32.gt_u $push1=, $0, $pop0
23 br_if 0, $pop1 # 0: down to label0
24 # BB#1: # %entry
25 block
26 block
27 block
28 block
29 block
30 block
31 block
32 block
33 block
34 block
35 block
36 block
37 br_table $0, 0, 3, 4, 5, 1, 7, 8, 6, 9, 2, 10, 0 # 0: down to label12
38 # 3: down to label9
39 # 4: down to label8
40 # 5: down to label7
41 # 1: down to label11
42 # 7: down to label5
43 # 8: down to label4
44 # 6: down to label6
45 # 9: down to label3
46 # 2: down to label10
47 # 10: down to label2
48 .LBB0_2: # %sw.bb
49 end_block # label12:
50 i32.const $push68=, 0
51 i32.load $push86=, stdout($pop68)
52 tee_local $push85=, $0=, $pop86
53 i32.const $push70=, .L.str
54 i32.load $push69=, 12($2)
55 i32.call $drop=, vfprintf@FUNCTION, $pop85, $pop70, $pop69
56 i32.const $push84=, .L.str
57 i32.load $push71=, 8($2)
58 i32.call $push72=, vfprintf@FUNCTION, $0, $pop84, $pop71
59 i32.const $push73=, 5
60 i32.eq $push74=, $pop72, $pop73
61 br_if 10, $pop74 # 10: down to label1
62 br 11 # 11: down to label0
63 .LBB0_3: # %sw.bb22
64 end_block # label11:
65 i32.const $push42=, 0
66 i32.load $push89=, stdout($pop42)
67 tee_local $push88=, $0=, $pop89
68 i32.const $push44=, .L.str.4
69 i32.load $push43=, 12($2)
70 i32.call $drop=, vfprintf@FUNCTION, $pop88, $pop44, $pop43
71 i32.const $push87=, .L.str.4
72 i32.load $push45=, 8($2)
73 i32.call $push46=, vfprintf@FUNCTION, $0, $pop87, $pop45
74 i32.const $push47=, 5
75 i32.eq $push48=, $pop46, $pop47
76 br_if 9, $pop48 # 9: down to label1
77 br 10 # 10: down to label0
78 .LBB0_4: # %sw.bb52
79 end_block # label10:
80 i32.const $push9=, 0
81 i32.load $push92=, stdout($pop9)
82 tee_local $push91=, $0=, $pop92
83 i32.const $push11=, .L.str.6
84 i32.load $push10=, 12($2)
85 i32.call $drop=, vfprintf@FUNCTION, $pop91, $pop11, $pop10
86 i32.const $push90=, .L.str.6
87 i32.load $push12=, 8($2)
88 i32.call $push13=, vfprintf@FUNCTION, $0, $pop90, $pop12
89 i32.const $push14=, 7
90 i32.ne $push15=, $pop13, $pop14
91 br_if 9, $pop15 # 9: down to label0
92 br 8 # 8: down to label1
93 .LBB0_5: # %sw.bb4
94 end_block # label9:
95 i32.const $push61=, 0
96 i32.load $push95=, stdout($pop61)
97 tee_local $push94=, $0=, $pop95
98 i32.const $push63=, .L.str.1
99 i32.load $push62=, 12($2)
100 i32.call $drop=, vfprintf@FUNCTION, $pop94, $pop63, $pop62
101 i32.const $push93=, .L.str.1
102 i32.load $push64=, 8($2)
103 i32.call $push65=, vfprintf@FUNCTION, $0, $pop93, $pop64
104 i32.const $push66=, 6
105 i32.eq $push67=, $pop65, $pop66
106 br_if 7, $pop67 # 7: down to label1
107 br 8 # 8: down to label0
108 .LBB0_6: # %sw.bb10
109 end_block # label8:
110 i32.const $push54=, 0
111 i32.load $push98=, stdout($pop54)
112 tee_local $push97=, $0=, $pop98
113 i32.const $push56=, .L.str.2
114 i32.load $push55=, 12($2)
115 i32.call $drop=, vfprintf@FUNCTION, $pop97, $pop56, $pop55
116 i32.const $push96=, .L.str.2
117 i32.load $push57=, 8($2)
118 i32.call $push58=, vfprintf@FUNCTION, $0, $pop96, $pop57
119 i32.const $push59=, 1
120 i32.eq $push60=, $pop58, $pop59
121 br_if 6, $pop60 # 6: down to label1
122 br 7 # 7: down to label0
123 .LBB0_7: # %sw.bb16
124 end_block # label7:
125 i32.const $push49=, 0
126 i32.load $push101=, stdout($pop49)
127 tee_local $push100=, $0=, $pop101
128 i32.const $push51=, .L.str.3
129 i32.load $push50=, 12($2)
130 i32.call $drop=, vfprintf@FUNCTION, $pop100, $pop51, $pop50
131 i32.const $push99=, .L.str.3
132 i32.load $push52=, 8($2)
133 i32.call $push53=, vfprintf@FUNCTION, $0, $pop99, $pop52
134 i32.eqz $push117=, $pop53
135 br_if 5, $pop117 # 5: down to label1
136 br 6 # 6: down to label0
137 .LBB0_8: # %sw.bb40
138 end_block # label6:
139 i32.const $push23=, 0
140 i32.load $push104=, stdout($pop23)
141 tee_local $push103=, $0=, $pop104
142 i32.const $push25=, .L.str.4
143 i32.load $push24=, 12($2)
144 i32.call $drop=, vfprintf@FUNCTION, $pop103, $pop25, $pop24
145 i32.const $push102=, .L.str.4
146 i32.load $push26=, 8($2)
147 i32.call $push27=, vfprintf@FUNCTION, $0, $pop102, $pop26
148 i32.eqz $push118=, $pop27
149 br_if 4, $pop118 # 4: down to label1
150 br 5 # 5: down to label0
151 .LBB0_9: # %sw.bb28
152 end_block # label5:
153 i32.const $push35=, 0
154 i32.load $push107=, stdout($pop35)
155 tee_local $push106=, $0=, $pop107
156 i32.const $push37=, .L.str.4
157 i32.load $push36=, 12($2)
158 i32.call $drop=, vfprintf@FUNCTION, $pop106, $pop37, $pop36
159 i32.const $push105=, .L.str.4
160 i32.load $push38=, 8($2)
161 i32.call $push39=, vfprintf@FUNCTION, $0, $pop105, $pop38
162 i32.const $push40=, 6
163 i32.eq $push41=, $pop39, $pop40
164 br_if 3, $pop41 # 3: down to label1
165 br 4 # 4: down to label0
166 .LBB0_10: # %sw.bb34
167 end_block # label4:
168 i32.const $push28=, 0
169 i32.load $push110=, stdout($pop28)
170 tee_local $push109=, $0=, $pop110
171 i32.const $push30=, .L.str.4
172 i32.load $push29=, 12($2)
173 i32.call $drop=, vfprintf@FUNCTION, $pop109, $pop30, $pop29
174 i32.const $push108=, .L.str.4
175 i32.load $push31=, 8($2)
176 i32.call $push32=, vfprintf@FUNCTION, $0, $pop108, $pop31
177 i32.const $push33=, 1
178 i32.eq $push34=, $pop32, $pop33
179 br_if 2, $pop34 # 2: down to label1
180 br 3 # 3: down to label0
181 .LBB0_11: # %sw.bb46
182 end_block # label3:
183 i32.const $push16=, 0
184 i32.load $push113=, stdout($pop16)
185 tee_local $push112=, $0=, $pop113
186 i32.const $push18=, .L.str.5
187 i32.load $push17=, 12($2)
188 i32.call $drop=, vfprintf@FUNCTION, $pop112, $pop18, $pop17
189 i32.const $push111=, .L.str.5
190 i32.load $push19=, 8($2)
191 i32.call $push20=, vfprintf@FUNCTION, $0, $pop111, $pop19
192 i32.const $push21=, 1
193 i32.eq $push22=, $pop20, $pop21
194 br_if 1, $pop22 # 1: down to label1
195 br 2 # 2: down to label0
196 .LBB0_12: # %sw.bb58
197 end_block # label2:
198 i32.const $push2=, 0
199 i32.load $push116=, stdout($pop2)
200 tee_local $push115=, $0=, $pop116
201 i32.const $push4=, .L.str.7
202 i32.load $push3=, 12($2)
203 i32.call $drop=, vfprintf@FUNCTION, $pop115, $pop4, $pop3
204 i32.const $push114=, .L.str.7
205 i32.load $push5=, 8($2)
206 i32.call $push6=, vfprintf@FUNCTION, $0, $pop114, $pop5
207 i32.const $push7=, 2
208 i32.ne $push8=, $pop6, $pop7
209 br_if 1, $pop8 # 1: down to label0
210 .LBB0_13: # %sw.epilog
211 end_block # label1:
212 i32.const $push81=, 0
213 i32.const $push79=, 16
214 i32.add $push80=, $2, $pop79
215 i32.store __stack_pointer($pop81), $pop80
216 return
217 .LBB0_14: # %if.then
218 end_block # label0:
219 call abort@FUNCTION
220 unreachable
221 .endfunc
222 .Lfunc_end0:
223 .size inner, .Lfunc_end0-inner
224 # -- End function
225 .section .text.main,"ax",@progbits
226 .hidden main # -- Begin function main
227 .globl main
228 .type main,@function
229 main: # @main
230 .result i32
231 .local i32
232 # BB#0: # %entry
233 i32.const $push19=, 0
234 i32.const $push17=, 0
235 i32.load $push16=, __stack_pointer($pop17)
236 i32.const $push18=, 112
237 i32.sub $push43=, $pop16, $pop18
238 tee_local $push42=, $0=, $pop43
239 i32.store __stack_pointer($pop19), $pop42
240 i32.const $push0=, 0
241 i32.const $push41=, 0
242 call inner@FUNCTION, $pop0, $pop41
243 i32.const $push1=, 1
244 i32.const $push40=, 0
245 call inner@FUNCTION, $pop1, $pop40
246 i32.const $push2=, 2
247 i32.const $push39=, 0
248 call inner@FUNCTION, $pop2, $pop39
249 i32.const $push3=, 3
250 i32.const $push38=, 0
251 call inner@FUNCTION, $pop3, $pop38
252 i32.const $push4=, .L.str
253 i32.store 96($0), $pop4
254 i32.const $push5=, 4
255 i32.const $push23=, 96
256 i32.add $push24=, $0, $pop23
257 call inner@FUNCTION, $pop5, $pop24
258 i32.const $push6=, .L.str.1
259 i32.store 80($0), $pop6
260 i32.const $push7=, 5
261 i32.const $push25=, 80
262 i32.add $push26=, $0, $pop25
263 call inner@FUNCTION, $pop7, $pop26
264 i32.const $push8=, .L.str.2
265 i32.store 64($0), $pop8
266 i32.const $push9=, 6
267 i32.const $push27=, 64
268 i32.add $push28=, $0, $pop27
269 call inner@FUNCTION, $pop9, $pop28
270 i32.const $push10=, .L.str.3
271 i32.store 48($0), $pop10
272 i32.const $push11=, 7
273 i32.const $push29=, 48
274 i32.add $push30=, $0, $pop29
275 call inner@FUNCTION, $pop11, $pop30
276 i32.const $push12=, 120
277 i32.store 32($0), $pop12
278 i32.const $push13=, 8
279 i32.const $push31=, 32
280 i32.add $push32=, $0, $pop31
281 call inner@FUNCTION, $pop13, $pop32
282 i32.const $push37=, .L.str.1
283 i32.store 16($0), $pop37
284 i32.const $push14=, 9
285 i32.const $push33=, 16
286 i32.add $push34=, $0, $pop33
287 call inner@FUNCTION, $pop14, $pop34
288 i32.const $push36=, 0
289 i32.store 0($0), $pop36
290 i32.const $push15=, 10
291 call inner@FUNCTION, $pop15, $0
292 i32.const $push22=, 0
293 i32.const $push20=, 112
294 i32.add $push21=, $0, $pop20
295 i32.store __stack_pointer($pop22), $pop21
296 i32.const $push35=, 0
297 # fallthrough-return: $pop35
298 .endfunc
299 .Lfunc_end1:
300 .size main, .Lfunc_end1-main
301 # -- End function
302 .type .L.str,@object # @.str
303 .section .rodata.str1.1,"aMS",@progbits,1
304 .L.str:
305 .asciz "hello"
306 .size .L.str, 6
307
308 .type .L.str.1,@object # @.str.1
309 .L.str.1:
310 .asciz "hello\n"
311 .size .L.str.1, 7
312
313 .type .L.str.2,@object # @.str.2
314 .L.str.2:
315 .asciz "a"
316 .size .L.str.2, 2
317
318 .type .L.str.3,@object # @.str.3
319 .L.str.3:
320 .skip 1
321 .size .L.str.3, 1
322
323 .type .L.str.4,@object # @.str.4
324 .L.str.4:
325 .asciz "%s"
326 .size .L.str.4, 3
327
328 .type .L.str.5,@object # @.str.5
329 .L.str.5:
330 .asciz "%c"
331 .size .L.str.5, 3
332
333 .type .L.str.6,@object # @.str.6
334 .L.str.6:
335 .asciz "%s\n"
336 .size .L.str.6, 4
337
338 .type .L.str.7,@object # @.str.7
339 .L.str.7:
340 .asciz "%d\n"
341 .size .L.str.7, 4
342
343
344 .ident "clang version 6.0.0 (https://llvm.googlesource.com/clang.git a1774cccdccfa673c057f93ccf23bc2d8cb04932) (https://llvm.googlesource.com/llvm.git fc50e1c6121255333bc42d6faf2b524c074eae25)"
345 .functype vfprintf, i32, i32, i32, i32
346 .functype abort, void
347 .import_global stdout
348 .size stdout, 4