Lines Matching refs:rs2
172 #define FBT_FMT3_RS2_SET(val, rs2) \
173 (val) = ((val) & ~FBT_FMT3_RS2_MASK) | ((rs2) << FBT_FMT3_RS2_SHIFT)
227 #define FBT_ADD(rs1, rs2, rd) \
229 ((rs2) << FBT_FMT3_RS2_SHIFT) | ((rd) << FBT_FMT3_RD_SHIFT))
231 #define FBT_CMP(rs1, rs2) \
233 ((rs2) << FBT_FMT3_RS2_SHIFT) | (FBT_REG_G0 << FBT_FMT3_RD_SHIFT))
253 #define FBT_RESTORE(rd, rs1, rs2) \
255 ((rd) << FBT_FMT3_RD_SHIFT) | ((rs2) << FBT_FMT3_RS2_SHIFT))
513 * (b) jmpl rs1 + (rs2 | offset), rd
514 * restore rs1, rs2 | imm, rd
517 * restore rs1, rs2 | imm, rd
524 * Note that rs1 and rs2 in the restore instructions in (b) and (c) are
527 * local, ls0, and rs2 into an unused local, ls1, and restructure the restore
532 * Likewise, rs1 and rs2 in the jmpl of case (b) may be outputs and/or globals.
739 uint32_t rs2 = FBT_FMT3_RS2(cti);
740 FBT_REG_MARKLOCAL(locals, rs2);
751 uint32_t rs2 = FBT_FMT3_RS2(restore);
752 FBT_REG_MARKLOCAL(locals, rs2);
765 uint32_t rs2 = FBT_FMT3_RS2(cti);
767 if (FBT_REG_ISVOLATILE(rs2)) {
770 *tinstr++ = FBT_MOV(rs2, local);
784 uint32_t rs2 = FBT_FMT3_RS2(restore);
786 if (FBT_REG_ISVOLATILE(rs2)) {
789 *tinstr++ = FBT_MOV(rs2, local);
878 uint32_t rs1, rs2, o2i = FBT_REG_I0 - FBT_REG_O0;
899 rs2 = FBT_FMT3_RS2(cti);
901 if (FBT_REG_ISOUTPUT(rs2))
902 rs2 += o2i;
904 if (FBT_REG_ISGLOBAL(rs2)) {
905 *tinstr++ = FBT_MOV(rs2, FBT_REG_L1);
906 rs2 = FBT_REG_L1;
909 FBT_FMT3_RS2_SET(cti, rs2);
929 *tinstr++ = FBT_ADD(rs1, rs2, FBT_REG_L2);