• Home
  • Raw
  • Download

Lines Matching refs:rS

255 def STDCX : XForm_1<31, 214, (outs), (ins g8rc:$rS, memrr:$dst),
256 "stdcx. $rS, $dst", IIC_LdStSTDCX, []>, isDOT;
259 def STDAT : X_RD5_RS5_IM5<31, 742, (outs), (ins g8rc:$rS, g8rc:$rA, u5imm:$FC),
260 "stdat $rS, $rA, $FC", IIC_LdStStore>, isPPC64,
322 def MTCRF8 : XFXForm_5<31, 144, (outs), (ins i32imm:$FXM, g8rc:$rS),
323 "mtcrf $FXM, $rS", IIC_BrMCRX>,
370 let Pattern = [(PPCmtctr i64:$rS)], Defs = [CTR8] in {
371 def MTCTR8 : XFXForm_7_ext<31, 467, 9, (outs), (ins g8rc:$rS),
372 "mtctr $rS", IIC_SprMTSPR>,
376 let Pattern = [(int_ppc_mtctr i64:$rS)] in
377 def MTCTR8loop : XFXForm_7_ext<31, 467, 9, (outs), (ins g8rc:$rS),
378 "mtctr $rS", IIC_SprMTSPR>,
399 def MTLR8 : XFXForm_7_ext<31, 467, 8, (outs), (ins g8rc:$rS),
400 "mtlr $rS", IIC_SprMTSPR>,
430 defm NAND8: XForm_6r<31, 476, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
431 "nand", "$rA, $rS, $rB", IIC_IntSimple,
432 [(set i64:$rA, (not (and i64:$rS, i64:$rB)))]>;
433 defm AND8 : XForm_6r<31, 28, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
434 "and", "$rA, $rS, $rB", IIC_IntSimple,
435 [(set i64:$rA, (and i64:$rS, i64:$rB))]>;
437 defm ANDC8: XForm_6r<31, 60, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
438 "andc", "$rA, $rS, $rB", IIC_IntSimple,
439 [(set i64:$rA, (and i64:$rS, (not i64:$rB)))]>;
441 defm OR8 : XForm_6r<31, 444, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
442 "or", "$rA, $rS, $rB", IIC_IntSimple,
443 [(set i64:$rA, (or i64:$rS, i64:$rB))]>;
444 defm NOR8 : XForm_6r<31, 124, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
445 "nor", "$rA, $rS, $rB", IIC_IntSimple,
446 [(set i64:$rA, (not (or i64:$rS, i64:$rB)))]>;
448 defm ORC8 : XForm_6r<31, 412, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
449 "orc", "$rA, $rS, $rB", IIC_IntSimple,
450 [(set i64:$rA, (or i64:$rS, (not i64:$rB)))]>;
452 defm EQV8 : XForm_6r<31, 284, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
453 "eqv", "$rA, $rS, $rB", IIC_IntSimple,
454 [(set i64:$rA, (not (xor i64:$rS, i64:$rB)))]>;
455 defm XOR8 : XForm_6r<31, 316, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
456 "xor", "$rA, $rS, $rB", IIC_IntSimple,
457 [(set i64:$rA, (xor i64:$rS, i64:$rB))]>;
590 defm SLD : XForm_6r<31, 27, (outs g8rc:$rA), (ins g8rc:$rS, gprc:$rB),
591 "sld", "$rA, $rS, $rB", IIC_IntRotateD,
592 [(set i64:$rA, (PPCshl i64:$rS, i32:$rB))]>, isPPC64;
593 defm SRD : XForm_6r<31, 539, (outs g8rc:$rA), (ins g8rc:$rS, gprc:$rB),
594 "srd", "$rA, $rS, $rB", IIC_IntRotateD,
595 [(set i64:$rA, (PPCsrl i64:$rS, i32:$rB))]>, isPPC64;
596 defm SRAD : XForm_6rc<31, 794, (outs g8rc:$rA), (ins g8rc:$rS, gprc:$rB),
597 "srad", "$rA, $rS, $rB", IIC_IntRotateD,
598 [(set i64:$rA, (PPCsra i64:$rS, i32:$rB))]>, isPPC64;
601 defm CNTLZW8 : XForm_11r<31, 26, (outs g8rc:$rA), (ins g8rc:$rS),
602 "cntlzw", "$rA, $rS", IIC_IntGeneral, []>;
603 defm CNTTZW8 : XForm_11r<31, 538, (outs g8rc:$rA), (ins g8rc:$rS),
604 "cnttzw", "$rA, $rS", IIC_IntGeneral, []>,
607 defm EXTSB8 : XForm_11r<31, 954, (outs g8rc:$rA), (ins g8rc:$rS),
608 "extsb", "$rA, $rS", IIC_IntSimple,
609 [(set i64:$rA, (sext_inreg i64:$rS, i8))]>;
610 defm EXTSH8 : XForm_11r<31, 922, (outs g8rc:$rA), (ins g8rc:$rS),
611 "extsh", "$rA, $rS", IIC_IntSimple,
612 [(set i64:$rA, (sext_inreg i64:$rS, i16))]>;
614 defm SLW8 : XForm_6r<31, 24, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
615 "slw", "$rA, $rS, $rB", IIC_IntGeneral, []>;
616 defm SRW8 : XForm_6r<31, 536, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
617 "srw", "$rA, $rS, $rB", IIC_IntGeneral, []>;
622 def EXTSB8_32_64 : XForm_11<31, 954, (outs g8rc:$rA), (ins gprc:$rS),
623 "extsb $rA, $rS", IIC_IntSimple, []>, isPPC64;
624 def EXTSH8_32_64 : XForm_11<31, 922, (outs g8rc:$rA), (ins gprc:$rS),
625 "extsh $rA, $rS", IIC_IntSimple, []>, isPPC64;
628 defm EXTSW : XForm_11r<31, 986, (outs g8rc:$rA), (ins g8rc:$rS),
629 "extsw", "$rA, $rS", IIC_IntSimple,
630 [(set i64:$rA, (sext_inreg i64:$rS, i32))]>, isPPC64;
632 defm EXTSW_32_64 : XForm_11r<31, 986, (outs g8rc:$rA), (ins gprc:$rS),
633 "extsw", "$rA, $rS", IIC_IntSimple,
634 [(set i64:$rA, (sext i32:$rS))]>, isPPC64;
636 defm SRADI : XSForm_1rc<31, 413, (outs g8rc:$rA), (ins g8rc:$rS, u6imm:$SH),
637 "sradi", "$rA, $rS, $SH", IIC_IntRotateDI,
638 [(set i64:$rA, (sra i64:$rS, (i32 imm:$SH)))]>, isPPC64;
639 defm CNTLZD : XForm_11r<31, 58, (outs g8rc:$rA), (ins g8rc:$rS),
640 "cntlzd", "$rA, $rS", IIC_IntGeneral,
641 [(set i64:$rA, (ctlz i64:$rS))]>;
642 defm CNTTZD : XForm_11r<31, 570, (outs g8rc:$rA), (ins g8rc:$rS),
643 "cnttzd", "$rA, $rS", IIC_IntGeneral,
644 [(set i64:$rA, (cttz i64:$rS))]>, Requires<[IsISA3_0]>;
645 def POPCNTD : XForm_11<31, 506, (outs g8rc:$rA), (ins g8rc:$rS),
646 "popcntd $rA, $rS", IIC_IntGeneral,
647 [(set i64:$rA, (ctpop i64:$rS))]>;
648 def BPERMD : XForm_6<31, 252, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
649 "bpermd $rA, $rS, $rB", IIC_IntGeneral,
650 [(set i64:$rA, (int_ppc_bpermd g8rc:$rS, g8rc:$rB))]>,
654 def CMPB8 : XForm_6<31, 508, (outs g8rc:$rA), (ins g8rc:$rS, g8rc:$rB),
655 "cmpb $rA, $rS, $rB", IIC_IntGeneral,
656 [(set i64:$rA, (PPCcmpb i64:$rS, i64:$rB))]>;
661 def POPCNTW : XForm_11<31, 378, (outs gprc:$rA), (ins gprc:$rS),
662 "popcntw $rA, $rS", IIC_IntGeneral,
663 [(set i32:$rA, (ctpop i32:$rS))]>;
701 (ins g8rc:$rSi, g8rc:$rS, u6imm:$SH, u6imm:$MBE),
702 "rldimi", "$rA, $rS, $SH, $MBE", IIC_IntRotateDI,
708 (outs g8rc:$rA), (ins g8rc:$rS, gprc:$rB, u6imm:$MBE),
709 "rldcl", "$rA, $rS, $rB, $MBE", IIC_IntRotateD,
712 (outs g8rc:$rA), (ins g8rc:$rS, gprc:$rB, u6imm:$MBE),
713 "rldcr", "$rA, $rS, $rB, $MBE", IIC_IntRotateD,
716 (outs g8rc:$rA), (ins g8rc:$rS, u6imm:$SH, u6imm:$MBE),
717 "rldicl", "$rA, $rS, $SH, $MBE", IIC_IntRotateDI,
723 (ins gprc:$rS, u6imm:$SH, u6imm:$MBE),
724 "rldicl $rA, $rS, $SH, $MBE", IIC_IntRotateDI,
728 (outs g8rc:$rA), (ins g8rc:$rS, u6imm:$SH, u6imm:$MBE),
729 "rldicr", "$rA, $rS, $SH, $MBE", IIC_IntRotateDI,
732 (outs g8rc:$rA), (ins g8rc:$rS, u6imm:$SH, u6imm:$MBE),
733 "rldic", "$rA, $rS, $SH, $MBE", IIC_IntRotateDI,
738 (ins g8rc:$rS, u5imm:$SH, u5imm:$MB, u5imm:$ME),
739 "rlwinm", "$rA, $rS, $SH, $MB, $ME", IIC_IntGeneral,
743 (ins g8rc:$rS, g8rc:$rB, u5imm:$MB, u5imm:$ME),
744 "rlwnm", "$rA, $rS, $rB, $MB, $ME", IIC_IntGeneral,
750 (ins g8rc:$rSi, g8rc:$rS, u5imm:$SH, u5imm:$MB,
751 u5imm:$ME), "rlwimi", "$rA, $rS, $SH, $MB, $ME",
1045 def STB8 : DForm_1<38, (outs), (ins g8rc:$rS, memri:$src),
1046 "stb $rS, $src", IIC_LdStStore,
1047 [(truncstorei8 i64:$rS, iaddr:$src)]>;
1048 def STH8 : DForm_1<44, (outs), (ins g8rc:$rS, memri:$src),
1049 "sth $rS, $src", IIC_LdStStore,
1050 [(truncstorei16 i64:$rS, iaddr:$src)]>;
1051 def STW8 : DForm_1<36, (outs), (ins g8rc:$rS, memri:$src),
1052 "stw $rS, $src", IIC_LdStStore,
1053 [(truncstorei32 i64:$rS, iaddr:$src)]>;
1054 def STBX8 : XForm_8<31, 215, (outs), (ins g8rc:$rS, memrr:$dst),
1055 "stbx $rS, $dst", IIC_LdStStore,
1056 [(truncstorei8 i64:$rS, xaddr:$dst)]>,
1058 def STHX8 : XForm_8<31, 407, (outs), (ins g8rc:$rS, memrr:$dst),
1059 "sthx $rS, $dst", IIC_LdStStore,
1060 [(truncstorei16 i64:$rS, xaddr:$dst)]>,
1062 def STWX8 : XForm_8<31, 151, (outs), (ins g8rc:$rS, memrr:$dst),
1063 "stwx $rS, $dst", IIC_LdStStore,
1064 [(truncstorei32 i64:$rS, xaddr:$dst)]>,
1069 def STD : DSForm_1<62, 0, (outs), (ins g8rc:$rS, memrix:$dst),
1070 "std $rS, $dst", IIC_LdStSTD,
1071 [(aligned4store i64:$rS, ixaddr:$dst)]>, isPPC64;
1072 def STDX : XForm_8<31, 149, (outs), (ins g8rc:$rS, memrr:$dst),
1073 "stdx $rS, $dst", IIC_LdStSTD,
1074 [(store i64:$rS, xaddr:$dst)]>, isPPC64,
1076 def STDBRX: XForm_8<31, 660, (outs), (ins g8rc:$rS, memrr:$dst),
1077 "stdbrx $rS, $dst", IIC_LdStStore,
1078 [(PPCstbrx i64:$rS, xoaddr:$dst, i64)]>, isPPC64,
1085 def STBU8 : DForm_1<39, (outs ptr_rc_nor0:$ea_res), (ins g8rc:$rS, memri:$dst),
1086 "stbu $rS, $dst", IIC_LdStStoreUpd, []>,
1088 def STHU8 : DForm_1<45, (outs ptr_rc_nor0:$ea_res), (ins g8rc:$rS, memri:$dst),
1089 "sthu $rS, $dst", IIC_LdStStoreUpd, []>,
1091 def STWU8 : DForm_1<37, (outs ptr_rc_nor0:$ea_res), (ins g8rc:$rS, memri:$dst),
1092 "stwu $rS, $dst", IIC_LdStStoreUpd, []>,
1095 def STBUX8: XForm_8<31, 247, (outs ptr_rc_nor0:$ea_res), (ins g8rc:$rS, memrr:$dst),
1096 "stbux $rS, $dst", IIC_LdStStoreUpd, []>,
1099 def STHUX8: XForm_8<31, 439, (outs ptr_rc_nor0:$ea_res), (ins g8rc:$rS, memrr:$dst),
1100 "sthux $rS, $dst", IIC_LdStStoreUpd, []>,
1103 def STWUX8: XForm_8<31, 183, (outs ptr_rc_nor0:$ea_res), (ins g8rc:$rS, memrr:$dst),
1104 "stwux $rS, $dst", IIC_LdStStoreUpd, []>,
1109 def STDU : DSForm_1<62, 1, (outs ptr_rc_nor0:$ea_res), (ins g8rc:$rS, memrix:$dst),
1110 "stdu $rS, $dst", IIC_LdStSTDU, []>,
1114 def STDUX : XForm_8<31, 181, (outs ptr_rc_nor0:$ea_res), (ins g8rc:$rS, memrr:$dst),
1115 "stdux $rS, $dst", IIC_LdStSTDUX, []>,
1123 def : Pat<(pre_truncsti8 i64:$rS, iPTR:$ptrreg, iaddroff:$ptroff),
1124 (STBU8 $rS, iaddroff:$ptroff, $ptrreg)>;
1125 def : Pat<(pre_truncsti16 i64:$rS, iPTR:$ptrreg, iaddroff:$ptroff),
1126 (STHU8 $rS, iaddroff:$ptroff, $ptrreg)>;
1127 def : Pat<(pre_truncsti32 i64:$rS, iPTR:$ptrreg, iaddroff:$ptroff),
1128 (STWU8 $rS, iaddroff:$ptroff, $ptrreg)>;
1129 def : Pat<(aligned4pre_store i64:$rS, iPTR:$ptrreg, iaddroff:$ptroff),
1130 (STDU $rS, iaddroff:$ptroff, $ptrreg)>;
1132 def : Pat<(pre_truncsti8 i64:$rS, iPTR:$ptrreg, iPTR:$ptroff),
1133 (STBUX8 $rS, $ptrreg, $ptroff)>;
1134 def : Pat<(pre_truncsti16 i64:$rS, iPTR:$ptrreg, iPTR:$ptroff),
1135 (STHUX8 $rS, $ptrreg, $ptroff)>;
1136 def : Pat<(pre_truncsti32 i64:$rS, iPTR:$ptrreg, iPTR:$ptroff),
1137 (STWUX8 $rS, $ptrreg, $ptroff)>;
1138 def : Pat<(pre_store i64:$rS, iPTR:$ptrreg, iPTR:$ptroff),
1139 (STDUX $rS, $ptrreg, $ptroff)>;
1223 def : Pat<(sra i64:$rS, i32:$rB),
1224 (SRAD $rS, $rB)>;
1225 def : Pat<(srl i64:$rS, i32:$rB),
1226 (SRD $rS, $rB)>;
1227 def : Pat<(shl i64:$rS, i32:$rB),
1228 (SLD $rS, $rB)>;
1270 def : Pat<(unaligned4store i64:$rS, xoaddr:$dst),
1271 (STDX $rS, xoaddr:$dst)>;