• Home
  • Raw
  • Download

Lines Matching refs:Rm

264   let MIOperandInfo = (ops GPR:$Rn, rGPR:$Rm);
270 let MIOperandInfo = (ops GPR:$Rn, rGPR:$Rm);
360 bits<4> Rm;
363 let Inst{3-0} = Rm;
370 bits<4> Rm;
373 let Inst{3-0} = Rm;
380 bits<4> Rm;
383 let Inst{3-0} = Rm;
419 bits<4> Rm;
423 let Inst{3-0} = Rm;
432 bits<4> Rm;
436 let Inst{3-0} = Rm;
446 bits<4> Rm;
450 let Inst{3-0} = Rm;
458 bits<4> Rm;
462 let Inst{3-0} = Rm;
500 bits<4> Rm;
506 let Inst{3-0} = Rm;
516 bits<4> Rm;
524 let Inst{3-0} = Rm;
533 bits<4> Rm;
541 let Inst{3-0} = Rm;
563 def rr : T2sThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), iir,
564 opc, !strconcat(wide, "\t$Rd, $Rn, $Rm"),
565 [(set rGPR:$Rd, (opnode rGPR:$Rn, rGPR:$Rm))]> {
589 def : t2InstAlias<!strconcat(opc, "${s}${p}", wide, " $Rdn, $Rm"),
591 rGPR:$Rm, pred:$p,
610 def : t2InstAlias<!strconcat(opc, "${s}${p}", " $Rd, $Rn, $Rm"),
611 (!cast<Instruction>(NAME#"rr") rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p,
621 def : t2InstAlias<!strconcat(opc, "${s}${p}", " $Rdn, $Rm"),
622 (!cast<Instruction>(NAME#"rr") rGPR:$Rdn, rGPR:$Rdn, rGPR:$Rm, pred:$p,
645 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iALUr,
646 opc, "\t$Rd, $Rn, $Rm",
682 def rr : t2PseudoInst<(outs rGPR:$Rd), (ins GPRnopc:$Rn, rGPR:$Rm, pred:$p),
685 rGPR:$Rm))]> {
755 def rr : T2sThreeReg<(outs GPRnopc:$Rd), (ins GPRnopc:$Rn, rGPR:$Rm),
756 IIC_iALUr, opc, ".w\t$Rd, $Rn, $Rm",
757 [(set GPRnopc:$Rd, (opnode GPRnopc:$Rn, rGPR:$Rm))]> {
796 def rr : T2sThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iALUr,
797 opc, ".w\t$Rd, $Rn, $Rm",
798 [(set rGPR:$Rd, CPSR, (opnode rGPR:$Rn, rGPR:$Rm, CPSR))]>,
826 (outs rGPR:$Rd), (ins rGPR:$Rm, ty:$imm), IIC_iMOVsi,
827 opc, ".w\t$Rd, $Rm, $imm",
828 [(set rGPR:$Rd, (opnode rGPR:$Rm, (i32 ty:$imm)))]> {
836 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMOVsr,
837 opc, ".w\t$Rd, $Rn, $Rm",
838 [(set rGPR:$Rd, (opnode rGPR:$Rn, rGPR:$Rm))]> {
850 def : t2InstAlias<!strconcat(opc, "${s}${p}", ".w $Rdn, $Rm"),
851 (!cast<Instruction>(NAME#"rr") rGPR:$Rdn, rGPR:$Rdn, rGPR:$Rm, pred:$p,
858 def : t2InstAlias<!strconcat(opc, "${s}${p}", " $Rd, $Rn, $Rm"),
859 (!cast<Instruction>(NAME#"rr") rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p,
866 def : t2InstAlias<!strconcat(opc, "${s}${p}", " $Rdn, $Rm"),
867 (!cast<Instruction>(NAME#"rr") rGPR:$Rdn, rGPR:$Rdn, rGPR:$Rm, pred:$p,
892 (outs), (ins GPRnopc:$Rn, rGPR:$Rm), iir,
893 opc, ".w\t$Rn, $Rm",
894 [(opnode GPRnopc:$Rn, rGPR:$Rm)]> {
980 let Inst{3-0} = addr{5-2}; // Rm
1061 let Inst{3-0} = addr{5-2}; // Rm
1069 : T2TwoReg<(outs rGPR:$Rd), (ins rGPR:$Rm, rot_imm:$rot), IIC_iEXTr,
1070 opc, ".w\t$Rd, $Rm$rot",
1071 [(set rGPR:$Rd, (opnode (rotr rGPR:$Rm, rot_imm:$rot)))]>,
1086 : T2TwoReg<(outs rGPR:$Rd), (ins rGPR:$Rm, rot_imm:$rot),
1087 IIC_iEXTr, opc, "\t$Rd, $Rm$rot",
1088 [(set rGPR:$Rd, (opnode (rotr rGPR:$Rm, rot_imm:$rot)))]>,
1103 : T2TwoReg<(outs rGPR:$Rd), (ins rGPR:$Rm, rot_imm:$rot), IIC_iEXTr,
1104 opc, "\t$Rd, $Rm$rot", []>,
1120 (ins rGPR:$Rn, rGPR:$Rm, rot_imm:$rot),
1121 IIC_iEXTAsr, opc, "\t$Rd, $Rn, $Rm$rot",
1122 [(set rGPR:$Rd, (opnode rGPR:$Rn, (rotr rGPR:$Rm,rot_imm:$rot)))]>,
1134 : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm,rot_imm:$rot),
1135 IIC_iEXTAsr, opc, "\t$Rd, $Rn, $Rm$rot", []> {
1568 let Inst{3-0} = addr{5-2}; // Rm
1744 def t2MOVr : T2sTwoReg<(outs GPRnopc:$Rd), (ins GPR:$Rm), IIC_iMOVr,
1745 "mov", ".w\t$Rd, $Rm", []> {
1753 def : t2InstAlias<"mov${p}.w $Rd, $Rm", (t2MOVr GPRnopc:$Rd, GPR:$Rm,
1755 def : t2InstAlias<"movs${p}.w $Rd, $Rm", (t2MOVr GPRnopc:$Rd, GPR:$Rm,
1757 def : t2InstAlias<"movs${p} $Rd, $Rm", (t2MOVr GPRnopc:$Rd, GPR:$Rm,
1960 def t2SEL : T2ThreeReg<(outs GPR:$Rd), (ins GPR:$Rn, GPR:$Rm),
1961 NoItinerary, "sel", "\t$Rd, $Rn, $Rm", []>,
1976 dag iops = (ins rGPR:$Rn, rGPR:$Rm),
1977 string asm = "\t$Rd, $Rn, $Rm">
1988 bits<4> Rm;
1992 let Inst{3-0} = Rm;
1998 [(set rGPR:$Rd, (int_arm_qadd rGPR:$Rn, rGPR:$Rm))],
1999 (ins rGPR:$Rm, rGPR:$Rn), "\t$Rd, $Rm, $Rn">;
2004 (ins rGPR:$Rm, rGPR:$Rn), "\t$Rd, $Rm, $Rn">;
2006 (ins rGPR:$Rm, rGPR:$Rn), "\t$Rd, $Rm, $Rn">;
2009 [(set rGPR:$Rd, (int_arm_qsub rGPR:$Rn, rGPR:$Rm))],
2010 (ins rGPR:$Rm, rGPR:$Rn), "\t$Rd, $Rm, $Rn">;
2075 (ins rGPR:$Rn, rGPR:$Rm),
2076 NoItinerary, "usad8", "\t$Rd, $Rn, $Rm", []>,
2081 (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), NoItinerary,
2082 "usada8", "\t$Rd, $Rn, $Rm, $Ra", []>,
2171 def t2RRX : T2sTwoReg<(outs rGPR:$Rd), (ins rGPR:$Rm), IIC_iMOVsi,
2172 "rrx", "\t$Rd, $Rm",
2173 [(set rGPR:$Rd, (ARMrrx rGPR:$Rm))]> {
2185 (outs rGPR:$Rd), (ins rGPR:$Rm), IIC_iMOVsi,
2186 "lsrs", ".w\t$Rd, $Rm, #1",
2187 [(set rGPR:$Rd, (ARMsrl_flag rGPR:$Rm))]> {
2199 (outs rGPR:$Rd), (ins rGPR:$Rm), IIC_iMOVsi,
2200 "asrs", ".w\t$Rd, $Rm, #1",
2201 [(set rGPR:$Rd, (ARMsra_flag rGPR:$Rm))]> {
2331 def r : T2sTwoReg<(outs rGPR:$Rd), (ins rGPR:$Rm), iir,
2332 opc, ".w\t$Rd, $Rm",
2333 [(set rGPR:$Rd, (opnode rGPR:$Rm))]> {
2386 def t2MUL: T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL32,
2387 "mul", "\t$Rd, $Rn, $Rm",
2388 [(set rGPR:$Rd, (mul rGPR:$Rn, rGPR:$Rm))]> {
2397 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32,
2398 "mla", "\t$Rd, $Rn, $Rm, $Ra",
2399 [(set rGPR:$Rd, (add (mul rGPR:$Rn, rGPR:$Rm), rGPR:$Ra))]> {
2407 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32,
2408 "mls", "\t$Rd, $Rn, $Rm, $Ra",
2409 [(set rGPR:$Rd, (sub rGPR:$Ra, (mul rGPR:$Rn, rGPR:$Rm)))]> {
2421 (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL64,
2422 "smull", "\t$RdLo, $RdHi, $Rn, $Rm", []>;
2426 (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL64,
2427 "umull", "\t$RdLo, $RdHi, $Rn, $Rm", []>;
2433 (ins rGPR:$Rn, rGPR:$Rm, rGPR:$RLo, rGPR:$RHi), IIC_iMAC64,
2434 "smlal", "\t$RdLo, $RdHi, $Rn, $Rm", []>,
2439 (ins rGPR:$Rn, rGPR:$Rm, rGPR:$RLo, rGPR:$RHi), IIC_iMAC64,
2440 "umlal", "\t$RdLo, $RdHi, $Rn, $Rm", []>,
2445 (ins rGPR:$Rn, rGPR:$Rm), IIC_iMAC64,
2446 "umaal", "\t$RdLo, $RdHi, $Rn, $Rm", []>,
2453 def t2SMMUL : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL32,
2454 "smmul", "\t$Rd, $Rn, $Rm",
2455 [(set rGPR:$Rd, (mulhs rGPR:$Rn, rGPR:$Rm))]>,
2464 def t2SMMULR : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL32,
2465 "smmulr", "\t$Rd, $Rn, $Rm", []>,
2475 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32,
2476 "smmla", "\t$Rd, $Rn, $Rm, $Ra",
2477 [(set rGPR:$Rd, (add (mulhs rGPR:$Rm, rGPR:$Rn), rGPR:$Ra))]>,
2486 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32,
2487 "smmlar", "\t$Rd, $Rn, $Rm, $Ra", []>,
2496 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32,
2497 "smmls", "\t$Rd, $Rn, $Rm, $Ra",
2498 [(set rGPR:$Rd, (sub rGPR:$Ra, (mulhs rGPR:$Rn, rGPR:$Rm)))]>,
2507 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32,
2508 "smmlsr", "\t$Rd, $Rn, $Rm, $Ra", []>,
2517 def BB : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL16,
2518 !strconcat(opc, "bb"), "\t$Rd, $Rn, $Rm",
2520 (sext_inreg rGPR:$Rm, i16)))]>,
2530 def BT : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL16,
2531 !strconcat(opc, "bt"), "\t$Rd, $Rn, $Rm",
2533 (sra rGPR:$Rm, (i32 16))))]>,
2543 def TB : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL16,
2544 !strconcat(opc, "tb"), "\t$Rd, $Rn, $Rm",
2546 (sext_inreg rGPR:$Rm, i16)))]>,
2556 def TT : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL16,
2557 !strconcat(opc, "tt"), "\t$Rd, $Rn, $Rm",
2559 (sra rGPR:$Rm, (i32 16))))]>,
2569 def WB : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL16,
2570 !strconcat(opc, "wb"), "\t$Rd, $Rn, $Rm",
2572 (sext_inreg rGPR:$Rm, i16)), (i32 16)))]>,
2582 def WT : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iMUL16,
2583 !strconcat(opc, "wt"), "\t$Rd, $Rn, $Rm",
2585 (sra rGPR:$Rm, (i32 16))), (i32 16)))]>,
2599 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC16,
2600 !strconcat(opc, "bb"), "\t$Rd, $Rn, $Rm, $Ra",
2603 (sext_inreg rGPR:$Rm, i16))))]>,
2613 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC16,
2614 !strconcat(opc, "bt"), "\t$Rd, $Rn, $Rm, $Ra",
2616 (sra rGPR:$Rm, (i32 16)))))]>,
2626 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC16,
2627 !strconcat(opc, "tb"), "\t$Rd, $Rn, $Rm, $Ra",
2629 (sext_inreg rGPR:$Rm, i16))))]>,
2639 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC16,
2640 !strconcat(opc, "tt"), "\t$Rd, $Rn, $Rm, $Ra",
2642 (sra rGPR:$Rm, (i32 16)))))]>,
2652 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC16,
2653 !strconcat(opc, "wb"), "\t$Rd, $Rn, $Rm, $Ra",
2655 (sext_inreg rGPR:$Rm, i16)), (i32 16))))]>,
2665 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC16,
2666 !strconcat(opc, "wt"), "\t$Rd, $Rn, $Rm, $Ra",
2668 (sra rGPR:$Rm, (i32 16))), (i32 16))))]>,
2683 (ins rGPR:$Rn,rGPR:$Rm), IIC_iMAC64, "smlalbb", "\t$Ra, $Rd, $Rn, $Rm",
2687 (ins rGPR:$Rn,rGPR:$Rm), IIC_iMAC64, "smlalbt", "\t$Ra, $Rd, $Rn, $Rm",
2691 (ins rGPR:$Rn,rGPR:$Rm), IIC_iMAC64, "smlaltb", "\t$Ra, $Rd, $Rn, $Rm",
2695 (ins rGPR:$Rn,rGPR:$Rm), IIC_iMAC64, "smlaltt", "\t$Ra, $Rd, $Rn, $Rm",
2701 0, 0b010, 0b0000, (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm),
2702 IIC_iMAC32, "smuad", "\t$Rd, $Rn, $Rm", []>,
2707 0, 0b010, 0b0001, (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm),
2708 IIC_iMAC32, "smuadx", "\t$Rd, $Rn, $Rm", []>,
2713 0, 0b100, 0b0000, (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm),
2714 IIC_iMAC32, "smusd", "\t$Rd, $Rn, $Rm", []>,
2719 0, 0b100, 0b0001, (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm),
2720 IIC_iMAC32, "smusdx", "\t$Rd, $Rn, $Rm", []>,
2726 (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32, "smlad",
2727 "\t$Rd, $Rn, $Rm, $Ra", []>,
2731 (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32, "smladx",
2732 "\t$Rd, $Rn, $Rm, $Ra", []>,
2735 (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32, "smlsd",
2736 "\t$Rd, $Rn, $Rm, $Ra", []>,
2739 (ins rGPR:$Rn, rGPR:$Rm, rGPR:$Ra), IIC_iMAC32, "smlsdx",
2740 "\t$Rd, $Rn, $Rm, $Ra", []>,
2743 (ins rGPR:$Rn, rGPR:$Rm), IIC_iMAC64, "smlald",
2744 "\t$Ra, $Rd, $Rn, $Rm", []>,
2747 (ins rGPR:$Rn,rGPR:$Rm), IIC_iMAC64, "smlaldx",
2748 "\t$Ra, $Rd, $Rn, $Rm", []>,
2751 (ins rGPR:$Rn,rGPR:$Rm), IIC_iMAC64, "smlsld",
2752 "\t$Ra, $Rd, $Rn, $Rm", []>,
2755 (ins rGPR:$Rm,rGPR:$Rn), IIC_iMAC64, "smlsldx",
2756 "\t$Ra, $Rd, $Rn, $Rm", []>,
2763 def t2SDIV : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iALUi,
2764 "sdiv", "\t$Rd, $Rn, $Rm",
2765 [(set rGPR:$Rd, (sdiv rGPR:$Rn, rGPR:$Rm))]>,
2774 def t2UDIV : T2ThreeReg<(outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm), IIC_iALUi,
2775 "udiv", "\t$Rd, $Rn, $Rm",
2776 [(set rGPR:$Rd, (udiv rGPR:$Rn, rGPR:$Rm))]>,
2798 let Rn{3-0} = Rm;
2801 def t2CLZ : T2I_misc<0b11, 0b00, (outs rGPR:$Rd), (ins rGPR:$Rm), IIC_iUNAr,
2802 "clz", "\t$Rd, $Rm", [(set rGPR:$Rd, (ctlz rGPR:$Rm))]>;
2804 def t2RBIT : T2I_misc<0b01, 0b10, (outs rGPR:$Rd), (ins rGPR:$Rm), IIC_iUNAr,
2805 "rbit", "\t$Rd, $Rm",
2806 [(set rGPR:$Rd, (ARMrbit rGPR:$Rm))]>;
2808 def t2REV : T2I_misc<0b01, 0b00, (outs rGPR:$Rd), (ins rGPR:$Rm), IIC_iUNAr,
2809 "rev", ".w\t$Rd, $Rm", [(set rGPR:$Rd, (bswap rGPR:$Rm))]>;
2811 def t2REV16 : T2I_misc<0b01, 0b01, (outs rGPR:$Rd), (ins rGPR:$Rm), IIC_iUNAr,
2812 "rev16", ".w\t$Rd, $Rm",
2813 [(set rGPR:$Rd, (rotr (bswap rGPR:$Rm), (i32 16)))]>;
2815 def t2REVSH : T2I_misc<0b01, 0b11, (outs rGPR:$Rd), (ins rGPR:$Rm), IIC_iUNAr,
2816 "revsh", ".w\t$Rd, $Rm",
2817 [(set rGPR:$Rd, (sra (bswap rGPR:$Rm), (i32 16)))]>;
2819 def : T2Pat<(or (sra (shl rGPR:$Rm, (i32 24)), (i32 16)),
2820 (and (srl rGPR:$Rm, (i32 8)), 0xFF)),
2821 (t2REVSH rGPR:$Rm)>;
2824 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, pkh_lsl_amt:$sh),
2825 IIC_iBITsi, "pkhbt", "\t$Rd, $Rn, $Rm$sh",
2827 (and (shl rGPR:$Rm, pkh_lsl_amt:$sh),
2852 (outs rGPR:$Rd), (ins rGPR:$Rn, rGPR:$Rm, pkh_asr_amt:$sh),
2853 IIC_iBITsi, "pkhtb", "\t$Rd, $Rn, $Rm$sh",
2855 (and (sra rGPR:$Rm, pkh_asr_amt:$sh),
2908 (outs), (ins GPRnopc:$Rn, rGPR:$Rm), IIC_iCMPr,
2909 "cmn", ".w\t$Rn, $Rm",
2911 GPRnopc:$Rn, rGPR:$Rm)]> {
2963 (ins rGPR:$false, rGPR:$Rm, pred:$p),
2965 [/*(set rGPR:$Rd, (ARMcmov rGPR:$false, rGPR:$Rm, imm:$cc, CCR:$ccr))*/]>,
3028 (ins rGPR:$false, rGPR:$Rm, i32imm:$imm),
3029 IIC_iCMOVsi, "lsl", ".w\t$Rd, $Rm, $imm", []>,
3032 (ins rGPR:$false, rGPR:$Rm, i32imm:$imm),
3033 IIC_iCMOVsi, "lsr", ".w\t$Rd, $Rm, $imm", []>,
3036 (ins rGPR:$false, rGPR:$Rm, i32imm:$imm),
3037 IIC_iCMOVsi, "asr", ".w\t$Rd, $Rm, $imm", []>,
3040 (ins rGPR:$false, rGPR:$Rm, i32imm:$imm),
3041 IIC_iCMOVsi, "ror", ".w\t$Rd, $Rm, $imm", []>,
3271 bits<4> Rm;
3276 let Inst{3-0} = Rm;
3284 bits<4> Rm;
3289 let Inst{3-0} = Rm;
3364 // Rm = Inst{19-16}
3906 def : T2Pat<(and rGPR:$Rm, 0x000000FF), (t2UXTB rGPR:$Rm, 0)>,
3908 def : T2Pat<(and rGPR:$Rm, 0x0000FFFF), (t2UXTH rGPR:$Rm, 0)>,
3910 def : T2Pat<(and rGPR:$Rm, 0x00FF00FF), (t2UXTB16 rGPR:$Rm, 0)>,
3912 def : T2Pat<(add rGPR:$Rn, (and rGPR:$Rm, 0x00FF)),
3913 (t2UXTAB rGPR:$Rn, rGPR:$Rm, 0)>,
3915 def : T2Pat<(add rGPR:$Rn, (and rGPR:$Rm, 0xFFFF)),
3916 (t2UXTAH rGPR:$Rn, rGPR:$Rm, 0)>,
3924 def : T2Pat<(add rGPR:$Rn, (sext_inreg rGPR:$Rm, i8)),
3925 (t2SXTAB rGPR:$Rn, rGPR:$Rm, 0)>,
3927 def : T2Pat<(add rGPR:$Rn, (sext_inreg rGPR:$Rm, i16)),
3928 (t2SXTAH rGPR:$Rn, rGPR:$Rm, 0)>,
3975 def : t2InstAlias<"adc${s}${p} $Rd, $Rn, $Rm",
3976 (t2ADCrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)>;
3982 def : t2InstAlias<"sbc${s}${p} $Rd, $Rn, $Rm",
3983 (t2SBCrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)>;
3993 def : t2InstAlias<"add${s}${p} $Rd, $Rn, $Rm",
3994 (t2ADDrr GPRnopc:$Rd, GPRnopc:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)>;
4003 def : t2InstAlias<"add${s}${p} $Rdn, $Rm",
4004 (t2ADDrr GPRnopc:$Rdn, GPRnopc:$Rdn, rGPR:$Rm, pred:$p, cc_out:$s)>;
4038 def : t2InstAlias<"sub${s}${p} $Rd, $Rn, $Rm",
4039 (t2SUBrr GPRnopc:$Rd, GPRnopc:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)>;
4048 def : t2InstAlias<"sub${s}${p}.w $Rdn, $Rm",
4049 (t2SUBrr GPRnopc:$Rdn, GPRnopc:$Rdn, rGPR:$Rm, pred:$p, cc_out:$s)>;
4050 def : t2InstAlias<"sub${s}${p} $Rdn, $Rm",
4051 (t2SUBrr GPRnopc:$Rdn, GPRnopc:$Rdn, rGPR:$Rm, pred:$p, cc_out:$s)>;
4057 def : t2InstAlias<"cmn${p} $Rn, $Rm",
4058 (t2CMNzrr GPRnopc:$Rn, rGPR:$Rm, pred:$p)>;
4059 def : t2InstAlias<"teq${p} $Rn, $Rm",
4060 (t2TEQrr GPRnopc:$Rn, rGPR:$Rm, pred:$p)>;
4061 def : t2InstAlias<"tst${p} $Rn, $Rm",
4062 (t2TSTrr GPRnopc:$Rn, rGPR:$Rm, pred:$p)>;
4107 def : t2InstAlias<"mvn${s}${p} $Rd, $Rm",
4108 (t2MVNr rGPR:$Rd, rGPR:$Rm, pred:$p, cc_out:$s)>;
4114 def : InstAlias<"pkhbt${p} $Rd, $Rn, $Rm",
4115 (t2PKHBT rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)>,
4117 def : InstAlias<"pkhtb${p} $Rd, $Rn, $Rm",
4118 (t2PKHBT rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)>,
4152 def : t2InstAlias<"rev${p} $Rd, $Rm", (t2REV rGPR:$Rd, rGPR:$Rm, pred:$p)>;
4153 def : t2InstAlias<"rev16${p} $Rd, $Rm", (t2REV16 rGPR:$Rd, rGPR:$Rm, pred:$p)>;
4154 def : t2InstAlias<"revsh${p} $Rd, $Rm", (t2REVSH rGPR:$Rd, rGPR:$Rm, pred:$p)>;
4163 def : t2InstAlias<"rsb${s}${p} $Rdn, $Rm",
4164 (t2RSBrr rGPR:$Rdn, rGPR:$Rdn, rGPR:$Rm, pred:$p, cc_out:$s)>;
4196 def : t2InstAlias<"sxtab${p} $Rd, $Rn, $Rm",
4197 (t2SXTAB rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)>;
4198 def : t2InstAlias<"sxtah${p} $Rd, $Rn, $Rm",
4199 (t2SXTAH rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)>;
4200 def : t2InstAlias<"sxtab16${p} $Rd, $Rn, $Rm",
4201 (t2SXTAB16 rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)>;
4203 def : t2InstAlias<"sxtb${p} $Rd, $Rm",
4204 (t2SXTB rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4205 def : t2InstAlias<"sxtb16${p} $Rd, $Rm",
4206 (t2SXTB16 rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4207 def : t2InstAlias<"sxth${p} $Rd, $Rm",
4208 (t2SXTH rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4209 def : t2InstAlias<"sxtb${p}.w $Rd, $Rm",
4210 (t2SXTB rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4211 def : t2InstAlias<"sxth${p}.w $Rd, $Rm",
4212 (t2SXTH rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4214 def : t2InstAlias<"uxtab${p} $Rd, $Rn, $Rm",
4215 (t2UXTAB rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)>;
4216 def : t2InstAlias<"uxtah${p} $Rd, $Rn, $Rm",
4217 (t2UXTAH rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)>;
4218 def : t2InstAlias<"uxtab16${p} $Rd, $Rn, $Rm",
4219 (t2UXTAB16 rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)>;
4220 def : t2InstAlias<"uxtb${p} $Rd, $Rm",
4221 (t2UXTB rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4222 def : t2InstAlias<"uxtb16${p} $Rd, $Rm",
4223 (t2UXTB16 rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4224 def : t2InstAlias<"uxth${p} $Rd, $Rm",
4225 (t2UXTH rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4227 def : t2InstAlias<"uxtb${p}.w $Rd, $Rm",
4228 (t2UXTB rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4229 def : t2InstAlias<"uxth${p}.w $Rd, $Rm",
4230 (t2UXTH rGPR:$Rd, rGPR:$Rm, 0, pred:$p)>;
4233 def : t2InstAlias<"uxtb${p} $Rd, $Rm$rot",
4234 (t2UXTB rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)>;
4235 def : t2InstAlias<"uxtb16${p} $Rd, $Rm$rot",
4236 (t2UXTB16 rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)>;
4237 def : t2InstAlias<"uxth${p} $Rd, $Rm$rot",
4238 (t2UXTH rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)>;
4240 def : t2InstAlias<"sxtb${p} $Rd, $Rm$rot",
4241 (t2SXTB rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)>;
4242 def : t2InstAlias<"sxtb16${p} $Rd, $Rm$rot",
4243 (t2SXTB16 rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)>;
4244 def : t2InstAlias<"sxth${p} $Rd, $Rm$rot",
4245 (t2SXTH rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)>;
4282 def : t2InstAlias<"mul${p} $Rn, $Rm",
4283 (t2MUL rGPR:$Rn, rGPR:$Rm, rGPR:$Rn, pred:$p)>;
4286 def : t2InstAlias<"neg${s}${p} $Rd, $Rm",
4287 (t2RSBri rGPR:$Rd, rGPR:$Rm, 0, pred:$p, cc_out:$s)>;