Lines Matching refs:X87
3 ; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s --check-prefixes=X64,X64-X87
26 ; X64-X87-LABEL: fptosi_i16_fp80:
27 ; X64-X87: # %bb.0:
28 ; X64-X87-NEXT: fldt {{[0-9]+}}(%rsp)
29 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
30 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
31 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
32 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
33 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
34 ; X64-X87-NEXT: fistps -{{[0-9]+}}(%rsp)
35 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
36 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
37 ; X64-X87-NEXT: retq
66 ; X64-X87-LABEL: fptosi_i16_fp80_ld:
67 ; X64-X87: # %bb.0:
68 ; X64-X87-NEXT: fldt (%rdi)
69 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
70 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
71 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
72 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
73 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
74 ; X64-X87-NEXT: fistps -{{[0-9]+}}(%rsp)
75 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
76 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
77 ; X64-X87-NEXT: retq
106 ; X64-X87-LABEL: fptosi_i32_fp80:
107 ; X64-X87: # %bb.0:
108 ; X64-X87-NEXT: fldt {{[0-9]+}}(%rsp)
109 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
110 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
111 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
112 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
113 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
114 ; X64-X87-NEXT: fistpl -{{[0-9]+}}(%rsp)
115 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
116 ; X64-X87-NEXT: movl -{{[0-9]+}}(%rsp), %eax
117 ; X64-X87-NEXT: retq
146 ; X64-X87-LABEL: fptosi_i32_fp80_ld:
147 ; X64-X87: # %bb.0:
148 ; X64-X87-NEXT: fldt (%rdi)
149 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
150 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
151 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
152 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
153 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
154 ; X64-X87-NEXT: fistpl -{{[0-9]+}}(%rsp)
155 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
156 ; X64-X87-NEXT: movl -{{[0-9]+}}(%rsp), %eax
157 ; X64-X87-NEXT: retq
191 ; X64-X87-LABEL: fptosi_i64_fp80:
192 ; X64-X87: # %bb.0:
193 ; X64-X87-NEXT: fldt {{[0-9]+}}(%rsp)
194 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
195 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
196 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
197 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
198 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
199 ; X64-X87-NEXT: fistpll -{{[0-9]+}}(%rsp)
200 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
201 ; X64-X87-NEXT: movq -{{[0-9]+}}(%rsp), %rax
202 ; X64-X87-NEXT: retq
236 ; X64-X87-LABEL: fptosi_i64_fp80_ld:
237 ; X64-X87: # %bb.0:
238 ; X64-X87-NEXT: fldt (%rdi)
239 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
240 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
241 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
242 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
243 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
244 ; X64-X87-NEXT: fistpll -{{[0-9]+}}(%rsp)
245 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
246 ; X64-X87-NEXT: movq -{{[0-9]+}}(%rsp), %rax
247 ; X64-X87-NEXT: retq
281 ; X64-X87-LABEL: fptoui_i16_fp80:
282 ; X64-X87: # %bb.0:
283 ; X64-X87-NEXT: fldt {{[0-9]+}}(%rsp)
284 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
285 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
286 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
287 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
288 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
289 ; X64-X87-NEXT: fistpl -{{[0-9]+}}(%rsp)
290 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
291 ; X64-X87-NEXT: movl -{{[0-9]+}}(%rsp), %eax
292 ; X64-X87-NEXT: # kill: def $ax killed $ax killed $eax
293 ; X64-X87-NEXT: retq
324 ; X64-X87-LABEL: fptoui_i16_fp80_ld:
325 ; X64-X87: # %bb.0:
326 ; X64-X87-NEXT: fldt (%rdi)
327 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
328 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
329 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
330 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
331 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
332 ; X64-X87-NEXT: fistpl -{{[0-9]+}}(%rsp)
333 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
334 ; X64-X87-NEXT: movl -{{[0-9]+}}(%rsp), %eax
335 ; X64-X87-NEXT: # kill: def $ax killed $ax killed $eax
336 ; X64-X87-NEXT: retq
370 ; X64-X87-LABEL: fptoui_i32_fp80:
371 ; X64-X87: # %bb.0:
372 ; X64-X87-NEXT: fldt {{[0-9]+}}(%rsp)
373 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
374 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
375 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
376 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
377 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
378 ; X64-X87-NEXT: fistpll -{{[0-9]+}}(%rsp)
379 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
380 ; X64-X87-NEXT: movl -{{[0-9]+}}(%rsp), %eax
381 ; X64-X87-NEXT: retq
414 ; X64-X87-LABEL: fptoui_i32_fp80_ld:
415 ; X64-X87: # %bb.0:
416 ; X64-X87-NEXT: fldt (%rdi)
417 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
418 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %eax
419 ; X64-X87-NEXT: orl $3072, %eax # imm = 0xC00
420 ; X64-X87-NEXT: movw %ax, -{{[0-9]+}}(%rsp)
421 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
422 ; X64-X87-NEXT: fistpll -{{[0-9]+}}(%rsp)
423 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
424 ; X64-X87-NEXT: movl -{{[0-9]+}}(%rsp), %eax
425 ; X64-X87-NEXT: retq
476 ; X64-X87-LABEL: fptoui_i64_fp80:
477 ; X64-X87: # %bb.0:
478 ; X64-X87-NEXT: fldt {{[0-9]+}}(%rsp)
479 ; X64-X87-NEXT: flds {{.*}}(%rip)
480 ; X64-X87-NEXT: xorl %eax, %eax
481 ; X64-X87-NEXT: fucomi %st(1), %st
482 ; X64-X87-NEXT: setbe %al
483 ; X64-X87-NEXT: fldz
484 ; X64-X87-NEXT: fcmovbe %st(1), %st
485 ; X64-X87-NEXT: fstp %st(1)
486 ; X64-X87-NEXT: fsubrp %st, %st(1)
487 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
488 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %ecx
489 ; X64-X87-NEXT: orl $3072, %ecx # imm = 0xC00
490 ; X64-X87-NEXT: movw %cx, -{{[0-9]+}}(%rsp)
491 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
492 ; X64-X87-NEXT: fistpll -{{[0-9]+}}(%rsp)
493 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
494 ; X64-X87-NEXT: shlq $63, %rax
495 ; X64-X87-NEXT: xorq -{{[0-9]+}}(%rsp), %rax
496 ; X64-X87-NEXT: retq
556 ; X64-X87-LABEL: fptoui_i64_fp80_ld:
557 ; X64-X87: # %bb.0:
558 ; X64-X87-NEXT: fldt (%rdi)
559 ; X64-X87-NEXT: flds {{.*}}(%rip)
560 ; X64-X87-NEXT: xorl %eax, %eax
561 ; X64-X87-NEXT: fucomi %st(1), %st
562 ; X64-X87-NEXT: setbe %al
563 ; X64-X87-NEXT: fldz
564 ; X64-X87-NEXT: fcmovbe %st(1), %st
565 ; X64-X87-NEXT: fstp %st(1)
566 ; X64-X87-NEXT: fsubrp %st, %st(1)
567 ; X64-X87-NEXT: fnstcw -{{[0-9]+}}(%rsp)
568 ; X64-X87-NEXT: movzwl -{{[0-9]+}}(%rsp), %ecx
569 ; X64-X87-NEXT: orl $3072, %ecx # imm = 0xC00
570 ; X64-X87-NEXT: movw %cx, -{{[0-9]+}}(%rsp)
571 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
572 ; X64-X87-NEXT: fistpll -{{[0-9]+}}(%rsp)
573 ; X64-X87-NEXT: fldcw -{{[0-9]+}}(%rsp)
574 ; X64-X87-NEXT: shlq $63, %rax
575 ; X64-X87-NEXT: xorq -{{[0-9]+}}(%rsp), %rax
576 ; X64-X87-NEXT: retq