1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
|
.text
.file "/b/build/slave/linux/build/src/src/work/gcc/gcc/testsuite/gcc.c-torture/execute/divcmp-3.c"
.section .text.test1,"ax",@progbits
.hidden test1
.globl test1
.type test1,@function
test1: # @test1
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, -300
i32.add $push1=, $0, $pop0
i32.const $push2=, 100
i32.lt_u $push3=, $pop1, $pop2
return $pop3
.endfunc
.Lfunc_end0:
.size test1, .Lfunc_end0-test1
.section .text.test1u,"ax",@progbits
.hidden test1u
.globl test1u
.type test1u,@function
test1u: # @test1u
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 0
return $pop0
.endfunc
.Lfunc_end1:
.size test1u, .Lfunc_end1-test1u
.section .text.test2,"ax",@progbits
.hidden test2
.globl test2
.type test2,@function
test2: # @test2
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, -300
i32.add $push1=, $0, $pop0
i32.const $push2=, 99
i32.gt_u $push3=, $pop1, $pop2
return $pop3
.endfunc
.Lfunc_end2:
.size test2, .Lfunc_end2-test2
.section .text.test2u,"ax",@progbits
.hidden test2u
.globl test2u
.type test2u,@function
test2u: # @test2u
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 1
return $pop0
.endfunc
.Lfunc_end3:
.size test2u, .Lfunc_end3-test2u
.section .text.test3,"ax",@progbits
.hidden test3
.globl test3
.type test3,@function
test3: # @test3
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 1
return $pop0
.endfunc
.Lfunc_end4:
.size test3, .Lfunc_end4-test3
.section .text.test3u,"ax",@progbits
.hidden test3u
.globl test3u
.type test3u,@function
test3u: # @test3u
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 1
return $pop0
.endfunc
.Lfunc_end5:
.size test3u, .Lfunc_end5-test3u
.section .text.test4,"ax",@progbits
.hidden test4
.globl test4
.type test4,@function
test4: # @test4
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 1
return $pop0
.endfunc
.Lfunc_end6:
.size test4, .Lfunc_end6-test4
.section .text.test4u,"ax",@progbits
.hidden test4u
.globl test4u
.type test4u,@function
test4u: # @test4u
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 1
return $pop0
.endfunc
.Lfunc_end7:
.size test4u, .Lfunc_end7-test4u
.section .text.test5,"ax",@progbits
.hidden test5
.globl test5
.type test5,@function
test5: # @test5
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 0
return $pop0
.endfunc
.Lfunc_end8:
.size test5, .Lfunc_end8-test5
.section .text.test5u,"ax",@progbits
.hidden test5u
.globl test5u
.type test5u,@function
test5u: # @test5u
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 0
return $pop0
.endfunc
.Lfunc_end9:
.size test5u, .Lfunc_end9-test5u
.section .text.test6,"ax",@progbits
.hidden test6
.globl test6
.type test6,@function
test6: # @test6
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 0
return $pop0
.endfunc
.Lfunc_end10:
.size test6, .Lfunc_end10-test6
.section .text.test6u,"ax",@progbits
.hidden test6u
.globl test6u
.type test6u,@function
test6u: # @test6u
.param i32
.result i32
# BB#0: # %entry
i32.const $push0=, 0
return $pop0
.endfunc
.Lfunc_end11:
.size test6u, .Lfunc_end11-test6u
.section .text.main,"ax",@progbits
.hidden main
.globl main
.type main,@function
main: # @main
.result i32
.local i32, i32
# BB#0: # %entry
i32.const $1=, -128
i32.const $0=, -2147483648
.LBB12_1: # %for.body
# =>This Inner Loop Header: Depth=1
block
loop # label1:
i32.const $push10=, 24
i32.shr_s $push0=, $0, $pop10
i32.const $push9=, -300
i32.add $push1=, $pop0, $pop9
i32.const $push8=, 99
i32.le_u $push2=, $pop1, $pop8
br_if 2, $pop2 # 2: down to label0
# BB#2: # %for.cond
# in Loop: Header=BB12_1 Depth=1
i32.const $push7=, 1
i32.add $1=, $1, $pop7
i32.const $push6=, 16777216
i32.add $0=, $0, $pop6
i32.const $push5=, 255
i32.le_s $push3=, $1, $pop5
br_if 0, $pop3 # 0: up to label1
# BB#3: # %for.end
end_loop # label2:
i32.const $push4=, 0
return $pop4
.LBB12_4: # %if.then
end_block # label0:
call abort@FUNCTION
unreachable
.endfunc
.Lfunc_end12:
.size main, .Lfunc_end12-main
.ident "clang version 3.9.0 "
|