Lines Matching full:rs
1321 InstSE<(outs RO:$rd), (ins RO:$rs, RO:$rt),
1322 !strconcat(opstr, "\t$rd, $rs, $rt"),
1323 [(set RO:$rd, (OpNode RO:$rs, RO:$rt))], Itin, FrmR, opstr> {
1326 let TwoOperandAliasConstraint = "$rd = $rs";
1334 InstSE<(outs RO:$rt), (ins RO:$rs, Od:$imm16),
1335 !strconcat(opstr, "\t$rt, $rs, $imm16"),
1336 [(set RO:$rt, (OpNode RO:$rs, imm_type:$imm16))],
1339 let TwoOperandAliasConstraint = "$rs = $rt";
1344 InstSE<(outs), (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
1345 !strconcat(opstr, "\t$rs, $rt"), [], itin, FrmR, opstr> {
1353 InstSE<(outs RO:$rd), (ins RO:$rs, RO:$rt),
1354 !strconcat(opstr, "\t$rd, $rs, $rt"),
1355 [(set RO:$rd, (not (or RO:$rs, RO:$rt)))], II_NOR, FrmR, opstr> {
1372 InstSE<(outs RO:$rd), (ins RO:$rt, GPR32Opnd:$rs),
1373 !strconcat(opstr, "\t$rd, $rt, $rs"),
1374 [(set RO:$rd, (OpNode RO:$rt, GPR32Opnd:$rs))], itin, FrmR,
1476 InstSE<(outs), (ins RO:$rs, RO:$rt, opnd:$offset),
1477 !strconcat(opstr, "\t$rs, $rt, $offset"),
1478 [(brcond (i32 (cond_op RO:$rs, RO:$rt)), bb:$offset)], II_BCC,
1488 InstSE<(outs), (ins RO:$rs, RO:$rt, opnd:$offset),
1489 !strconcat(opstr, "\t$rs, $rt, $offset"), [], II_BCC, FrmI, opstr> {
1499 InstSE<(outs), (ins RO:$rs, opnd:$offset),
1500 !strconcat(opstr, "\t$rs, $offset"),
1501 [(brcond (i32 (cond_op RO:$rs, 0)), bb:$offset)], II_BCCZ,
1511 InstSE<(outs), (ins RO:$rs, opnd:$offset),
1512 !strconcat(opstr, "\t$rs, $offset"), [], II_BCCZ, FrmI, opstr> {
1522 InstSE<(outs GPR32Opnd:$rd), (ins RO:$rs, RO:$rt),
1523 !strconcat(opstr, "\t$rd, $rs, $rt"),
1524 [(set GPR32Opnd:$rd, (cond_op RO:$rs, RO:$rt))],
1529 InstSE<(outs GPR32Opnd:$rt), (ins RO:$rs, Od:$imm16),
1530 !strconcat(opstr, "\t$rt, $rs, $imm16"),
1531 [(set GPR32Opnd:$rt, (cond_op RO:$rs, imm_type:$imm16))],
1564 InstSE<(outs), (ins RO:$rs), "jr\t$rs", [(operator RO:$rs)], II_JR,
1583 PseudoSE<(outs), (ins RO:$rs), [(MipsJmpLink RO:$rs)], II_JALR>,
1584 PseudoInstExpansion<(JALRInst RetReg, ResRO:$rs)> {
1589 InstSE<(outs RO:$rd), (ins RO:$rs), !strconcat(opstr, "\t$rd, $rs"),
1596 InstSE<(outs), (ins RO:$rs, opnd:$offset),
1597 !strconcat(opstr, "\t$rs, $offset"), [], II_BCCZAL, FrmI, opstr> {
1610 PseudoSE<(outs), (ins RO:$rs), [(MipsTailCall RO:$rs)], II_JR>,
1611 PseudoInstExpansion<(JumpInst RO:$rs)> {
1670 InstSE<(outs), (ins RO:$rs, RO:$rt, ImmOp:$code_),
1671 !strconcat(opstr, "\t$rs, $rt, $code_"), [], itin, FrmI, opstr>;
1675 InstSE<(outs), (ins RO:$rs, simm16:$imm16),
1676 !strconcat(opstr, "\t$rs, $imm16"), [], itin, FrmOther, opstr>;
1682 InstSE<(outs), (ins RO:$rs, RO:$rt), !strconcat(opstr, "\t$rs, $rt"), [],
1695 PseudoSE<(outs R0:$ac), (ins R1:$rs, R1:$rt),
1696 [(set R0:$ac, (OpNode R1:$rs, R1:$rt))], Itin>,
1697 PseudoInstExpansion<(RealInst R1:$rs, R1:$rt)> {
1708 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, ACC64:$acin),
1710 (OpNode GPR32Opnd:$rs, GPR32Opnd:$rt, ACC64:$acin))],
1712 PseudoInstExpansion<(RealInst GPR32Opnd:$rs, GPR32Opnd:$rt)> {
1718 InstSE<(outs), (ins RO:$rs, RO:$rt), !strconcat(opstr, "\t$$zero, $rs, $rt"),
1742 InstSE<(outs), (ins RO:$rs), !strconcat(opstr, "\t$rs"), [], II_MTHI_MTLO,
1761 InstSE<(outs RO:$rd), (ins RO:$rs), !strconcat(opstr, "\t$rd, $rs"),
1762 [(set RO:$rd, (ctlz RO:$rs))], itin, FrmR, opstr>;
1766 InstSE<(outs RO:$rd), (ins RO:$rs), !strconcat(opstr, "\t$rd, $rs"),
1767 [(set RO:$rd, (ctlz (not RO:$rs)))], itin, FrmR, opstr>;
1792 InstSE<(outs RO:$rt), (ins RO:$rs, PosOpnd:$pos, SizeOpnd:$size),
1793 !strconcat(opstr, "\t$rt, $rs, $pos, $size"),
1794 [(set RO:$rt, (Op RO:$rs, PosImm:$pos, SizeImm:$size))], II_EXT,
1800 InstSE<(outs RO:$rt), (ins RO:$rs, PosOpnd:$pos, SizeOpnd:$size, RO:$src),
1801 !strconcat(opstr, "\t$rt, $rs, $pos, $size"),
1802 [(set RO:$rt, (null_frag RO:$rs, PosImm:$pos, SizeImm:$size,
2283 MipsPseudo<(outs), (ins RO:$rs), [(brind RO:$rs)],
2285 PseudoInstExpansion<(JumpInst RO:$rs)> {
2303 class PseudoReturnBase<RegisterOperand RO> : MipsPseudo<(outs), (ins RO:$rs),
2460 dag InOperandList = (ins GPROpnd:$rs);
2461 string AsmString = !strconcat(instr_asm, "\t$rs");
2467 dag InOperandList = (ins GPROpnd:$rs);
2468 string AsmString = !strconcat(instr_asm, "\t$rd, $rs");
2531 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, GPR32Opnd:$rd),
2532 "rol\t$rs, $rt, $rd">;
2534 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, simm16:$imm),
2535 "rol\t$rs, $rt, $imm">;
2536 def : MipsInstAlias<"rol $rd, $rs",
2537 (ROL GPR32Opnd:$rd, GPR32Opnd:$rd, GPR32Opnd:$rs), 0>;
2542 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, GPR32Opnd:$rd),
2543 "ror\t$rs, $rt, $rd">;
2545 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, simm16:$imm),
2546 "ror\t$rs, $rt, $imm">;
2547 def : MipsInstAlias<"ror $rd, $rs",
2548 (ROR GPR32Opnd:$rd, GPR32Opnd:$rd, GPR32Opnd:$rs), 0>;
2553 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, GPR32Opnd:$rd),
2554 "drol\t$rs, $rt, $rd">, ISA_MIPS64;
2556 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, simm16:$imm),
2557 "drol\t$rs, $rt, $imm">, ISA_MIPS64;
2558 def : MipsInstAlias<"drol $rd, $rs",
2559 (DROL GPR32Opnd:$rd, GPR32Opnd:$rd, GPR32Opnd:$rs), 0>,
2566 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, GPR32Opnd:$rd),
2567 "dror\t$rs, $rt, $rd">, ISA_MIPS64;
2569 (ins GPR32Opnd:$rs, GPR32Opnd:$rt, simm16:$imm),
2570 "dror\t$rs, $rt, $imm">, ISA_MIPS64;
2571 def : MipsInstAlias<"dror $rd, $rs",
2572 (DROR GPR32Opnd:$rd, GPR32Opnd:$rd, GPR32Opnd:$rs), 0>,
2578 def ABSMacro : MipsAsmPseudoInst<(outs GPR32Opnd:$rd), (ins GPR32Opnd:$rs),
2579 "abs\t$rd, $rs">;
2582 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
2583 "seq $rd, $rs, $rt">, NOT_ASE_CNMIPS;
2585 def : MipsInstAlias<"seq $rd, $rs",
2586 (SEQMacro GPR32Opnd:$rd, GPR32Opnd:$rd, GPR32Opnd:$rs), 0>,
2590 (ins GPR32Opnd:$rs, simm32_relaxed:$imm),
2591 "seq $rd, $rs, $imm">, NOT_ASE_CNMIPS;
2598 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
2599 "sne $rd, $rs, $rt">, NOT_ASE_CNMIPS;
2601 def : MipsInstAlias<"sne $rd, $rs",
2602 (SNEMacro GPR32Opnd:$rd, GPR32Opnd:$rd, GPR32Opnd:$rs), 0>,
2606 (ins GPR32Opnd:$rs, simm32_relaxed:$imm),
2607 "sne $rd, $rs, $imm">, NOT_ASE_CNMIPS;
2613 def MULImmMacro : MipsAsmPseudoInst<(outs), (ins GPR32Opnd:$rd, GPR32Opnd:$rs,
2615 "mul\t$rd, $rs, $imm">,
2617 def MULOMacro : MipsAsmPseudoInst<(outs), (ins GPR32Opnd:$rd, GPR32Opnd:$rs,
2619 "mulo\t$rd, $rs, $rt">,
2621 def MULOUMacro : MipsAsmPseudoInst<(outs), (ins GPR32Opnd:$rd, GPR32Opnd:$rs,
2623 "mulou\t$rd, $rs, $rt">,
2666 def : MipsInstAlias<!strconcat(Memnomic, " $rs, $rt, $imm"),
2667 (Opcode RO:$rs,
2670 def : MipsInstAlias<!strconcat(Memnomic, " $rs, $imm"),
2671 (Opcode RO:$rs,
2672 RO:$rs,
2687 def : MipsInstAlias<"j $rs", (JR GPR32Opnd:$rs), 0>, ISA_MIPS1;
2689 def : MipsInstAlias<"jalr $rs", (JALR RA, GPR32Opnd:$rs), 0>;
2691 def : MipsInstAlias<"jalr.hb $rs", (JALR_HB RA, GPR32Opnd:$rs), 1>,
2694 def : MipsInstAlias<"neg $rt, $rs",
2695 (SUB GPR32Opnd:$rt, ZERO, GPR32Opnd:$rs), 1>, ISA_MIPS1;
2698 def : MipsInstAlias<"negu $rt, $rs",
2699 (SUBu GPR32Opnd:$rt, ZERO, GPR32Opnd:$rs), 1>, ISA_MIPS1;
2704 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
2705 "sge\t$rd, $rs, $rt">, ISA_MIPS1;
2706 def : MipsInstAlias<"sge $rs, $rt",
2707 (SGE GPR32Opnd:$rs, GPR32Opnd:$rs, GPR32Opnd:$rt), 0>,
2710 (ins GPR32Opnd:$rs, simm32:$imm),
2711 "sge\t$rd, $rs, $imm">, GPR_32;
2712 def : MipsInstAlias<"sge $rs, $imm", (SGEImm GPR32Opnd:$rs,
2713 GPR32Opnd:$rs,
2718 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
2719 "sgeu\t$rd, $rs, $rt">, ISA_MIPS1;
2720 def : MipsInstAlias<"sgeu $rs, $rt",
2721 (SGEU GPR32Opnd:$rs, GPR32Opnd:$rs, GPR32Opnd:$rt), 0>,
2724 (ins GPR32Opnd:$rs, uimm32_coerced:$imm),
2725 "sgeu\t$rd, $rs, $imm">, GPR_32;
2726 def : MipsInstAlias<"sgeu $rs, $imm", (SGEUImm GPR32Opnd:$rs,
2727 GPR32Opnd:$rs,
2732 "sgt $rd, $rs, $rt",
2733 (SLT GPR32Opnd:$rd, GPR32Opnd:$rt, GPR32Opnd:$rs), 0>, ISA_MIPS1;
2735 "sgt $rs, $rt",
2736 (SLT GPR32Opnd:$rs, GPR32Opnd:$rt, GPR32Opnd:$rs), 0>, ISA_MIPS1;
2739 (ins GPR32Opnd:$rs, simm32:$imm),
2740 "sgt\t$rd, $rs, $imm">, GPR_32;
2741 def : MipsInstAlias<"sgt $rs, $imm", (SGTImm GPR32Opnd:$rs,
2742 GPR32Opnd:$rs,
2746 "sgtu $rd, $rs, $rt",
2747 (SLTu GPR32Opnd:$rd, GPR32Opnd:$rt, GPR32Opnd:$rs), 0>, ISA_MIPS1;
2749 "sgtu $$rs, $rt",
2750 (SLTu GPR32Opnd:$rs, GPR32Opnd:$rt, GPR32Opnd:$rs), 0>, ISA_MIPS1;
2753 (ins GPR32Opnd:$rs, uimm32_coerced:$imm),
2754 "sgtu\t$rd, $rs, $imm">, GPR_32;
2755 def : MipsInstAlias<"sgtu $rs, $imm", (SGTUImm GPR32Opnd:$rs,
2756 GPR32Opnd:$rs,
2761 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
2762 "sle\t$rd, $rs, $rt">, ISA_MIPS1;
2763 def : MipsInstAlias<"sle $rs, $rt",
2764 (SLE GPR32Opnd:$rs, GPR32Opnd:$rs, GPR32Opnd:$rt), 0>,
2767 (ins GPR32Opnd:$rs, simm32:$imm),
2768 "sle\t$rd, $rs, $imm">, GPR_32;
2769 def : MipsInstAlias<"sle $rs, $imm", (SLEImm GPR32Opnd:$rs,
2770 GPR32Opnd:$rs,
2775 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
2776 "sleu\t$rd, $rs, $rt">, ISA_MIPS1;
2777 def : MipsInstAlias<"sleu $rs, $rt",
2778 (SLEU GPR32Opnd:$rs, GPR32Opnd:$rs, GPR32Opnd:$rt), 0>,
2781 (ins GPR32Opnd:$rs, uimm32_coerced:$imm),
2782 "sleu\t$rd, $rs, $imm">, GPR_32;
2783 def : MipsInstAlias<"sleu $rs, $imm", (SLEUImm GPR32Opnd:$rs,
2784 GPR32Opnd:$rs,
2789 "not $rt, $rs",
2790 (NOR GPR32Opnd:$rt, GPR32Opnd:$rs, ZERO), 0>, ISA_MIPS1;
2836 def : MipsInstAlias<"bnez $rs,$offset",
2837 (BNE GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>,
2839 def : MipsInstAlias<"bnezl $rs, $offset",
2840 (BNEL GPR32Opnd:$rs, ZERO, brtarget:$offset), 1>,
2842 def : MipsInstAlias<"beqz $rs,$offset",
2843 (BEQ GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>,
2845 def : MipsInstAlias<"beqzl $rs, $offset",
2846 (BEQL GPR32Opnd:$rs, ZERO, brtarget:$offset), 1>,
2856 def : MipsInstAlias<"teq $rs, $rt",
2857 (TEQ GPR32Opnd:$rs, GPR32Opnd:$rt, 0), 1>, ISA_MIPS2;
2858 def : MipsInstAlias<"tge $rs, $rt",
2859 (TGE GPR32Opnd:$rs, GPR32Opnd:$rt, 0), 1>, ISA_MIPS2;
2860 def : MipsInstAlias<"tgeu $rs, $rt",
2861 (TGEU GPR32Opnd:$rs, GPR32Opnd:$rt, 0), 1>, ISA_MIPS2;
2862 def : MipsInstAlias<"tlt $rs, $rt",
2863 (TLT GPR32Opnd:$rs, GPR32Opnd:$rt, 0), 1>, ISA_MIPS2;
2864 def : MipsInstAlias<"tltu $rs, $rt",
2865 (TLTU GPR32Opnd:$rs, GPR32Opnd:$rt, 0), 1>, ISA_MIPS2;
2866 def : MipsInstAlias<"tne $rs, $rt",
2867 (TNE GPR32Opnd:$rs, GPR32Opnd:$rt, 0), 1>, ISA_MIPS2;
2868 def : MipsInstAlias<"rdhwr $rt, $rs",
2869 (RDHWR GPR32Opnd:$rt, HWRegsOpnd:$rs, 0), 1>, ISA_MIPS1;
2872 def : MipsInstAlias<"sub, $rd, $rs, $imm",
2873 (ADDi GPR32Opnd:$rd, GPR32Opnd:$rs,
2875 def : MipsInstAlias<"sub $rs, $imm",
2876 (ADDi GPR32Opnd:$rs, GPR32Opnd:$rs, InvertedImOperand:$imm),
2878 def : MipsInstAlias<"subu, $rd, $rs, $imm",
2879 (ADDiu GPR32Opnd:$rd, GPR32Opnd:$rs,
2881 def : MipsInstAlias<"subu $rs, $imm", (ADDiu GPR32Opnd:$rs, GPR32Opnd:$rs,
2884 def : MipsInstAlias<"sll $rd, $rt, $rs",
2885 (SLLV GPR32Opnd:$rd, GPR32Opnd:$rt, GPR32Opnd:$rs), 0>;
2886 def : MipsInstAlias<"sra $rd, $rt, $rs",
2887 (SRAV GPR32Opnd:$rd, GPR32Opnd:$rt, GPR32Opnd:$rs), 0>;
2888 def : MipsInstAlias<"srl $rd, $rt, $rs",
2889 (SRLV GPR32Opnd:$rd, GPR32Opnd:$rt, GPR32Opnd:$rs), 0>;
2905 def : MipsInstAlias<"mulo $rs, $rt",
2906 (MULOMacro GPR32Opnd:$rs, GPR32Opnd:$rs, GPR32Opnd:$rt), 0>,
2908 def : MipsInstAlias<"mulou $rs, $rt",
2909 (MULOUMacro GPR32Opnd:$rs, GPR32Opnd:$rs, GPR32Opnd:$rt), 0>,
2937 def JalTwoReg : MipsAsmPseudoInst<(outs GPR32Opnd:$rd), (ins GPR32Opnd:$rs),
2938 "jal\t$rd, $rs"> ;
2939 def JalOneReg : MipsAsmPseudoInst<(outs), (ins GPR32Opnd:$rs),
2940 "jal\t$rs"> ;
2943 MipsAsmPseudoInst<(outs RO:$rs), (ins RO:$rt, Imm:$imm),
2944 "nor\t$rs, $rt, $imm">;
2946 def : MipsInstAlias<"nor\t$rs, $imm", (NORImm GPR32Opnd:$rs, GPR32Opnd:$rs,
2958 MipsAsmPseudoInst<(outs), (ins GPR32Opnd:$rs, GPR32Opnd:$rt,
2960 !strconcat(instr_asm, "\t$rs, $rt, $offset")>;
2982 MipsAsmPseudoInst<(outs), (ins GPR32Opnd:$rs, imm64:$imm, brtarget:$offset),
2983 !strconcat(instr_asm, "\t$rs, $imm, $offset")>;
3012 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
3013 "div\t$rd, $rs, $rt">,
3016 (ins GPR32Opnd:$rs, simm32:$imm),
3017 "div\t$rd, $rs, $imm">,
3020 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
3021 "divu\t$rd, $rs, $rt">,
3024 (ins GPR32Opnd:$rs, simm32:$imm),
3025 "divu\t$rd, $rs, $imm">,
3029 def : MipsInstAlias<"div $rs, $rt", (SDIV GPR32ZeroOpnd:$rs,
3032 def : MipsInstAlias<"div $rs, $rt", (SDivMacro GPR32NonZeroOpnd:$rs,
3033 GPR32NonZeroOpnd:$rs,
3040 def : MipsInstAlias<"divu $rt, $rs", (UDIV GPR32ZeroOpnd:$rt,
3041 GPR32Opnd:$rs), 0>,
3043 def : MipsInstAlias<"divu $rt, $rs", (UDivMacro GPR32NonZeroOpnd:$rt,
3045 GPR32Opnd:$rs), 0>,
3056 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
3057 "rem\t$rd, $rs, $rt">,
3060 (ins GPR32Opnd:$rs, simm32_relaxed:$imm),
3061 "rem\t$rd, $rs, $imm">,
3064 (ins GPR32Opnd:$rs, GPR32Opnd:$rt),
3065 "remu\t$rd, $rs, $rt">,
3068 (ins GPR32Opnd:$rs, simm32_relaxed:$imm),
3069 "remu\t$rd, $rs, $imm">,
3072 def : MipsInstAlias<"rem $rt, $rs", (SRemMacro GPR32Opnd:$rt, GPR32Opnd:$rt,
3073 GPR32Opnd:$rs), 0>,
3078 def : MipsInstAlias<"remu $rt, $rs", (URemMacro GPR32Opnd:$rt, GPR32Opnd:$rt,
3079 GPR32Opnd:$rs), 0>,