Lines Matching +full:3 +full:rd

33  * - BPF_REG_{1,2,3,4} are the argument registers and must be mapped to
111 ZZ_8_byte = 3
129 AA_scale = 3 /* in assembly known as "as". */
143 CC_positive = 3, /* if status32.n flag is clear */
268 #define STORE_AA(x) ((x) << 3)
668 /* rd <- rs */
669 static u8 arc_mov_r(u8 *buf, u8 rd, u8 rs) in arc_mov_r() argument
671 const u32 insn = OPC_MOV | OP_B(rd) | OP_C(rs); in arc_mov_r()
679 static u8 arc_mov_i(u8 *buf, u8 rd, s32 imm) in arc_mov_i() argument
681 const u32 insn = OPC_MOV | OP_B(rd) | OP_IMM; in arc_mov_i()
684 return arc_movi_r(buf, rd, imm); in arc_mov_i()
694 static u8 arc_mov_i_fixed(u8 *buf, u8 rd, s32 imm) in arc_mov_i_fixed() argument
696 const u32 insn = OPC_MOV | OP_B(rd) | OP_IMM; in arc_mov_i_fixed()
706 static u8 arc_mov_cc_r(u8 *buf, u8 cc, u8 rd, u8 rs) in arc_mov_cc_r() argument
708 const u32 insn = OPC_MOV_CC | OP_B(rd) | OP_C(rs) | COND(cc); in arc_mov_cc_r()
715 /* Conditional move of a small immediate to rd. */
716 static u8 arc_movu_cc_r(u8 *buf, u8 cc, u8 rd, u8 imm) in arc_movu_cc_r() argument
718 const u32 insn = OPC_MOVU_CC | OP_B(rd) | OP_C(imm) | COND(cc); in arc_movu_cc_r()
726 static u8 arc_sexb_r(u8 *buf, u8 rd, u8 rs) in arc_sexb_r() argument
728 const u32 insn = OPC_SEXB | OP_B(rd) | OP_C(rs); in arc_sexb_r()
736 static u8 arc_sexh_r(u8 *buf, u8 rd, u8 rs) in arc_sexh_r() argument
738 const u32 insn = OPC_SEXH | OP_B(rd) | OP_C(rs); in arc_sexh_r()
1003 /* divu Rd,Rd,Rs */
1004 static u8 arc_divu_r(u8 *buf, u8 rd, u8 rs) in arc_divu_r() argument
1006 const u32 insn = OPC_DIVU | OP_A(rd) | OP_B(rd) | OP_C(rs); in arc_divu_r()
1013 /* divu Rd,Rd,imm */
1014 static u8 arc_divu_i(u8 *buf, u8 rd, s32 imm) in arc_divu_i() argument
1016 const u32 insn = OPC_DIVUI | OP_A(rd) | OP_B(rd); in arc_divu_i()
1025 /* div Rd,Rd,Rs */
1026 static u8 arc_divs_r(u8 *buf, u8 rd, u8 rs) in arc_divs_r() argument
1028 const u32 insn = OPC_DIVS | OP_A(rd) | OP_B(rd) | OP_C(rs); in arc_divs_r()
1035 /* div Rd,Rd,imm */
1036 static u8 arc_divs_i(u8 *buf, u8 rd, s32 imm) in arc_divs_i() argument
1038 const u32 insn = OPC_DIVSI | OP_A(rd) | OP_B(rd); in arc_divs_i()
1047 /* remu Rd,Rd,Rs */
1048 static u8 arc_remu_r(u8 *buf, u8 rd, u8 rs) in arc_remu_r() argument
1050 const u32 insn = OPC_REMU | OP_A(rd) | OP_B(rd) | OP_C(rs); in arc_remu_r()
1057 /* remu Rd,Rd,imm */
1058 static u8 arc_remu_i(u8 *buf, u8 rd, s32 imm) in arc_remu_i() argument
1060 const u32 insn = OPC_REMUI | OP_A(rd) | OP_B(rd); in arc_remu_i()
1069 /* rem Rd,Rd,Rs */
1070 static u8 arc_rems_r(u8 *buf, u8 rd, u8 rs) in arc_rems_r() argument
1072 const u32 insn = OPC_REMS | OP_A(rd) | OP_B(rd) | OP_C(rs); in arc_rems_r()
1079 /* rem Rd,Rd,imm */
1080 static u8 arc_rems_i(u8 *buf, u8 rd, s32 imm) in arc_rems_i() argument
1082 const u32 insn = OPC_REMSI | OP_A(rd) | OP_B(rd); in arc_rems_i()
1091 /* and Rd,Rd,Rs */
1092 static u8 arc_and_r(u8 *buf, u8 rd, u8 rs) in arc_and_r() argument
1094 const u32 insn = OPC_AND | OP_A(rd) | OP_B(rd) | OP_C(rs); in arc_and_r()
1101 /* and Rd,Rd,limm */
1102 static u8 arc_and_i(u8 *buf, u8 rd, s32 imm) in arc_and_i() argument
1104 const u32 insn = OPC_ANDI | OP_A(rd) | OP_B(rd); in arc_and_i()
1113 /* tst Rd,Rs */
1114 static u8 arc_tst_r(u8 *buf, u8 rd, u8 rs) in arc_tst_r() argument
1116 const u32 insn = OPC_TST | OP_B(rd) | OP_C(rs); in arc_tst_r()
1129 static u8 arc_tstz_r(u8 *buf, u8 rd, u8 rs) in arc_tstz_r() argument
1131 const u32 insn = OPC_TST | OP_B(rd) | OP_C(rs) | CC_equal; in arc_tstz_r()
1138 static u8 arc_or_r(u8 *buf, u8 rd, u8 rs1, u8 rs2) in arc_or_r() argument
1140 const u32 insn = OPC_OR | OP_A(rd) | OP_B(rs1) | OP_C(rs2); in arc_or_r()
1147 static u8 arc_or_i(u8 *buf, u8 rd, s32 imm) in arc_or_i() argument
1149 const u32 insn = OPC_ORI | OP_A(rd) | OP_B(rd); in arc_or_i()
1158 static u8 arc_xor_r(u8 *buf, u8 rd, u8 rs) in arc_xor_r() argument
1160 const u32 insn = OPC_XOR | OP_A(rd) | OP_B(rd) | OP_C(rs); in arc_xor_r()
1167 static u8 arc_xor_i(u8 *buf, u8 rd, s32 imm) in arc_xor_i() argument
1169 const u32 insn = OPC_XORI | OP_A(rd) | OP_B(rd); in arc_xor_i()
1178 static u8 arc_not_r(u8 *buf, u8 rd, u8 rs) in arc_not_r() argument
1180 const u32 insn = OPC_NOT | OP_B(rd) | OP_C(rs); in arc_not_r()
1196 static u8 arc_asl_r(u8 *buf, u8 rd, u8 rs1, u8 rs2) in arc_asl_r() argument
1198 const u32 insn = OPC_ASL | OP_A(rd) | OP_B(rs1) | OP_C(rs2); in arc_asl_r()
1205 static u8 arc_asli_r(u8 *buf, u8 rd, u8 rs, u8 imm) in arc_asli_r() argument
1207 const u32 insn = OPC_ASLI | OP_A(rd) | OP_B(rs) | ASLI_U6(imm); in arc_asli_r()
1214 static u8 arc_asr_r(u8 *buf, u8 rd, u8 rs1, u8 rs2) in arc_asr_r() argument
1216 const u32 insn = OPC_ASR | OP_A(rd) | OP_B(rs1) | OP_C(rs2); in arc_asr_r()
1223 static u8 arc_asri_r(u8 *buf, u8 rd, u8 rs, u8 imm) in arc_asri_r() argument
1225 const u32 insn = OPC_ASRI | OP_A(rd) | OP_B(rs) | ASRI_U6(imm); in arc_asri_r()
1232 static u8 arc_lsr_r(u8 *buf, u8 rd, u8 rs1, u8 rs2) in arc_lsr_r() argument
1234 const u32 insn = OPC_LSR | OP_A(rd) | OP_B(rs1) | OP_C(rs2); in arc_lsr_r()
1241 static u8 arc_lsri_r(u8 *buf, u8 rd, u8 rs, u8 imm) in arc_lsri_r() argument
1243 const u32 insn = OPC_LSRI | OP_A(rd) | OP_B(rs) | LSRI_U6(imm); in arc_lsri_r()
1305 u8 zext(u8 *buf, u8 rd) in zext() argument
1307 if (rd != BPF_REG_FP) in zext()
1308 return arc_movi_r(buf, REG_HI(rd), 0); in zext()
1313 u8 mov_r32(u8 *buf, u8 rd, u8 rs, u8 sign_ext) in mov_r32() argument
1319 len = arc_sexb_r(buf, REG_LO(rd), REG_LO(rs)); in mov_r32()
1321 len = arc_sexh_r(buf, REG_LO(rd), REG_LO(rs)); in mov_r32()
1322 else if (sign_ext == 32 && rd != rs) in mov_r32()
1323 len = arc_mov_r(buf, REG_LO(rd), REG_LO(rs)); in mov_r32()
1330 if (rd != rs) in mov_r32()
1331 len = arc_mov_r(buf, REG_LO(rd), REG_LO(rs)); in mov_r32()
1341 u8 mov_r64(u8 *buf, u8 rd, u8 rs, u8 sign_ext) in mov_r64() argument
1347 len = mov_r32(buf, rd, rs, sign_ext); in mov_r64()
1352 REG_HI(rd), REG_LO(rd), 31); in mov_r64()
1360 if (rd == rs) in mov_r64()
1363 len = arc_mov_r(buf, REG_LO(rd), REG_LO(rs)); in mov_r64()
1366 len += arc_mov_r(BUF(buf, len), REG_HI(rd), REG_HI(rs)); in mov_r64()
1369 len += arc_movi_r(BUF(buf, len), REG_HI(rd), 0); in mov_r64()
1459 /* store rs, [rd, off] */
1460 u8 store_r(u8 *buf, u8 rs, u8 rd, s16 off, u8 size) in store_r() argument
1464 len = adjust_mem_access(buf, &off, size, rd, &arc_reg_mem); in store_r()
1491 u8 store_i(u8 *buf, s32 imm, u8 rd, s16 off, u8 size) in store_i() argument
1497 len = adjust_mem_access(buf, &off, size, rd, &arc_reg_mem); in store_i()
1539 /* load rd, [rs, off] */
1540 u8 load_r(u8 *buf, u8 rd, u8 rs, s16 off, u8 size, bool sign_ext) in load_r() argument
1551 len += arc_ldx_r(BUF(buf, len), REG_LO(rd), in load_r()
1554 len += arc_ld_r(BUF(buf, len), REG_LO(rd), in load_r()
1561 REG_HI(rd), REG_LO(rd), 31); in load_r()
1563 len += arc_movi_r(BUF(buf, len), REG_HI(rd), 0); in load_r()
1579 if (REG_LO(rd) != arc_reg_mem) { in load_r()
1580 len += arc_ld_r(BUF(buf, len), REG_LO(rd), arc_reg_mem, in load_r()
1582 len += arc_ld_r(BUF(buf, len), REG_HI(rd), arc_reg_mem, in load_r()
1585 len += arc_ld_r(BUF(buf, len), REG_HI(rd), arc_reg_mem, in load_r()
1587 len += arc_ld_r(BUF(buf, len), REG_LO(rd), arc_reg_mem, in load_r()
1595 u8 add_r32(u8 *buf, u8 rd, u8 rs) in add_r32() argument
1597 return arc_add_r(buf, REG_LO(rd), REG_LO(rs)); in add_r32()
1600 u8 add_r32_i32(u8 *buf, u8 rd, s32 imm) in add_r32_i32() argument
1603 return arc_addi_r(buf, REG_LO(rd), imm); in add_r32_i32()
1605 return arc_add_i(buf, REG_LO(rd), REG_LO(rd), imm); in add_r32_i32()
1608 u8 add_r64(u8 *buf, u8 rd, u8 rs) in add_r64() argument
1612 len = arc_addf_r(buf, REG_LO(rd), REG_LO(rs)); in add_r64()
1613 len += arc_adc_r(BUF(buf, len), REG_HI(rd), REG_HI(rs)); in add_r64()
1617 u8 add_r64_i32(u8 *buf, u8 rd, s32 imm) in add_r64_i32() argument
1622 len = arc_addif_r(buf, REG_LO(rd), imm); in add_r64_i32()
1623 len += arc_adci_r(BUF(buf, len), REG_HI(rd), 0); in add_r64_i32()
1626 len += add_r64(BUF(buf, len), rd, JIT_REG_TMP); in add_r64_i32()
1631 u8 sub_r32(u8 *buf, u8 rd, u8 rs) in sub_r32() argument
1633 return arc_sub_r(buf, REG_LO(rd), REG_LO(rs)); in sub_r32()
1636 u8 sub_r32_i32(u8 *buf, u8 rd, s32 imm) in sub_r32_i32() argument
1639 return arc_subi_r(buf, REG_LO(rd), imm); in sub_r32_i32()
1641 return arc_sub_i(buf, REG_LO(rd), imm); in sub_r32_i32()
1644 u8 sub_r64(u8 *buf, u8 rd, u8 rs) in sub_r64() argument
1648 len = arc_subf_r(buf, REG_LO(rd), REG_LO(rs)); in sub_r64()
1649 len += arc_sbc_r(BUF(buf, len), REG_HI(rd), REG_HI(rs)); in sub_r64()
1653 u8 sub_r64_i32(u8 *buf, u8 rd, s32 imm) in sub_r64_i32() argument
1658 len += sub_r64(BUF(buf, len), rd, JIT_REG_TMP); in sub_r64_i32()
1662 static u8 cmp_r32(u8 *buf, u8 rd, u8 rs) in cmp_r32() argument
1664 return arc_cmp_r(buf, REG_LO(rd), REG_LO(rs)); in cmp_r32()
1683 u8 mul_r32(u8 *buf, u8 rd, u8 rs) in mul_r32() argument
1685 return arc_mpy_r(buf, REG_LO(rd), REG_LO(rd), REG_LO(rs)); in mul_r32()
1688 u8 mul_r32_i32(u8 *buf, u8 rd, s32 imm) in mul_r32_i32() argument
1690 return arc_mpy_i(buf, REG_LO(rd), REG_LO(rd), imm); in mul_r32_i32()
1702 u8 mul_r64(u8 *buf, u8 rd, u8 rs) in mul_r64() argument
1708 const u8 B_lo = REG_LO(rd); in mul_r64()
1709 const u8 B_hi = REG_HI(rd); in mul_r64()
1748 u8 mul_r64_i32(u8 *buf, u8 rd, s32 imm) in mul_r64_i32() argument
1752 const u8 B_lo = REG_LO(rd); in mul_r64_i32()
1753 const u8 B_hi = REG_HI(rd); in mul_r64_i32()
1774 u8 div_r32(u8 *buf, u8 rd, u8 rs, bool sign_ext) in div_r32() argument
1777 return arc_divs_r(buf, REG_LO(rd), REG_LO(rs)); in div_r32()
1779 return arc_divu_r(buf, REG_LO(rd), REG_LO(rs)); in div_r32()
1782 u8 div_r32_i32(u8 *buf, u8 rd, s32 imm, bool sign_ext) in div_r32_i32() argument
1788 return arc_divs_i(buf, REG_LO(rd), imm); in div_r32_i32()
1790 return arc_divu_i(buf, REG_LO(rd), imm); in div_r32_i32()
1793 u8 mod_r32(u8 *buf, u8 rd, u8 rs, bool sign_ext) in mod_r32() argument
1796 return arc_rems_r(buf, REG_LO(rd), REG_LO(rs)); in mod_r32()
1798 return arc_remu_r(buf, REG_LO(rd), REG_LO(rs)); in mod_r32()
1801 u8 mod_r32_i32(u8 *buf, u8 rd, s32 imm, bool sign_ext) in mod_r32_i32() argument
1807 return arc_rems_i(buf, REG_LO(rd), imm); in mod_r32_i32()
1809 return arc_remu_i(buf, REG_LO(rd), imm); in mod_r32_i32()
1812 u8 and_r32(u8 *buf, u8 rd, u8 rs) in and_r32() argument
1814 return arc_and_r(buf, REG_LO(rd), REG_LO(rs)); in and_r32()
1817 u8 and_r32_i32(u8 *buf, u8 rd, s32 imm) in and_r32_i32() argument
1819 return arc_and_i(buf, REG_LO(rd), imm); in and_r32_i32()
1822 u8 and_r64(u8 *buf, u8 rd, u8 rs) in and_r64() argument
1826 len = arc_and_r(buf, REG_LO(rd), REG_LO(rs)); in and_r64()
1827 len += arc_and_r(BUF(buf, len), REG_HI(rd), REG_HI(rs)); in and_r64()
1831 u8 and_r64_i32(u8 *buf, u8 rd, s32 imm) in and_r64_i32() argument
1836 len += and_r64(BUF(buf, len), rd, JIT_REG_TMP); in and_r64_i32()
1840 static u8 tst_r32(u8 *buf, u8 rd, u8 rs) in tst_r32() argument
1842 return arc_tst_r(buf, REG_LO(rd), REG_LO(rs)); in tst_r32()
1845 u8 or_r32(u8 *buf, u8 rd, u8 rs) in or_r32() argument
1847 return arc_or_r(buf, REG_LO(rd), REG_LO(rd), REG_LO(rs)); in or_r32()
1850 u8 or_r32_i32(u8 *buf, u8 rd, s32 imm) in or_r32_i32() argument
1852 return arc_or_i(buf, REG_LO(rd), imm); in or_r32_i32()
1855 u8 or_r64(u8 *buf, u8 rd, u8 rs) in or_r64() argument
1859 len = arc_or_r(buf, REG_LO(rd), REG_LO(rd), REG_LO(rs)); in or_r64()
1860 len += arc_or_r(BUF(buf, len), REG_HI(rd), REG_HI(rd), REG_HI(rs)); in or_r64()
1864 u8 or_r64_i32(u8 *buf, u8 rd, s32 imm) in or_r64_i32() argument
1869 len += or_r64(BUF(buf, len), rd, JIT_REG_TMP); in or_r64_i32()
1873 u8 xor_r32(u8 *buf, u8 rd, u8 rs) in xor_r32() argument
1875 return arc_xor_r(buf, REG_LO(rd), REG_LO(rs)); in xor_r32()
1878 u8 xor_r32_i32(u8 *buf, u8 rd, s32 imm) in xor_r32_i32() argument
1880 return arc_xor_i(buf, REG_LO(rd), imm); in xor_r32_i32()
1883 u8 xor_r64(u8 *buf, u8 rd, u8 rs) in xor_r64() argument
1887 len = arc_xor_r(buf, REG_LO(rd), REG_LO(rs)); in xor_r64()
1888 len += arc_xor_r(BUF(buf, len), REG_HI(rd), REG_HI(rs)); in xor_r64()
1892 u8 xor_r64_i32(u8 *buf, u8 rd, s32 imm) in xor_r64_i32() argument
1897 len += xor_r64(BUF(buf, len), rd, JIT_REG_TMP); in xor_r64_i32()
1902 u8 lsh_r32(u8 *buf, u8 rd, u8 rs) in lsh_r32() argument
1904 return arc_asl_r(buf, REG_LO(rd), REG_LO(rd), REG_LO(rs)); in lsh_r32()
1907 u8 lsh_r32_i32(u8 *buf, u8 rd, u8 imm) in lsh_r32_i32() argument
1909 return arc_asli_r(buf, REG_LO(rd), REG_LO(rd), imm); in lsh_r32_i32()
1927 * not t0, C_lo # The first 3 lines are almost the same as:
1944 * "B << 3" are the same.
1948 u8 lsh_r64(u8 *buf, u8 rd, u8 rs) in lsh_r64() argument
1953 const u8 B_lo = REG_LO(rd); in lsh_r64()
1954 const u8 B_hi = REG_HI(rd); in lsh_r64()
1981 u8 lsh_r64_i32(u8 *buf, u8 rd, s32 imm) in lsh_r64_i32() argument
1984 const u8 B_lo = REG_LO(rd); in lsh_r64_i32()
1985 const u8 B_hi = REG_HI(rd); in lsh_r64_i32()
2006 u8 rsh_r32(u8 *buf, u8 rd, u8 rs) in rsh_r32() argument
2008 return arc_lsr_r(buf, REG_LO(rd), REG_LO(rd), REG_LO(rs)); in rsh_r32()
2011 u8 rsh_r32_i32(u8 *buf, u8 rd, u8 imm) in rsh_r32_i32() argument
2013 return arc_lsri_r(buf, REG_LO(rd), REG_LO(rd), imm); in rsh_r32_i32()
2043 u8 rsh_r64(u8 *buf, u8 rd, u8 rs) in rsh_r64() argument
2048 const u8 B_lo = REG_LO(rd); in rsh_r64()
2049 const u8 B_hi = REG_HI(rd); in rsh_r64()
2076 u8 rsh_r64_i32(u8 *buf, u8 rd, s32 imm) in rsh_r64_i32() argument
2079 const u8 B_lo = REG_LO(rd); in rsh_r64_i32()
2080 const u8 B_hi = REG_HI(rd); in rsh_r64_i32()
2101 u8 arsh_r32(u8 *buf, u8 rd, u8 rs) in arsh_r32() argument
2103 return arc_asr_r(buf, REG_LO(rd), REG_LO(rd), REG_LO(rs)); in arsh_r32()
2106 u8 arsh_r32_i32(u8 *buf, u8 rd, u8 imm) in arsh_r32_i32() argument
2108 return arc_asri_r(buf, REG_LO(rd), REG_LO(rd), imm); in arsh_r32_i32()
2140 u8 arsh_r64(u8 *buf, u8 rd, u8 rs) in arsh_r64() argument
2145 const u8 B_lo = REG_LO(rd); in arsh_r64()
2146 const u8 B_hi = REG_HI(rd); in arsh_r64()
2174 u8 arsh_r64_i32(u8 *buf, u8 rd, s32 imm) in arsh_r64_i32() argument
2177 const u8 B_lo = REG_LO(rd); in arsh_r64_i32()
2178 const u8 B_hi = REG_HI(rd); in arsh_r64_i32()
2200 u8 gen_swap(u8 *buf, u8 rd, u8 size, u8 endian, bool force, bool do_zext) in gen_swap() argument
2215 len = arc_asli_r(buf, REG_LO(rd), REG_LO(rd), 16); in gen_swap()
2218 len += arc_swape_r(BUF(buf, len), REG_LO(rd)); in gen_swap()
2220 len += zext(BUF(buf, len), rd); in gen_swap()
2230 len = arc_xor_r(buf, REG_HI(rd), REG_LO(rd)); in gen_swap()
2231 len += arc_xor_r(BUF(buf, len), REG_LO(rd), REG_HI(rd)); in gen_swap()
2232 len += arc_xor_r(BUF(buf, len), REG_HI(rd), REG_LO(rd)); in gen_swap()
2233 len += arc_swape_r(BUF(buf, len), REG_LO(rd)); in gen_swap()
2234 len += arc_swape_r(BUF(buf, len), REG_HI(rd)); in gen_swap()
2247 len = arc_and_i(buf, REG_LO(rd), 0xffff); in gen_swap()
2251 len += zext(BUF(buf, len), rd); in gen_swap()
2519 #define JCC64_NR_OF_JMPS 3 /* Number of jumps in jcc64 template. */
2520 #define JCC64_INSNS_TO_END 3 /* Number of insn. inclusive the 2nd jmp to end. */
2549 * bhi @target # 3: u>
2560 * bhs @target # 3: u>=
2571 * blo @target # 3: u<
2582 * bls @target # 3: u<=
2593 * bhi @target # 3: u>
2604 * bhs @target # 3: u>=
2615 * blo @target # 3: u<
2626 * bls @target # 3: u<=
2643 return (s32)(targ_off - (curr_off & ~3L)); in get_displacement()
2676 static int gen_j_eq_64(u8 *buf, u8 rd, u8 rs, bool eq, in gen_j_eq_64() argument
2682 len += arc_cmp_r(BUF(buf, len), REG_HI(rd), REG_HI(rs)); in gen_j_eq_64()
2683 len += arc_cmpz_r(BUF(buf, len), REG_LO(rd), REG_LO(rs)); in gen_j_eq_64()
2695 static u8 gen_jset_64(u8 *buf, u8 rd, u8 rs, u32 curr_off, u32 targ_off) in gen_jset_64() argument
2700 len += arc_tst_r(BUF(buf, len), REG_HI(rd), REG_HI(rs)); in gen_jset_64()
2701 len += arc_tstz_r(BUF(buf, len), REG_LO(rd), REG_LO(rs)); in gen_jset_64()
2756 * 3rd instruction. See comments of "gen_j{set,_eq}_64()". in check_jmp_64()
2804 static u8 gen_jcc_64(u8 *buf, u8 rd, u8 rs, u8 cond, in gen_jcc_64() argument
2813 len += arc_cmp_r(buf, REG_HI(rd), REG_HI(rs)); in gen_jcc_64()
2825 len += arc_cmp_r(BUF(buf, len), REG_LO(rd), REG_LO(rs)); in gen_jcc_64()
2839 u8 gen_jmp_64(u8 *buf, u8 rd, u8 rs, u8 cond, u32 curr_off, u32 targ_off) in gen_jmp_64() argument
2858 len = gen_jcc_64(buf, rd, rs, cond, curr_off, targ_off); in gen_jmp_64()
2864 len = gen_j_eq_64(buf, rd, rs, eq, curr_off, targ_off); in gen_jmp_64()
2867 len = gen_jset_64(buf, rd, rs, curr_off, targ_off); in gen_jmp_64()
2931 * ARC_CC_SET rd, rs, @target
2932 * tst rd, rs
2935 * ARC_CC_xx rd, rs, @target
2936 * cmp rd, rs
2939 u8 gen_jmp_32(u8 *buf, u8 rd, u8 rs, u8 cond, u32 curr_off, u32 targ_off) in gen_jmp_32() argument
2960 len = tst_r32(buf, rd, rs); in gen_jmp_32()
2962 len = cmp_r32(buf, rd, rs); in gen_jmp_32()