Lines Matching refs:outs
126 def FP32_TO_INT16_IN_MEM : PseudoI<(outs), (ins i16mem:$dst, RFP32:$src),
128 def FP32_TO_INT32_IN_MEM : PseudoI<(outs), (ins i32mem:$dst, RFP32:$src),
130 def FP32_TO_INT64_IN_MEM : PseudoI<(outs), (ins i64mem:$dst, RFP32:$src),
132 def FP64_TO_INT16_IN_MEM : PseudoI<(outs), (ins i16mem:$dst, RFP64:$src),
134 def FP64_TO_INT32_IN_MEM : PseudoI<(outs), (ins i32mem:$dst, RFP64:$src),
136 def FP64_TO_INT64_IN_MEM : PseudoI<(outs), (ins i64mem:$dst, RFP64:$src),
138 def FP80_TO_INT16_IN_MEM : PseudoI<(outs), (ins i16mem:$dst, RFP80:$src),
140 def FP80_TO_INT32_IN_MEM : PseudoI<(outs), (ins i32mem:$dst, RFP80:$src),
142 def FP80_TO_INT64_IN_MEM : PseudoI<(outs), (ins i64mem:$dst, RFP80:$src),
169 class FpIf32<dag outs, dag ins, FPFormat fp, list<dag> pattern> :
170 FpI_<outs, ins, fp, pattern>, Requires<[FPStackf32]>;
171 class FpIf64<dag outs, dag ins, FPFormat fp, list<dag> pattern> :
172 FpI_<outs, ins, fp, pattern>, Requires<[FPStackf64]>;
178 def _Fp32 : FpIf32<(outs RFP32:$dst), (ins RFP32:$src1, RFP32:$src2), TwoArgFP,
180 def _Fp64 : FpIf64<(outs RFP64:$dst), (ins RFP64:$src1, RFP64:$src2), TwoArgFP,
182 def _Fp80 : FpI_<(outs RFP80:$dst), (ins RFP80:$src1, RFP80:$src2), TwoArgFP,
191 def _Fp32m : FpIf32<(outs RFP32:$dst),
198 def _Fp64m : FpIf64<(outs RFP64:$dst),
205 def _Fp64m32: FpIf64<(outs RFP64:$dst),
212 def _Fp80m32: FpI_<(outs RFP80:$dst),
219 def _Fp80m64: FpI_<(outs RFP80:$dst),
227 def _F32m : FPI<0xD8, fp, (outs), (ins f32mem:$src),
230 def _F64m : FPI<0xDC, fp, (outs), (ins f64mem:$src),
233 def _FpI16m32 : FpIf32<(outs RFP32:$dst), (ins RFP32:$src1, i16mem:$src2),
240 def _FpI32m32 : FpIf32<(outs RFP32:$dst), (ins RFP32:$src1, i32mem:$src2),
247 def _FpI16m64 : FpIf64<(outs RFP64:$dst), (ins RFP64:$src1, i16mem:$src2),
254 def _FpI32m64 : FpIf64<(outs RFP64:$dst), (ins RFP64:$src1, i32mem:$src2),
261 def _FpI16m80 : FpI_<(outs RFP80:$dst), (ins RFP80:$src1, i16mem:$src2),
268 def _FpI32m80 : FpI_<(outs RFP80:$dst), (ins RFP80:$src1, i32mem:$src2),
276 def _FI16m : FPI<0xDE, fp, (outs), (ins i16mem:$src),
279 def _FI32m : FPI<0xDA, fp, (outs), (ins i32mem:$src),
311 : FPI<0xD8, fp, (outs), (ins RSTi:$op), asm>;
313 : FPI<0xDC, fp, (outs), (ins RSTi:$op), asm>;
315 : FPI<0xDE, fp, (outs), (ins RSTi:$op), asm>;
351 def _Fp32 : FpIf32<(outs RFP32:$dst), (ins RFP32:$src), OneArgFPRW,
353 def _Fp64 : FpIf64<(outs RFP64:$dst), (ins RFP64:$src), OneArgFPRW,
355 def _Fp80 : FpI_<(outs RFP80:$dst), (ins RFP80:$src), OneArgFPRW,
357 def _F : FPI<0xD9, fp, (outs), (ins), asmstring>;
371 def TST_Fp32 : FpIf32<(outs), (ins RFP32:$src), OneArgFP, []>;
372 def TST_Fp64 : FpIf64<(outs), (ins RFP64:$src), OneArgFP, []>;
373 def TST_Fp80 : FpI_<(outs), (ins RFP80:$src), OneArgFP, []>;
376 def TST_F : FPI<0xD9, MRM_E4, (outs), (ins), "ftst">;
381 def XAM_Fp32 : FpIf32<(outs), (ins RFP32:$src), OneArgFP, []>;
382 def XAM_Fp64 : FpIf64<(outs), (ins RFP64:$src), OneArgFP, []>;
383 def XAM_Fp80 : FpI_<(outs), (ins RFP80:$src), OneArgFP, []>;
384 def XAM_F : FPI<0xD9, MRM_E5, (outs), (ins), "fxam">;
391 def FCOM32m : FPI<0xD8, MRM2m, (outs), (ins f32mem:$src), "fcom{s}\t$src">;
392 def FCOMP32m : FPI<0xD8, MRM3m, (outs), (ins f32mem:$src), "fcomp{s}\t$src">;
394 def FCOM64m : FPI<0xDC, MRM2m, (outs), (ins f64mem:$src), "fcom{l}\t$src">;
395 def FCOMP64m : FPI<0xDC, MRM3m, (outs), (ins f64mem:$src), "fcomp{l}\t$src">;
397 def FICOM16m : FPI<0xDE, MRM2m, (outs), (ins i16mem:$src), "ficom{s}\t$src">;
398 def FICOMP16m: FPI<0xDE, MRM3m, (outs), (ins i16mem:$src), "ficomp{s}\t$src">;
400 def FICOM32m : FPI<0xDA, MRM2m, (outs), (ins i32mem:$src), "ficom{l}\t$src">;
401 def FICOMP32m: FPI<0xDA, MRM3m, (outs), (ins i32mem:$src), "ficomp{l}\t$src">;
406 def FLDENVm : FPI<0xD9, MRM4m, (outs), (ins anymem:$src), "fldenv\t$src">;
407 def FRSTORm : FPI<0xDD, MRM4m, (outs), (ins anymem:$src), "frstor\t$src">;
411 def FSTENVm : FPI<0xD9, MRM6m, (outs), (ins anymem:$dst), "fnstenv\t$dst">;
412 def FSAVEm : FPI<0xDD, MRM6m, (outs), (ins anymem:$dst), "fnsave\t$dst">;
416 def FNSTSWm : FPI<0xDD, MRM7m, (outs), (ins i16mem:$dst), "fnstsw\t$dst">;
419 def FBLDm : FPI<0xDF, MRM4m, (outs), (ins f80mem:$src), "fbld\t$src">;
421 def FBSTPm : FPI<0xDF, MRM6m, (outs), (ins f80mem:$dst), "fbstp\t$dst">;
425 class FpIf32CMov<dag outs, dag ins, FPFormat fp, list<dag> pattern> :
426 FpI_<outs, ins, fp, pattern>, Requires<[FPStackf32, HasCMOV]>;
427 class FpIf64CMov<dag outs, dag ins, FPFormat fp, list<dag> pattern> :
428 FpI_<outs, ins, fp, pattern>, Requires<[FPStackf64, HasCMOV]>;
431 def _Fp32 : FpIf32CMov<(outs RFP32:$dst), (ins RFP32:$src1, RFP32:$src2),
435 def _Fp64 : FpIf64CMov<(outs RFP64:$dst), (ins RFP64:$src1, RFP64:$src2),
439 def _Fp80 : FpI_<(outs RFP80:$dst), (ins RFP80:$src1, RFP80:$src2),
460 def CMOVB_F : FPI<0xDA, MRM0r, (outs), (ins RSTi:$op),
462 def CMOVBE_F : FPI<0xDA, MRM2r, (outs), (ins RSTi:$op),
464 def CMOVE_F : FPI<0xDA, MRM1r, (outs), (ins RSTi:$op),
466 def CMOVP_F : FPI<0xDA, MRM3r, (outs), (ins RSTi:$op),
468 def CMOVNB_F : FPI<0xDB, MRM0r, (outs), (ins RSTi:$op),
470 def CMOVNBE_F: FPI<0xDB, MRM2r, (outs), (ins RSTi:$op),
472 def CMOVNE_F : FPI<0xDB, MRM1r, (outs), (ins RSTi:$op),
474 def CMOVNP_F : FPI<0xDB, MRM3r, (outs), (ins RSTi:$op),
483 def LD_Fp32m : FpIf32<(outs RFP32:$dst), (ins f32mem:$src), ZeroArgFP,
485 def LD_Fp64m : FpIf64<(outs RFP64:$dst), (ins f64mem:$src), ZeroArgFP,
487 def LD_Fp80m : FpI_<(outs RFP80:$dst), (ins f80mem:$src), ZeroArgFP,
490 def LD_Fp32m64 : FpIf64<(outs RFP64:$dst), (ins f32mem:$src), ZeroArgFP,
492 def LD_Fp64m80 : FpI_<(outs RFP80:$dst), (ins f64mem:$src), ZeroArgFP,
494 def LD_Fp32m80 : FpI_<(outs RFP80:$dst), (ins f32mem:$src), ZeroArgFP,
497 def ILD_Fp16m32: FpIf32<(outs RFP32:$dst), (ins i16mem:$src), ZeroArgFP,
499 def ILD_Fp32m32: FpIf32<(outs RFP32:$dst), (ins i32mem:$src), ZeroArgFP,
501 def ILD_Fp64m32: FpIf32<(outs RFP32:$dst), (ins i64mem:$src), ZeroArgFP,
503 def ILD_Fp16m64: FpIf64<(outs RFP64:$dst), (ins i16mem:$src), ZeroArgFP,
505 def ILD_Fp32m64: FpIf64<(outs RFP64:$dst), (ins i32mem:$src), ZeroArgFP,
507 def ILD_Fp64m64: FpIf64<(outs RFP64:$dst), (ins i64mem:$src), ZeroArgFP,
509 def ILD_Fp16m80: FpI_<(outs RFP80:$dst), (ins i16mem:$src), ZeroArgFP,
511 def ILD_Fp32m80: FpI_<(outs RFP80:$dst), (ins i32mem:$src), ZeroArgFP,
513 def ILD_Fp64m80: FpI_<(outs RFP80:$dst), (ins i64mem:$src), ZeroArgFP,
519 def ST_Fp32m : FpIf32<(outs), (ins f32mem:$op, RFP32:$src), OneArgFP,
521 def ST_Fp64m32 : FpIf64<(outs), (ins f32mem:$op, RFP64:$src), OneArgFP,
523 def ST_Fp64m : FpIf64<(outs), (ins f64mem:$op, RFP64:$src), OneArgFP,
525 def ST_Fp80m32 : FpI_<(outs), (ins f32mem:$op, RFP80:$src), OneArgFP,
527 def ST_Fp80m64 : FpI_<(outs), (ins f64mem:$op, RFP80:$src), OneArgFP,
532 def ST_FpP32m : FpIf32<(outs), (ins f32mem:$op, RFP32:$src), OneArgFP, []>;
533 def ST_FpP64m32 : FpIf64<(outs), (ins f32mem:$op, RFP64:$src), OneArgFP, []>;
534 def ST_FpP64m : FpIf64<(outs), (ins f64mem:$op, RFP64:$src), OneArgFP, []>;
535 def ST_FpP80m32 : FpI_<(outs), (ins f32mem:$op, RFP80:$src), OneArgFP, []>;
536 def ST_FpP80m64 : FpI_<(outs), (ins f64mem:$op, RFP80:$src), OneArgFP, []>;
539 def ST_FpP80m : FpI_<(outs), (ins f80mem:$op, RFP80:$src), OneArgFP,
543 def IST_Fp16m32 : FpIf32<(outs), (ins i16mem:$op, RFP32:$src), OneArgFP, []>;
544 def IST_Fp32m32 : FpIf32<(outs), (ins i32mem:$op, RFP32:$src), OneArgFP,
546 def IST_Fp64m32 : FpIf32<(outs), (ins i64mem:$op, RFP32:$src), OneArgFP,
548 def IST_Fp16m64 : FpIf64<(outs), (ins i16mem:$op, RFP64:$src), OneArgFP, []>;
549 def IST_Fp32m64 : FpIf64<(outs), (ins i32mem:$op, RFP64:$src), OneArgFP,
551 def IST_Fp64m64 : FpIf64<(outs), (ins i64mem:$op, RFP64:$src), OneArgFP,
553 def IST_Fp16m80 : FpI_<(outs), (ins i16mem:$op, RFP80:$src), OneArgFP, []>;
554 def IST_Fp32m80 : FpI_<(outs), (ins i32mem:$op, RFP80:$src), OneArgFP,
556 def IST_Fp64m80 : FpI_<(outs), (ins i64mem:$op, RFP80:$src), OneArgFP,
562 def LD_F32m : FPI<0xD9, MRM0m, (outs), (ins f32mem:$src), "fld{s}\t$src">;
563 def LD_F64m : FPI<0xDD, MRM0m, (outs), (ins f64mem:$src), "fld{l}\t$src">;
564 def LD_F80m : FPI<0xDB, MRM5m, (outs), (ins f80mem:$src), "fld{t}\t$src">;
566 def ILD_F16m : FPI<0xDF, MRM0m, (outs), (ins i16mem:$src), "fild{s}\t$src">;
567 def ILD_F32m : FPI<0xDB, MRM0m, (outs), (ins i32mem:$src), "fild{l}\t$src">;
568 def ILD_F64m : FPI<0xDF, MRM5m, (outs), (ins i64mem:$src), "fild{ll}\t$src">;
572 def ST_F32m : FPI<0xD9, MRM2m, (outs), (ins f32mem:$dst), "fst{s}\t$dst">;
573 def ST_F64m : FPI<0xDD, MRM2m, (outs), (ins f64mem:$dst), "fst{l}\t$dst">;
574 def ST_FP32m : FPI<0xD9, MRM3m, (outs), (ins f32mem:$dst), "fstp{s}\t$dst">;
575 def ST_FP64m : FPI<0xDD, MRM3m, (outs), (ins f64mem:$dst), "fstp{l}\t$dst">;
576 def ST_FP80m : FPI<0xDB, MRM7m, (outs), (ins f80mem:$dst), "fstp{t}\t$dst">;
577 def IST_F16m : FPI<0xDF, MRM2m, (outs), (ins i16mem:$dst), "fist{s}\t$dst">;
578 def IST_F32m : FPI<0xDB, MRM2m, (outs), (ins i32mem:$dst), "fist{l}\t$dst">;
579 def IST_FP16m : FPI<0xDF, MRM3m, (outs), (ins i16mem:$dst), "fistp{s}\t$dst">;
580 def IST_FP32m : FPI<0xDB, MRM3m, (outs), (ins i32mem:$dst), "fistp{l}\t$dst">;
581 def IST_FP64m : FPI<0xDF, MRM7m, (outs), (ins i64mem:$dst), "fistp{ll}\t$dst">;
586 def ISTT_Fp16m32 : FpI_<(outs), (ins i16mem:$op, RFP32:$src), OneArgFP,
588 def ISTT_Fp32m32 : FpI_<(outs), (ins i32mem:$op, RFP32:$src), OneArgFP,
590 def ISTT_Fp64m32 : FpI_<(outs), (ins i64mem:$op, RFP32:$src), OneArgFP,
592 def ISTT_Fp16m64 : FpI_<(outs), (ins i16mem:$op, RFP64:$src), OneArgFP,
594 def ISTT_Fp32m64 : FpI_<(outs), (ins i32mem:$op, RFP64:$src), OneArgFP,
596 def ISTT_Fp64m64 : FpI_<(outs), (ins i64mem:$op, RFP64:$src), OneArgFP,
598 def ISTT_Fp16m80 : FpI_<(outs), (ins i16mem:$op, RFP80:$src), OneArgFP,
600 def ISTT_Fp32m80 : FpI_<(outs), (ins i32mem:$op, RFP80:$src), OneArgFP,
602 def ISTT_Fp64m80 : FpI_<(outs), (ins i64mem:$op, RFP80:$src), OneArgFP,
607 def ISTT_FP16m : FPI<0xDF, MRM1m, (outs), (ins i16mem:$dst), "fisttp{s}\t$dst">;
608 def ISTT_FP32m : FPI<0xDB, MRM1m, (outs), (ins i32mem:$dst), "fisttp{l}\t$dst">;
609 def ISTT_FP64m : FPI<0xDD, MRM1m, (outs), (ins i64mem:$dst), "fisttp{ll}\t$dst">;
614 def LD_Frr : FPI<0xD9, MRM0r, (outs), (ins RSTi:$op), "fld\t$op">;
615 def ST_Frr : FPI<0xDD, MRM2r, (outs), (ins RSTi:$op), "fst\t$op">;
616 def ST_FPrr : FPI<0xDD, MRM3r, (outs), (ins RSTi:$op), "fstp\t$op">;
618 def XCH_F : FPI<0xD9, MRM1r, (outs), (ins RSTi:$op), "fxch\t$op">;
623 def LD_Fp032 : FpIf32<(outs RFP32:$dst), (ins), ZeroArgFP,
625 def LD_Fp132 : FpIf32<(outs RFP32:$dst), (ins), ZeroArgFP,
627 def LD_Fp064 : FpIf64<(outs RFP64:$dst), (ins), ZeroArgFP,
629 def LD_Fp164 : FpIf64<(outs RFP64:$dst), (ins), ZeroArgFP,
631 def LD_Fp080 : FpI_<(outs RFP80:$dst), (ins), ZeroArgFP,
633 def LD_Fp180 : FpI_<(outs RFP80:$dst), (ins), ZeroArgFP,
638 def LD_F0 : FPI<0xD9, MRM_EE, (outs), (ins), "fldz">;
641 def LD_F1 : FPI<0xD9, MRM_E8, (outs), (ins), "fld1">;
644 def FLDL2T : I<0xD9, MRM_E9, (outs), (ins), "fldl2t", []>;
645 def FLDL2E : I<0xD9, MRM_EA, (outs), (ins), "fldl2e", []>;
646 def FLDPI : I<0xD9, MRM_EB, (outs), (ins), "fldpi", []>;
647 def FLDLG2 : I<0xD9, MRM_EC, (outs), (ins), "fldlg2", []>;
648 def FLDLN2 : I<0xD9, MRM_ED, (outs), (ins), "fldln2", []>;
653 def UCOM_Fpr32 : FpIf32<(outs), (ins RFP32:$lhs, RFP32:$rhs), CompareFP, []>;
654 def UCOM_Fpr64 : FpIf64<(outs), (ins RFP64:$lhs, RFP64:$rhs), CompareFP, []>;
655 def UCOM_Fpr80 : FpI_ <(outs), (ins RFP80:$lhs, RFP80:$rhs), CompareFP, []>;
656 def COM_Fpr32 : FpIf32<(outs), (ins RFP32:$lhs, RFP32:$rhs), CompareFP, []>;
657 def COM_Fpr64 : FpIf64<(outs), (ins RFP64:$lhs, RFP64:$rhs), CompareFP, []>;
658 def COM_Fpr80 : FpI_ <(outs), (ins RFP80:$lhs, RFP80:$rhs), CompareFP, []>;
665 def UCOM_FpIr32: FpI_<(outs), (ins RFP32:$lhs, RFP32:$rhs), CompareFP,
668 def UCOM_FpIr64: FpI_<(outs), (ins RFP64:$lhs, RFP64:$rhs), CompareFP,
671 def UCOM_FpIr80: FpI_<(outs), (ins RFP80:$lhs, RFP80:$rhs), CompareFP,
674 def COM_FpIr32: FpI_<(outs), (ins RFP32:$lhs, RFP32:$rhs), CompareFP,
677 def COM_FpIr64: FpI_<(outs), (ins RFP64:$lhs, RFP64:$rhs), CompareFP,
680 def COM_FpIr80: FpI_<(outs), (ins RFP80:$lhs, RFP80:$rhs), CompareFP,
687 (outs), (ins RSTi:$reg), "fucom\t$reg">;
689 (outs), (ins RSTi:$reg), "fucomp\t$reg">;
691 (outs), (ins), "fucompp">;
696 (outs), (ins RSTi:$reg), "fucomi\t{$reg, %st|st, $reg}">;
698 (outs), (ins RSTi:$reg), "fucompi\t{$reg, %st|st, $reg}">;
700 def COM_FIr : FPI<0xDB, MRM6r, (outs), (ins RSTi:$reg),
702 def COM_FIPr : FPI<0xDF, MRM6r, (outs), (ins RSTi:$reg),
711 (outs), (ins), "fnstsw\t{%ax|ax}", []>;
714 (outs), (ins i16mem:$dst), "fnstcw\t$dst",
719 (outs), (ins i16mem:$dst), "fldcw\t$dst",
725 def FFREE : FPI<0xDD, MRM0r, (outs), (ins RSTi:$reg), "ffree\t$reg">;
726 def FFREEP : FPI<0xDF, MRM0r, (outs), (ins RSTi:$reg), "ffreep\t$reg">;
729 def FNINIT : I<0xDB, MRM_E3, (outs), (ins), "fninit", []>;
732 def FNCLEX : I<0xDB, MRM_E2, (outs), (ins), "fnclex", []>;
737 def FNOP : I<0xD9, MRM_D0, (outs), (ins), "fnop", []>, Sched<[WriteNop]>;
741 def WAIT : I<0x9B, RawFrm, (outs), (ins), "wait", []>;
742 def FDECSTP : I<0xD9, MRM_F6, (outs), (ins), "fdecstp", []>;
743 def FINCSTP : I<0xD9, MRM_F7, (outs), (ins), "fincstp", []>;
745 def F2XM1 : I<0xD9, MRM_F0, (outs), (ins), "f2xm1", []>;
746 def FYL2X : I<0xD9, MRM_F1, (outs), (ins), "fyl2x", []>;
747 def FPTAN : I<0xD9, MRM_F2, (outs), (ins), "fptan", []>;
748 def FPATAN : I<0xD9, MRM_F3, (outs), (ins), "fpatan", []>;
749 def FXTRACT : I<0xD9, MRM_F4, (outs), (ins), "fxtract", []>;
750 def FPREM1 : I<0xD9, MRM_F5, (outs), (ins), "fprem1", []>;
751 def FPREM : I<0xD9, MRM_F8, (outs), (ins), "fprem", []>;
752 def FYL2XP1 : I<0xD9, MRM_F9, (outs), (ins), "fyl2xp1", []>;
753 def FSIN : I<0xD9, MRM_FE, (outs), (ins), "fsin", []>;
754 def FCOS : I<0xD9, MRM_FF, (outs), (ins), "fcos", []>;
755 def FSINCOS : I<0xD9, MRM_FB, (outs), (ins), "fsincos", []>;
756 def FRNDINT : I<0xD9, MRM_FC, (outs), (ins), "frndint", []>;
757 def FSCALE : I<0xD9, MRM_FD, (outs), (ins), "fscale", []>;
758 def FCOMPP : I<0xDE, MRM_D9, (outs), (ins), "fcompp", []>;
763 def FXSAVE : I<0xAE, MRM0m, (outs), (ins opaquemem:$dst),
766 def FXSAVE64 : RI<0xAE, MRM0m, (outs), (ins opaquemem:$dst),
772 def FXRSTOR : I<0xAE, MRM1m, (outs), (ins opaquemem:$src),
775 def FXRSTOR64 : RI<0xAE, MRM1m, (outs), (ins opaquemem:$src),