@@ -180,12 +180,15 @@ define float @tan(float %x) #0 {
180
180
define float @acos (float %x ) #0 {
181
181
; CHECK-LABEL: acos:
182
182
; CHECK: # %bb.0:
183
- ; CHECK-NEXT: pushl %eax
183
+ ; CHECK-NEXT: subl $12, %esp
184
+ ; CHECK-NEXT: flds {{[0-9]+}}(%esp)
185
+ ; CHECK-NEXT: fstpl (%esp)
186
+ ; CHECK-NEXT: wait
187
+ ; CHECK-NEXT: calll _acos
188
+ ; CHECK-NEXT: fstps {{[0-9]+}}(%esp)
184
189
; CHECK-NEXT: flds {{[0-9]+}}(%esp)
185
- ; CHECK-NEXT: fstps (%esp)
186
190
; CHECK-NEXT: wait
187
- ; CHECK-NEXT: calll _acosf
188
- ; CHECK-NEXT: popl %eax
191
+ ; CHECK-NEXT: addl $12, %esp
189
192
; CHECK-NEXT: retl
190
193
%result = call float @llvm.experimental.constrained.acos.f32 (float %x , metadata !"round.dynamic" , metadata !"fpexcept.strict" ) #0
191
194
ret float %result
@@ -194,12 +197,15 @@ define float @acos(float %x) #0 {
194
197
define float @asin (float %x ) #0 {
195
198
; CHECK-LABEL: asin:
196
199
; CHECK: # %bb.0:
197
- ; CHECK-NEXT: pushl %eax
200
+ ; CHECK-NEXT: subl $12, %esp
201
+ ; CHECK-NEXT: flds {{[0-9]+}}(%esp)
202
+ ; CHECK-NEXT: fstpl (%esp)
203
+ ; CHECK-NEXT: wait
204
+ ; CHECK-NEXT: calll _asin
205
+ ; CHECK-NEXT: fstps {{[0-9]+}}(%esp)
198
206
; CHECK-NEXT: flds {{[0-9]+}}(%esp)
199
- ; CHECK-NEXT: fstps (%esp)
200
207
; CHECK-NEXT: wait
201
- ; CHECK-NEXT: calll _asinf
202
- ; CHECK-NEXT: popl %eax
208
+ ; CHECK-NEXT: addl $12, %esp
203
209
; CHECK-NEXT: retl
204
210
%result = call float @llvm.experimental.constrained.asin.f32 (float %x , metadata !"round.dynamic" , metadata !"fpexcept.strict" ) #0
205
211
ret float %result
@@ -208,12 +214,15 @@ define float @asin(float %x) #0 {
208
214
define float @atan (float %x ) #0 {
209
215
; CHECK-LABEL: atan:
210
216
; CHECK: # %bb.0:
211
- ; CHECK-NEXT: pushl %eax
217
+ ; CHECK-NEXT: subl $12, %esp
212
218
; CHECK-NEXT: flds {{[0-9]+}}(%esp)
213
- ; CHECK-NEXT: fstps (%esp)
219
+ ; CHECK-NEXT: fstpl (%esp)
214
220
; CHECK-NEXT: wait
215
- ; CHECK-NEXT: calll _atanf
216
- ; CHECK-NEXT: popl %eax
221
+ ; CHECK-NEXT: calll _atan
222
+ ; CHECK-NEXT: fstps {{[0-9]+}}(%esp)
223
+ ; CHECK-NEXT: flds {{[0-9]+}}(%esp)
224
+ ; CHECK-NEXT: wait
225
+ ; CHECK-NEXT: addl $12, %esp
217
226
; CHECK-NEXT: retl
218
227
%result = call float @llvm.experimental.constrained.atan.f32 (float %x , metadata !"round.dynamic" , metadata !"fpexcept.strict" ) #0
219
228
ret float %result
@@ -222,12 +231,15 @@ define float @atan(float %x) #0 {
222
231
define float @cosh (float %x ) #0 {
223
232
; CHECK-LABEL: cosh:
224
233
; CHECK: # %bb.0:
225
- ; CHECK-NEXT: pushl %eax
234
+ ; CHECK-NEXT: subl $12, %esp
235
+ ; CHECK-NEXT: flds {{[0-9]+}}(%esp)
236
+ ; CHECK-NEXT: fstpl (%esp)
237
+ ; CHECK-NEXT: wait
238
+ ; CHECK-NEXT: calll _cosh
239
+ ; CHECK-NEXT: fstps {{[0-9]+}}(%esp)
226
240
; CHECK-NEXT: flds {{[0-9]+}}(%esp)
227
- ; CHECK-NEXT: fstps (%esp)
228
241
; CHECK-NEXT: wait
229
- ; CHECK-NEXT: calll _coshf
230
- ; CHECK-NEXT: popl %eax
242
+ ; CHECK-NEXT: addl $12, %esp
231
243
; CHECK-NEXT: retl
232
244
%result = call float @llvm.experimental.constrained.cosh.f32 (float %x , metadata !"round.dynamic" , metadata !"fpexcept.strict" ) #0
233
245
ret float %result
@@ -236,26 +248,31 @@ define float @cosh(float %x) #0 {
236
248
define float @sinh (float %x ) #0 {
237
249
; CHECK-LABEL: sinh:
238
250
; CHECK: # %bb.0:
239
- ; CHECK-NEXT: pushl %eax
251
+ ; CHECK-NEXT: subl $12, %esp
252
+ ; CHECK-NEXT: flds {{[0-9]+}}(%esp)
253
+ ; CHECK-NEXT: fstpl (%esp)
254
+ ; CHECK-NEXT: wait
255
+ ; CHECK-NEXT: calll _sinh
256
+ ; CHECK-NEXT: fstps {{[0-9]+}}(%esp)
240
257
; CHECK-NEXT: flds {{[0-9]+}}(%esp)
241
- ; CHECK-NEXT: fstps (%esp)
242
258
; CHECK-NEXT: wait
243
- ; CHECK-NEXT: calll _sinhf
244
- ; CHECK-NEXT: popl %eax
259
+ ; CHECK-NEXT: addl $12, %esp
245
260
; CHECK-NEXT: retl
246
261
%result = call float @llvm.experimental.constrained.sinh.f32 (float %x , metadata !"round.dynamic" , metadata !"fpexcept.strict" ) #0
247
262
ret float %result
248
263
}
249
264
250
265
define float @tanh (float %x ) #0 {
251
- ; CHECK-LABEL: tanh:
252
266
; CHECK: # %bb.0:
253
- ; CHECK-NEXT: pushl %eax
267
+ ; CHECK-NEXT: subl $12, %esp
254
268
; CHECK-NEXT: flds {{[0-9]+}}(%esp)
255
- ; CHECK-NEXT: fstps (%esp)
269
+ ; CHECK-NEXT: fstpl (%esp)
256
270
; CHECK-NEXT: wait
257
- ; CHECK-NEXT: calll _tanhf
258
- ; CHECK-NEXT: popl %eax
271
+ ; CHECK-NEXT: calll _tanh
272
+ ; CHECK-NEXT: fstps {{[0-9]+}}(%esp)
273
+ ; CHECK-NEXT: flds {{[0-9]+}}(%esp)
274
+ ; CHECK-NEXT: wait
275
+ ; CHECK-NEXT: addl $12, %esp
259
276
; CHECK-NEXT: retl
260
277
%result = call float @llvm.experimental.constrained.tanh.f32 (float %x , metadata !"round.dynamic" , metadata !"fpexcept.strict" ) #0
261
278
ret float %result
0 commit comments