Lines Matching refs:GPR64

78   def ATOMIC_LOAD_ADD_I64  : Atomic2Ops<atomic_load_add_64, GPR64>;
79 def ATOMIC_LOAD_SUB_I64 : Atomic2Ops<atomic_load_sub_64, GPR64>;
80 def ATOMIC_LOAD_AND_I64 : Atomic2Ops<atomic_load_and_64, GPR64>;
81 def ATOMIC_LOAD_OR_I64 : Atomic2Ops<atomic_load_or_64, GPR64>;
82 def ATOMIC_LOAD_XOR_I64 : Atomic2Ops<atomic_load_xor_64, GPR64>;
83 def ATOMIC_LOAD_NAND_I64 : Atomic2Ops<atomic_load_nand_64, GPR64>;
84 def ATOMIC_SWAP_I64 : Atomic2Ops<atomic_swap_64, GPR64>;
85 def ATOMIC_CMP_SWAP_I64 : AtomicCmpSwap<atomic_cmp_swap_64, GPR64>;
86 def ATOMIC_LOAD_MIN_I64 : Atomic2Ops<atomic_load_min_64, GPR64>;
87 def ATOMIC_LOAD_MAX_I64 : Atomic2Ops<atomic_load_max_64, GPR64>;
88 def ATOMIC_LOAD_UMIN_I64 : Atomic2Ops<atomic_load_umin_64, GPR64>;
89 def ATOMIC_LOAD_UMAX_I64 : Atomic2Ops<atomic_load_umax_64, GPR64>;
92 def ATOMIC_LOAD_ADD_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
93 def ATOMIC_LOAD_SUB_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
94 def ATOMIC_LOAD_AND_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
95 def ATOMIC_LOAD_OR_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
96 def ATOMIC_LOAD_XOR_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
97 def ATOMIC_LOAD_NAND_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
99 def ATOMIC_SWAP_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
101 def ATOMIC_CMP_SWAP_I64_POSTRA : AtomicCmpSwapPostRA<GPR64>;
103 def ATOMIC_LOAD_MIN_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
104 def ATOMIC_LOAD_MAX_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
105 def ATOMIC_LOAD_UMIN_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
106 def ATOMIC_LOAD_UMAX_I64_POSTRA : Atomic2OpsPostRA<GPR64>;
337 def PseudoMFHI64 : PseudoMFLOHI<GPR64, ACC128, MipsMFHI>,
339 def PseudoMFLO64 : PseudoMFLOHI<GPR64, ACC128, MipsMFLO>,
341 def PseudoMTLOHI64 : PseudoMTLOHI<ACC128, GPR64>, ISA_MIPS3_NOT_32R6_64R6;
415 def DSLL64_32 : FR<0x00, 0x3c, (outs GPR64:$rd), (ins GPR32:$rt),
418 def SLL64_32 : FR<0x0, 0x00, (outs GPR64:$rd), (ins GPR32:$rt),
420 def SLL64_64 : FR<0x0, 0x00, (outs GPR64:$rd), (ins GPR64:$rt),
705 def : MipsPat<(add GPR64:$hi, (MipsHigher (i64 tglobaladdr:$lo))),
706 (DADDiu GPR64:$hi, tglobaladdr:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
707 def : MipsPat<(add GPR64:$hi, (MipsHigher (i64 tblockaddress:$lo))),
708 (DADDiu GPR64:$hi, tblockaddress:$lo)>, ISA_MIPS3, GPR_64,
710 def : MipsPat<(add GPR64:$hi, (MipsHigher (i64 tjumptable:$lo))),
711 (DADDiu GPR64:$hi, tjumptable:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
712 def : MipsPat<(add GPR64:$hi, (MipsHigher (i64 tconstpool:$lo))),
713 (DADDiu GPR64:$hi, tconstpool:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
714 def : MipsPat<(add GPR64:$hi, (MipsHigher (i64 texternalsym:$lo))),
715 (DADDiu GPR64:$hi, texternalsym:$lo)>,
729 def : MipsPat<(add GPR64:$hi, (MipsHi (i64 tglobaladdr:$lo))),
730 (DADDiu GPR64:$hi, tglobaladdr:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
731 def : MipsPat<(add GPR64:$hi, (MipsHi (i64 tblockaddress:$lo))),
732 (DADDiu GPR64:$hi, tblockaddress:$lo)>, ISA_MIPS3, GPR_64,
734 def : MipsPat<(add GPR64:$hi, (MipsHi (i64 tjumptable:$lo))),
735 (DADDiu GPR64:$hi, tjumptable:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
736 def : MipsPat<(add GPR64:$hi, (MipsHi (i64 tconstpool:$lo))),
737 (DADDiu GPR64:$hi, tconstpool:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
738 def : MipsPat<(add GPR64:$hi, (MipsHi (i64 texternalsym:$lo))),
739 (DADDiu GPR64:$hi, texternalsym:$lo)>,
756 def : MipsPat<(add GPR64:$hi, (MipsLo (i64 tglobaladdr:$lo))),
757 (DADDiu GPR64:$hi, tglobaladdr:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
758 def : MipsPat<(add GPR64:$hi, (MipsLo (i64 tblockaddress:$lo))),
759 (DADDiu GPR64:$hi, tblockaddress:$lo)>, ISA_MIPS3, GPR_64,
761 def : MipsPat<(add GPR64:$hi, (MipsLo (i64 tjumptable:$lo))),
762 (DADDiu GPR64:$hi, tjumptable:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
763 def : MipsPat<(add GPR64:$hi, (MipsLo (i64 tconstpool:$lo))),
764 (DADDiu GPR64:$hi, tconstpool:$lo)>, ISA_MIPS3, GPR_64, SYM_64;
765 def : MipsPat<(add GPR64:$hi, (MipsLo (i64 tglobaltlsaddr:$lo))),
766 (DADDiu GPR64:$hi, tglobaltlsaddr:$lo)>, ISA_MIPS3, GPR_64,
768 def : MipsPat<(add GPR64:$hi, (MipsLo (i64 texternalsym:$lo))),
769 (DADDiu GPR64:$hi, texternalsym:$lo)>,
774 def : MipsPat<(add GPR64:$gp, (MipsGPRel tglobaladdr:$in)),
775 (DADDiu GPR64:$gp, tglobaladdr:$in)>, ISA_MIPS3, ABI_N64;
776 def : MipsPat<(add GPR64:$gp, (MipsGPRel tconstpool:$in)),
777 (DADDiu GPR64:$gp, tconstpool:$in)>, ISA_MIPS3, ABI_N64;
779 def : WrapperPat<tglobaladdr, DADDiu, GPR64>, ISA_MIPS3, GPR_64;
780 def : WrapperPat<tconstpool, DADDiu, GPR64>, ISA_MIPS3, GPR_64;
781 def : WrapperPat<texternalsym, DADDiu, GPR64>, ISA_MIPS3, GPR_64;
782 def : WrapperPat<tblockaddress, DADDiu, GPR64>, ISA_MIPS3, GPR_64;
783 def : WrapperPat<tjumptable, DADDiu, GPR64>, ISA_MIPS3, GPR_64;
784 def : WrapperPat<tglobaltlsaddr, DADDiu, GPR64>, ISA_MIPS3, GPR_64;
787 defm : BrcondPats<GPR64, BEQ64, BEQ, BNE64, SLT64, SLTu64, SLTi64, SLTiu64,
796 defm : SeteqPats<GPR64, SLTiu64, XOR64, SLTu64, ZERO_64>, ISA_MIPS3, GPR_64;
797 defm : SetlePats<GPR64, XORi, SLT64, SLTu64>, ISA_MIPS3, GPR_64;
798 defm : SetgtPats<GPR64, SLT64, SLTu64>, ISA_MIPS3, GPR_64;
799 defm : SetgePats<GPR64, XORi, SLT64, SLTu64>, ISA_MIPS3, GPR_64;
800 defm : SetgeImmPats<GPR64, XORi, SLTi64, SLTiu64>, ISA_MIPS3, GPR_64;
803 def : MipsPat<(trunc (assertsext GPR64:$src)),
804 (EXTRACT_SUBREG GPR64:$src, sub_32)>, ISA_MIPS3, GPR_64;
815 def : MipsPat<(trunc (assertzext_lt_i32 GPR64:$src)),
816 (EXTRACT_SUBREG GPR64:$src, sub_32)>, ISA_MIPS3, GPR_64;
817 def : MipsPat<(i32 (trunc GPR64:$src)),
818 (SLL (EXTRACT_SUBREG GPR64:$src, sub_32), 0)>, ISA_MIPS3, GPR_64;
821 def : MipsPat<(shl GPR64:$rt, (i32 (trunc GPR64:$rs))),
822 (DSLLV GPR64:$rt, (EXTRACT_SUBREG GPR64:$rs, sub_32))>,
824 def : MipsPat<(srl GPR64:$rt, (i32 (trunc GPR64:$rs))),
825 (DSRLV GPR64:$rt, (EXTRACT_SUBREG GPR64:$rs, sub_32))>,
827 def : MipsPat<(sra GPR64:$rt, (i32 (trunc GPR64:$rs))),
828 (DSRAV GPR64:$rt, (EXTRACT_SUBREG GPR64:$rs, sub_32))>,
830 def : MipsPat<(rotr GPR64:$rt, (i32 (trunc GPR64:$rs))),
831 (DROTRV GPR64:$rt, (EXTRACT_SUBREG GPR64:$rs, sub_32))>,
852 def : MipsPat<(i64 (sext_inreg GPR64:$src, i32)),
853 (SLL64_64 GPR64:$src)>, ISA_MIPS3, GPR_64;
856 def : MipsPat<(bswap GPR64:$rt), (DSHD (DSBH GPR64:$rt))>, ISA_MIPS64R2;
860 def : MipsPat<(subc GPR64:$lhs, GPR64:$rhs),
861 (DSUBu GPR64:$lhs, GPR64:$rhs)>, ISA_MIPS3, GPR_64;
862 def : MipsPat<(addc GPR64:$lhs, GPR64:$rhs),
863 (DADDu GPR64:$lhs, GPR64:$rhs)>, ISA_MIPS3, ASE_NOT_DSP, GPR_64;
864 def : MipsPat<(addc GPR64:$lhs, immSExt16:$imm),
865 (DADDiu GPR64:$lhs, imm:$imm)>, ISA_MIPS3, ASE_NOT_DSP, GPR_64;
897 def : MipsPat<(atomic_store_8 addr:$a, GPR64:$v), (SB64 GPR64:$v, addr:$a)>,
899 def : MipsPat<(atomic_store_16 addr:$a, GPR64:$v), (SH64 GPR64:$v, addr:$a)>,
901 def : MipsPat<(atomic_store_32 addr:$a, GPR64:$v), (SW64 GPR64:$v, addr:$a)>,
903 def : MipsPat<(atomic_store_64 addr:$a, GPR64:$v), (SD GPR64:$v, addr:$a)>,