Lines Matching refs:Rm

362   let Inst{6-3} = 0b1111; // Rm = pc
421 // ADD <Rm>, sp
433 // ADD sp, <Rm>
434 def tADDspr : T1pIt<(outs GPRsp:$Rdn), (ins GPRsp:$Rn, GPR:$Rm), IIC_iALUr,
435 "add", "\t$Rdn, $Rm", []>,
438 bits<4> Rm;
440 let Inst{6-3} = Rm;
451 def tBX : TI<(outs), (ins GPR:$Rm, pred:$p), IIC_Br, "bx${p}\t$Rm", []>,
454 bits<4> Rm;
455 let Inst{6-3} = Rm;
459 def tBXNS : TI<(outs), (ins GPR:$Rm, pred:$p), IIC_Br, "bxns${p}\t$Rm", []>,
462 bits<4> Rm;
463 let Inst{6-3} = Rm;
474 def tBX_RET_vararg : tPseudoExpand<(outs), (ins tGPR:$Rm, pred:$p),
476 (tBX GPR:$Rm, pred:$p)>, Sched<[WriteBr]>;
841 bits<3> Rm;
843 let Inst{5-3} = Rm;
850 bits<3> Rm;
852 let Inst{5-3} = Rm;
870 bits<3> Rm;
873 let Inst{8-6} = Rm;
882 bits<3> Rm;
883 let Inst{5-3} = Rm;
893 bits<3> Rm;
894 let Inst{5-3} = Rm;
910 T1sItDPEncode<0b0101, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm), IIC_iALUr,
911 "adc", "\t$Rdn, $Rm",
912 [(set tGPR:$Rdn, (adde tGPR:$Rn, tGPR:$Rm))]>, Sched<[WriteALU]>;
916 T1sIGenEncodeImm<0b01110, (outs tGPR:$Rd), (ins tGPR:$Rm, imm0_7:$imm3),
918 "add", "\t$Rd, $Rm, $imm3",
919 [(set tGPR:$Rd, (add tGPR:$Rm, imm0_7:$imm3))]>,
935 T1sIGenEncode<0b01100, (outs tGPR:$Rd), (ins tGPR:$Rn, tGPR:$Rm),
937 "add", "\t$Rd, $Rn, $Rm",
938 [(set tGPR:$Rd, (add tGPR:$Rn, tGPR:$Rm))]>, Sched<[WriteALU]>;
941 def tADDhirr : T1pIt<(outs GPR:$Rdn), (ins GPR:$Rn, GPR:$Rm), IIC_iALUr,
942 "add", "\t$Rdn, $Rm", []>,
946 bits<4> Rm;
948 let Inst{6-3} = Rm;
955 T1sItDPEncode<0b0000, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
957 "and", "\t$Rdn, $Rm",
958 [(set tGPR:$Rdn, (and tGPR:$Rn, tGPR:$Rm))]>, Sched<[WriteALU]>;
962 T1sIGenEncodeImm<{0,1,0,?,?}, (outs tGPR:$Rd), (ins tGPR:$Rm, imm_sr:$imm5),
964 "asr", "\t$Rd, $Rm, $imm5",
965 [(set tGPR:$Rd, (sra tGPR:$Rm, (i32 imm_sr:$imm5)))]>,
973 T1sItDPEncode<0b0100, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
975 "asr", "\t$Rdn, $Rm",
976 [(set tGPR:$Rdn, (sra tGPR:$Rn, tGPR:$Rm))]>, Sched<[WriteALU]>;
980 T1sItDPEncode<0b1110, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
982 "bic", "\t$Rdn, $Rm",
983 [(set tGPR:$Rdn, (and tGPR:$Rn, (not tGPR:$Rm)))]>,
997 T1pIDPEncode<0b1011, (outs), (ins tGPR:$Rn, tGPR:$Rm),
999 "cmn", "\t$Rn, $Rm",
1000 [(ARMcmpZ tGPR:$Rn, (ineg tGPR:$Rm))]>, Sched<[WriteCMP]>;
1019 T1pIDPEncode<0b1010, (outs), (ins tGPR:$Rn, tGPR:$Rm),
1021 "cmp", "\t$Rn, $Rm",
1022 [(ARMcmp tGPR:$Rn, tGPR:$Rm)]>, Sched<[WriteCMP]>;
1024 def tCMPhir : T1pI<(outs), (ins GPR:$Rn, GPR:$Rm), IIC_iCMPr,
1025 "cmp", "\t$Rn, $Rm", []>,
1028 bits<4> Rm;
1031 let Inst{6-3} = Rm;
1040 T1sItDPEncode<0b0001, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
1042 "eor", "\t$Rdn, $Rm",
1043 [(set tGPR:$Rdn, (xor tGPR:$Rn, tGPR:$Rm))]>, Sched<[WriteALU]>;
1047 T1sIGenEncodeImm<{0,0,0,?,?}, (outs tGPR:$Rd), (ins tGPR:$Rm, imm0_31:$imm5),
1049 "lsl", "\t$Rd, $Rm, $imm5",
1050 [(set tGPR:$Rd, (shl tGPR:$Rm, (i32 imm:$imm5)))]>,
1058 T1sItDPEncode<0b0010, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
1060 "lsl", "\t$Rdn, $Rm",
1061 [(set tGPR:$Rdn, (shl tGPR:$Rn, tGPR:$Rm))]>, Sched<[WriteALU]>;
1065 T1sIGenEncodeImm<{0,0,1,?,?}, (outs tGPR:$Rd), (ins tGPR:$Rm, imm_sr:$imm5),
1067 "lsr", "\t$Rd, $Rm, $imm5",
1068 [(set tGPR:$Rd, (srl tGPR:$Rm, (i32 imm_sr:$imm5)))]>,
1076 T1sItDPEncode<0b0011, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
1078 "lsr", "\t$Rdn, $Rm",
1079 [(set tGPR:$Rdn, (srl tGPR:$Rn, tGPR:$Rm))]>, Sched<[WriteALU]>;
1101 def tMOVr : Thumb1pI<(outs GPR:$Rd), (ins GPR:$Rm), AddrModeNone,
1103 "mov", "\t$Rd, $Rm", "", []>,
1107 bits<4> Rm;
1109 let Inst{6-3} = Rm;
1113 def tMOVSr : T1I<(outs tGPR:$Rd), (ins tGPR:$Rm), IIC_iMOVr,
1114 "movs\t$Rd, $Rm", []>, Encoding16, Sched<[WriteALU]> {
1117 bits<3> Rm;
1119 let Inst{5-3} = Rm;
1127 Thumb1sI<(outs tGPR:$Rd), (ins tGPR:$Rn, tGPR:$Rm), AddrModeNone, 2,
1128 IIC_iMUL32, "mul", "\t$Rd, $Rn, $Rm", "$Rm = $Rd",
1129 [(set tGPR:$Rd, (mul tGPR:$Rn, tGPR:$Rm))]>,
1150 T1sItDPEncode<0b1100, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
1152 "orr", "\t$Rdn, $Rm",
1153 [(set tGPR:$Rdn, (or tGPR:$Rn, tGPR:$Rm))]>, Sched<[WriteALU]>;
1157 T1pIMiscEncode<{1,0,1,0,0,0,?}, (outs tGPR:$Rd), (ins tGPR:$Rm),
1159 "rev", "\t$Rd, $Rm",
1160 [(set tGPR:$Rd, (bswap tGPR:$Rm))]>,
1164 T1pIMiscEncode<{1,0,1,0,0,1,?}, (outs tGPR:$Rd), (ins tGPR:$Rm),
1166 "rev16", "\t$Rd, $Rm",
1167 [(set tGPR:$Rd, (rotr (bswap tGPR:$Rm), (i32 16)))]>,
1171 T1pIMiscEncode<{1,0,1,0,1,1,?}, (outs tGPR:$Rd), (ins tGPR:$Rm),
1173 "revsh", "\t$Rd, $Rm",
1174 [(set tGPR:$Rd, (sra (bswap tGPR:$Rm), (i32 16)))]>,
1179 T1sItDPEncode<0b0111, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
1181 "ror", "\t$Rdn, $Rm",
1182 [(set tGPR:$Rdn, (rotr tGPR:$Rn, tGPR:$Rm))]>,
1195 T1sItDPEncode<0b0110, (outs tGPR:$Rdn), (ins tGPR:$Rn, tGPR:$Rm),
1197 "sbc", "\t$Rdn, $Rm",
1198 [(set tGPR:$Rdn, (sube tGPR:$Rn, tGPR:$Rm))]>,
1203 T1sIGenEncodeImm<0b01111, (outs tGPR:$Rd), (ins tGPR:$Rm, imm0_7:$imm3),
1205 "sub", "\t$Rd, $Rm, $imm3",
1206 [(set tGPR:$Rd, (add tGPR:$Rm, imm0_7_neg:$imm3))]>,
1221 T1sIGenEncode<0b01101, (outs tGPR:$Rd), (ins tGPR:$Rn, tGPR:$Rm),
1223 "sub", "\t$Rd, $Rn, $Rm",
1224 [(set tGPR:$Rd, (sub tGPR:$Rn, tGPR:$Rm))]>,
1229 T1pIMiscEncode<{0,0,1,0,0,1,?}, (outs tGPR:$Rd), (ins tGPR:$Rm),
1231 "sxtb", "\t$Rd, $Rm",
1232 [(set tGPR:$Rd, (sext_inreg tGPR:$Rm, i8))]>,
1238 T1pIMiscEncode<{0,0,1,0,0,0,?}, (outs tGPR:$Rd), (ins tGPR:$Rm),
1240 "sxth", "\t$Rd, $Rm",
1241 [(set tGPR:$Rd, (sext_inreg tGPR:$Rm, i16))]>,
1248 T1pIDPEncode<0b1000, (outs), (ins tGPR:$Rn, tGPR:$Rm), IIC_iTSTr,
1249 "tst", "\t$Rn, $Rm",
1250 [(ARMcmpZ (and_su tGPR:$Rn, tGPR:$Rm), 0)]>,
1264 T1pIMiscEncode<{0,0,1,0,1,1,?}, (outs tGPR:$Rd), (ins tGPR:$Rm),
1266 "uxtb", "\t$Rd, $Rm",
1267 [(set tGPR:$Rd, (and tGPR:$Rm, 0xFF))]>,
1273 T1pIMiscEncode<{0,0,1,0,1,0,?}, (outs tGPR:$Rd), (ins tGPR:$Rm),
1275 "uxth", "\t$Rd, $Rm",
1276 [(set tGPR:$Rd, (and tGPR:$Rm, 0xFFFF))]>,
1365 def : T1Pat<(ARMcmpZ tGPR:$Rn, tGPR:$Rm),
1366 (tCMPr tGPR:$Rn, tGPR:$Rm)>;
1535 // Indirect branch using "mov pc, $Rm"
1537 def tBRIND : tPseudoExpand<(outs), (ins GPR:$Rm, pred:$p),
1538 2, IIC_Br, [(brind GPR:$Rm)],
1539 (tMOVr PC, GPR:$Rm, pred:$p)>, Sched<[WriteBr]>;
1556 def : tInstAlias<"neg${s}${p} $Rd, $Rm",
1557 (tRSB tGPR:$Rd, s_cc_out:$s, tGPR:$Rm, pred:$p)>;