Lines Matching +full:0 +full:xff0000ff
261 err = swreg_to_unrestricted(reg_none(), base, reg_imm(0), ®); in emit_rtn()
267 __emit_br_alu(nfp_prog, reg.areg, reg.breg, 0, defer, reg.dst_lmextn, in emit_rtn()
305 err = swreg_to_unrestricted(dst, dst, reg_imm(imm & 0xff), ®); in emit_immed()
336 * 0. Even after we do this subtraction, shift amount 0 will be turned in __emit_shf()
337 * into 32 which will eventually be encoded the same as 0 because only in __emit_shf()
339 * FIELD_PREP check done later on shift mask (0x1f), due to 32 is out of in __emit_shf()
390 emit_shf(nfp_prog, dst, lreg, op, rreg, sc, 0); in emit_shf_indir()
567 err = swreg_to_unrestricted(reg_none(), src, reg_imm(0), ®); in emit_csr_wr()
578 /* CSR value is read in following immed[gpr, 0] */
581 __emit_lcsr(nfp_prog, 0, 0, false, addr, false, false); in __emit_csr_rd()
586 __emit_immed(nfp_prog, UR_REG_IMM, UR_REG_IMM, 0, 0, 0, 0, 0, 0, 0); in emit_nop()
592 if (!(imm & 0xffff0000)) { in pack_immed()
595 } else if (!(imm & 0xff0000ff)) { in pack_immed()
598 } else if (!(imm & 0x0000ffff)) { in pack_immed()
618 emit_immed(nfp_prog, dst, imm & 0xffff, IMMED_WIDTH_ALL, in wrp_immed()
629 wrp_immed(nfp_prog, reg_both(dst + 1), 0); in wrp_zext()
636 if (imm > 0xffff) { in wrp_immed_relo()
719 if (offset == reg_imm(0)) { in addr40_offset()
727 reg_imm(0)); in addr40_offset()
735 bool descending_seq = meta->ldst_gather_len < 0; in nfp_cpp_memcpy()
758 src_40bit_addr ? CMD_MODE_40b_BA : CMD_MODE_32b, 0, in nfp_cpp_memcpy()
762 for (i = 0; i < xfer_num; i++) in nfp_cpp_memcpy()
769 emit_cmd(nfp_prog, CMD_TGT_WRITE8_SWAP, CMD_MODE_32b, 0, in nfp_cpp_memcpy()
774 emit_cmd(nfp_prog, CMD_TGT_WRITE32_SWAP, CMD_MODE_32b, 0, in nfp_cpp_memcpy()
781 emit_cmd_indir(nfp_prog, CMD_TGT_WRITE8_SWAP, CMD_MODE_32b, 0, in nfp_cpp_memcpy()
788 emit_cmd_indir(nfp_prog, CMD_TGT_WRITE32_SWAP, CMD_MODE_32b, 0, in nfp_cpp_memcpy()
795 emit_cmd(nfp_prog, CMD_TGT_WRITE32_SWAP, CMD_MODE_32b, 0, in nfp_cpp_memcpy()
812 emit_cmd_indir(nfp_prog, CMD_TGT_WRITE32_SWAP, CMD_MODE_32b, 0, in nfp_cpp_memcpy()
819 (len & 0x3) - 1, CMD_CTX_SWAP); in nfp_cpp_memcpy()
833 xfer_num = 0; in nfp_cpp_memcpy()
851 reg_xfer(0)); in nfp_cpp_memcpy()
862 wrp_immed(nfp_prog, reg_both(meta->insn.dst_reg * 2 + 1), 0); in nfp_cpp_memcpy()
864 return 0; in nfp_cpp_memcpy()
878 shift = size < 4 ? 4 - size : 0; in data_ld()
880 emit_cmd(nfp_prog, CMD_TGT_READ8, CMD_MODE_32b, 0, in data_ld()
883 i = 0; in data_ld()
886 reg_xfer(0), SHF_SC_R_SHF, shift * 8); in data_ld()
894 return 0; in data_ld()
909 mask = size < 4 ? GENMASK(size - 1, 0) : 0; in data_ld_host_order()
911 emit_cmd(nfp_prog, CMD_TGT_READ32_SWAP, mode, 0, in data_ld_host_order()
914 i = 0; in data_ld_host_order()
917 reg_xfer(0), SHF_SC_NONE, 0, true); in data_ld_host_order()
925 return 0; in data_ld_host_order()
963 emit_br_relo(nfp_prog, BR_BLO, BR_OFF_RELO, 0, RELO_BR_GO_ABORT); in construct_data_ind_ld()
966 return data_ld(nfp_prog, meta, imm_b(nfp_prog), 0, size); in construct_data_ind_ld()
978 emit_br_relo(nfp_prog, BR_BLO, BR_OFF_RELO, 0, RELO_BR_GO_ABORT); in construct_data_ld()
982 return data_ld(nfp_prog, meta, tmp_reg, 0, size); in construct_data_ld()
991 for (i = 0; i * 4 < size; i++) in data_stx_host_order()
994 emit_cmd(nfp_prog, CMD_TGT_WRITE8_SWAP, CMD_MODE_32b, 0, in data_stx_host_order()
997 return 0; in data_stx_host_order()
1004 wrp_immed(nfp_prog, reg_xfer(0), imm); in data_st_host_order()
1008 emit_cmd(nfp_prog, CMD_TGT_WRITE8_SWAP, CMD_MODE_32b, 0, in data_st_host_order()
1011 return 0; in data_st_host_order()
1039 should_inc ? reg_lm_inc(3) : reg_lm(lm3 ? 3 : 0, idx)); in wrp_lmem_load()
1040 return 0; in wrp_lmem_load()
1051 if (WARN_ON_ONCE(mask > 0xf)) in wrp_lmem_load()
1068 reg = reg_lm(lm3 ? 3 : 0, idx); in wrp_lmem_load()
1077 wrp_mov(nfp_prog, reg, reg_lm(0, idx)); in wrp_lmem_load()
1085 return 0; in wrp_lmem_load()
1108 should_inc ? reg_lm_inc(3) : reg_lm(lm3 ? 3 : 0, idx), in wrp_lmem_store()
1110 return 0; in wrp_lmem_store()
1121 if (WARN_ON_ONCE(mask > 0xf)) in wrp_lmem_store()
1138 reg = reg_lm(lm3 ? 3 : 0, idx); in wrp_lmem_store()
1145 wrp_mov(nfp_prog, reg, reg_lm(0, idx)); in wrp_lmem_store()
1152 wrp_mov(nfp_prog, reg_lm(0, idx), reg); in wrp_lmem_store()
1157 return 0; in wrp_lmem_store()
1170 u32 gpr_byte = 0; in mem_op_stack()
1261 return 0; in mem_op_stack()
1271 wrp_immed(nfp_prog, reg_both(dst), 0); in wrp_alu_imm()
1277 wrp_immed(nfp_prog, reg_both(dst), ~0U); in wrp_alu_imm()
1302 return 0; in wrp_alu64_imm()
1305 wrp_alu_imm(nfp_prog, insn->dst_reg * 2, alu_op, imm & ~0U); in wrp_alu64_imm()
1308 return 0; in wrp_alu64_imm()
1321 return 0; in wrp_alu64_reg()
1334 return 0; in wrp_alu32_imm()
1346 return 0; in wrp_alu32_reg()
1354 emit_br(nfp_prog, br_mask, off, 0); in wrp_test_reg_one()
1369 return 0; in wrp_test_reg()
1391 /* br_mask of 0 is BR_BEQ which we don't use in jump code table */ in nfp_jmp_code_get()
1416 tmp_reg = ur_load_imm_any(nfp_prog, imm & ~0U, imm_b(nfp_prog)); in cmp_imm()
1432 emit_br(nfp_prog, code->br_mask, insn->off, 0); in cmp_imm()
1434 return 0; in cmp_imm()
1460 emit_br(nfp_prog, code->br_mask, insn->off, 0); in cmp_reg()
1462 return 0; in cmp_reg()
1467 emit_ld_field(nfp_prog, reg_both(gpr_out), 0xf, reg_in, in wrp_end32()
1469 emit_ld_field(nfp_prog, reg_both(gpr_out), 0x5, reg_a(gpr_out), in wrp_end32()
1487 wrp_immed(nfp_prog, dst_hi, 0); in wrp_mul_u32()
1529 return 0; in wrp_mul()
1540 wrp_immed(nfp_prog, dst_both, 0); in wrp_div_imm()
1541 return 0; in wrp_div_imm()
1551 * immed[imm, 0] in wrp_div_imm()
1552 * alu[dst, imm, +carry, 0] in wrp_div_imm()
1559 wrp_immed(nfp_prog, imm_a(nfp_prog), 0); in wrp_div_imm()
1561 reg_imm(0)); in wrp_div_imm()
1562 return 0; in wrp_div_imm()
1571 pre_shift = 0; in wrp_div_imm()
1597 return 0; in wrp_div_imm()
1620 wrp_immed(nfp_prog, reg_both(0), 0); in adjust_head()
1621 wrp_immed(nfp_prog, reg_both(1), 0); in adjust_head()
1624 * also eliminate the following if (r0 == 0) branch. in adjust_head()
1627 return 0; in adjust_head()
1640 emit_br(nfp_prog, BR_BLO, ret_einval, 0); in adjust_head()
1643 emit_br(nfp_prog, BR_BLO, ret_einval, 0); in adjust_head()
1650 emit_br(nfp_prog, BR_BMI, ret_einval, 0); in adjust_head()
1653 wrp_immed(nfp_prog, reg_both(0), 0); in adjust_head()
1654 wrp_immed(nfp_prog, reg_both(1), 0); in adjust_head()
1657 emit_ld_field(nfp_prog, pptr_reg(nfp_prog), 0x3, tmp, SHF_SC_NONE, 0); in adjust_head()
1671 wrp_immed(nfp_prog, reg_both(0), -22); in adjust_head()
1672 wrp_immed(nfp_prog, reg_both(1), ~0); in adjust_head()
1677 return 0; in adjust_head()
1695 /* delta == 0 is not allowed by the kernel, add must overflow to make in adjust_tail()
1698 emit_br(nfp_prog, BR_BCC, ret_einval, 0); in adjust_tail()
1702 emit_br(nfp_prog, BR_BMI, ret_einval, 0); in adjust_tail()
1710 wrp_immed(nfp_prog, reg_both(0), 0); in adjust_tail()
1711 wrp_immed(nfp_prog, reg_both(1), 0); in adjust_tail()
1716 wrp_immed(nfp_prog, reg_both(0), -22); in adjust_tail()
1717 wrp_immed(nfp_prog, reg_both(1), ~0); in adjust_tail()
1722 return 0; in adjust_tail()
1748 wrp_mov(nfp_prog, reg_a(0), reg_a(2)); in map_call_stack_common()
1751 wrp_immed_relo(nfp_prog, reg_b(0), ret_tgt, RELO_IMMED_REL); in map_call_stack_common()
1758 return 0; in map_call_stack_common()
1763 return 0; in map_call_stack_common()
1770 /* CSR value is read in following immed[gpr, 0] */ in nfp_get_prandom_u32()
1771 emit_immed(nfp_prog, reg_both(0), 0, in nfp_get_prandom_u32()
1773 emit_immed(nfp_prog, reg_both(1), 0, in nfp_get_prandom_u32()
1775 return 0; in nfp_get_prandom_u32()
1795 wrp_immed_relo(nfp_prog, reg_b(0), ret_tgt, RELO_IMMED_REL); in nfp_perf_event_output()
1800 return 0; in nfp_perf_event_output()
1812 ALU_OP_AND_NOT_B, reg_imm(0xff)); in nfp_queue_select()
1820 pv_qsel_val(nfp_prog), 0x1, reg_b(meta->insn.src_reg * 2), in nfp_queue_select()
1821 SHF_SC_NONE, 0); in nfp_queue_select()
1826 pv_qsel_val(nfp_prog), 0x1, reg_imm(NFP_NET_RXR_MAX), in nfp_queue_select()
1827 SHF_SC_NONE, 0); in nfp_queue_select()
1832 return 0; in nfp_queue_select()
1850 wrp_immed(nfp_prog, reg_both(dst + 1), 0); in mov_reg64()
1856 return 0; in mov_reg64()
1863 wrp_immed(nfp_prog, reg_both(meta->insn.dst_reg * 2), imm & ~0U); in mov_imm64()
1866 return 0; in mov_imm64()
1910 return 0; in add_reg64()
1918 wrp_alu_imm(nfp_prog, insn->dst_reg * 2, ALU_OP_ADD, imm & ~0U); in add_imm64()
1921 return 0; in add_imm64()
1935 return 0; in sub_reg64()
1943 wrp_alu_imm(nfp_prog, insn->dst_reg * 2, ALU_OP_SUB, imm & ~0U); in sub_imm64()
1946 return 0; in sub_imm64()
1978 emit_alu(nfp_prog, reg_both(insn->dst_reg * 2), reg_imm(0), in neg_reg64()
1980 emit_alu(nfp_prog, reg_both(insn->dst_reg * 2 + 1), reg_imm(0), in neg_reg64()
1983 return 0; in neg_reg64()
1988 * dst_high = dst_low << shift_amt[4:0]
1989 * dst_low = 0;
1999 return 0; in __shl_imm64()
2009 wrp_immed(nfp_prog, reg_both(dst), 0); in __shl_imm64()
2013 wrp_immed(nfp_prog, reg_both(dst), 0); in __shl_imm64()
2016 return 0; in __shl_imm64()
2031 emit_alu(nfp_prog, reg_none(), imm_a(nfp_prog), ALU_OP_OR, reg_imm(0)); in shl_reg64_lt32_high()
2039 emit_alu(nfp_prog, reg_none(), reg_a(src), ALU_OP_OR, reg_imm(0)); in shl_reg64_lt32_low()
2052 emit_alu(nfp_prog, reg_none(), reg_a(src), ALU_OP_OR, reg_imm(0)); in shl_reg64_ge32()
2055 wrp_immed(nfp_prog, reg_both(dst), 0); in shl_reg64_ge32()
2082 emit_br_bset(nfp_prog, reg_a(src), 5, label_ge32, 0); in shl_reg64()
2098 return 0; in shl_reg64()
2103 * dst_high = 0;
2104 * dst_low = dst_high >> shift_amt[4:0]
2114 return 0; in __shr_imm64()
2123 wrp_immed(nfp_prog, reg_both(dst + 1), 0); in __shr_imm64()
2127 wrp_immed(nfp_prog, reg_both(dst + 1), 0); in __shr_imm64()
2130 return 0; in __shr_imm64()
2144 emit_alu(nfp_prog, reg_none(), reg_a(src), ALU_OP_OR, reg_imm(0)); in shr_reg64_lt32_high()
2151 emit_alu(nfp_prog, reg_none(), reg_a(src), ALU_OP_OR, reg_imm(0)); in shr_reg64_lt32_low()
2164 emit_alu(nfp_prog, reg_none(), reg_a(src), ALU_OP_OR, reg_imm(0)); in shr_reg64_ge32()
2167 wrp_immed(nfp_prog, reg_both(dst + 1), 0); in shr_reg64_ge32()
2194 emit_br_bset(nfp_prog, reg_a(src), 5, label_ge32, 0); in shr_reg64()
2209 return 0; in shr_reg64()
2218 return 0; in __ashr_imm64()
2225 reg_imm(0)); in __ashr_imm64()
2235 reg_imm(0)); in __ashr_imm64()
2242 return 0; in __ashr_imm64()
2308 emit_br_bset(nfp_prog, reg_a(src), 5, label_ge32, 0); in ashr_reg64()
2323 return 0; in ashr_reg64()
2331 wrp_immed(nfp_prog, reg_both(insn->dst_reg * 2 + 1), 0); in mov_reg()
2333 return 0; in mov_reg()
2341 wrp_immed(nfp_prog, reg_both(insn->dst_reg * 2 + 1), 0); in mov_imm()
2343 return 0; in mov_imm()
2420 emit_alu(nfp_prog, reg_both(dst), reg_imm(0), ALU_OP_SUB, reg_b(dst)); in neg_reg()
2423 return 0; in neg_reg()
2433 reg_imm(0)); in __ashr_imm()
2439 return 0; in __ashr_imm()
2463 return 0; in ashr_reg()
2482 return 0; in __shr_imm()
2506 emit_alu(nfp_prog, reg_none(), reg_a(src), ALU_OP_OR, reg_imm(0)); in shr_reg()
2510 return 0; in shr_reg()
2521 return 0; in __shl_imm()
2547 return 0; in shl_reg()
2557 emit_ld_field(nfp_prog, reg_both(gpr), 0x9, reg_b(gpr), in end_reg32()
2559 emit_ld_field(nfp_prog, reg_both(gpr), 0xe, reg_a(gpr), in end_reg32()
2562 wrp_immed(nfp_prog, reg_both(gpr + 1), 0); in end_reg32()
2566 wrp_immed(nfp_prog, reg_both(gpr + 1), 0); in end_reg32()
2576 return 0; in end_reg32()
2597 return 0; in imm_ld8_part2()
2603 return 0; in imm_ld8()
2674 wrp_immed(nfp_prog, reg_both(meta->insn.dst_reg * 2 + 1), 0); in mem_ldx_skb()
2676 return 0; in mem_ldx_skb()
2700 wrp_immed(nfp_prog, reg_both(meta->insn.dst_reg * 2 + 1), 0); in mem_ldx_xdp()
2702 return 0; in mem_ldx_xdp()
2751 emit_cmd_any(nfp_prog, CMD_TGT_READ32_SWAP, CMD_MODE_32b, 0, src_base, in mem_ldx_data_init_pktcache()
2764 u8 len_lo = size, len_mid = 0; in mem_ldx_data_from_pktcache_unaligned()
2787 return 0; in mem_ldx_data_from_pktcache_unaligned()
2806 return 0; in mem_ldx_data_from_pktcache_unaligned()
2824 wrp_reg_subpart(nfp_prog, dst_lo, src_lo, size, 0); in mem_ldx_data_from_pktcache_aligned()
2836 return 0; in mem_ldx_data_from_pktcache_aligned()
3054 wrp_immed(nfp_prog, max_imm, 0xffff); in mem_xadd()
3058 reg_imm(0), ALU_OP_SUB_C, reg_b(src_gpr + 1)); in mem_xadd()
3059 emit_br(nfp_prog, BR_BLO, full_add, meta->insn.off ? 2 : 0); in mem_xadd()
3071 reg_a(dst_gpr + 1), ALU_OP_ADD_C, reg_imm(0)); in mem_xadd()
3083 FIELD_PREP(CMD_OV_LEN, 0x8 | is64 << 2)); in mem_xadd()
3085 emit_cmd_indir(nfp_prog, CMD_TGT_ADD_IMM, CMD_MODE_40b_BA, 0, in mem_xadd()
3086 addra, addrb, 0, CMD_CTX_NO_SWAP); in mem_xadd()
3089 emit_br(nfp_prog, BR_UNC, out, 0); in mem_xadd()
3097 emit_cmd(nfp_prog, CMD_TGT_ADD, CMD_MODE_40b_BA, 0, in mem_xadd()
3101 wrp_mov(nfp_prog, reg_xfer(0), reg_a(src_gpr)); in mem_xadd()
3109 return 0; in mem_xadd()
3130 emit_br(nfp_prog, BR_UNC, meta->insn.off, 0); in jump()
3132 return 0; in jump()
3144 if (imm & ~0U) { in jeq_imm()
3145 tmp_reg = ur_load_imm_any(nfp_prog, imm & ~0U, imm_b(nfp_prog)); in jeq_imm()
3159 emit_br(nfp_prog, BR_BEQ, insn->off, 0); in jeq_imm()
3161 return 0; in jeq_imm()
3172 emit_br(nfp_prog, BR_BEQ, insn->off, 0); in jeq32_imm()
3174 return 0; in jeq32_imm()
3184 tmp_reg = ur_load_imm_any(nfp_prog, imm & ~0U, imm_b(nfp_prog)); in jset_imm()
3187 /* Upper word of the mask can only be 0 or ~0 from sign extension, in jset_imm()
3194 emit_br(nfp_prog, BR_BNE, insn->off, 0); in jset_imm()
3196 return 0; in jset_imm()
3213 emit_br(nfp_prog, BR_BNE, insn->off, 0); in jne_imm()
3214 return 0; in jne_imm()
3217 tmp_reg = ur_load_imm_any(nfp_prog, imm & ~0U, imm_b(nfp_prog)); in jne_imm()
3220 emit_br(nfp_prog, BR_BNE, insn->off, 0); in jne_imm()
3223 return 0; in jne_imm()
3228 emit_br(nfp_prog, BR_BNE, insn->off, 0); in jne_imm()
3230 return 0; in jne_imm()
3246 emit_br(nfp_prog, BR_BEQ, insn->off, 0); in jeq_reg()
3248 return 0; in jeq_reg()
3320 wrp_immed_relo(nfp_prog, imm_b(nfp_prog), 0, RELO_IMMED_REL); in bpf_to_bpf_call()
3344 return 0; in bpf_to_bpf_call()
3378 return meta->subprog_idx == 0; in nfp_is_main_function()
3383 emit_br_relo(nfp_prog, BR_UNC, BR_OFF_RELO, 0, RELO_BR_GO_OUT); in goto_out()
3385 return 0; in goto_out()
3400 wrp_mov(nfp_prog, ret_reg(nfp_prog), reg_lm(0, 0)); in nfp_subprog_epilogue()
3403 wrp_mov(nfp_prog, ret_reg(nfp_prog), reg_lm(0, 0)); in nfp_subprog_epilogue()
3407 emit_rtn(nfp_prog, ret_reg(nfp_prog), 0); in nfp_subprog_epilogue()
3410 return 0; in nfp_subprog_epilogue()
3551 return 0; in nfp_fixup_immed_relo()
3629 return 0; in nfp_fixup_branches()
3634 wrp_immed(nfp_prog, plen_reg(nfp_prog), GENMASK(13, 0)); in nfp_intro()
3643 wrp_mov(nfp_prog, reg_lm(0, 0), ret_reg(nfp_prog)); in nfp_subprog_prologue()
3663 * 0,1 ok NOT SUPPORTED[1] in nfp_outro_tc_da()
3664 * 2 drop 0x22 -> drop, count as stat1 in nfp_outro_tc_da()
3665 * 4,5 nuke 0x02 -> drop in nfp_outro_tc_da()
3666 * 7 redir 0x44 -> redir, count as stat2 in nfp_outro_tc_da()
3667 * * unspec 0x11 -> pass, count as stat0 in nfp_outro_tc_da()
3679 wrp_mov(nfp_prog, reg_a(0), NFP_BPF_ABI_FLAGS); in nfp_outro_tc_da()
3680 emit_ld_field(nfp_prog, reg_a(0), 0xc, reg_imm(0x11), SHF_SC_L_SHF, 16); in nfp_outro_tc_da()
3686 emit_alu(nfp_prog, reg_none(), reg_imm(7), ALU_OP_SUB, reg_b(0)); in nfp_outro_tc_da()
3687 emit_br(nfp_prog, BR_BLO, nfp_prog->tgt_abort, 0); in nfp_outro_tc_da()
3688 wrp_mov(nfp_prog, reg_a(0), NFP_BPF_ABI_FLAGS); in nfp_outro_tc_da()
3690 wrp_immed(nfp_prog, reg_b(2), 0x41221211); in nfp_outro_tc_da()
3691 wrp_immed(nfp_prog, reg_b(3), 0x41001211); in nfp_outro_tc_da()
3694 reg_none(), SHF_OP_NONE, reg_b(0), SHF_SC_L_SHF, 2); in nfp_outro_tc_da()
3696 emit_alu(nfp_prog, reg_none(), reg_a(1), ALU_OP_OR, reg_imm(0)); in nfp_outro_tc_da()
3698 reg_imm(0xf), SHF_OP_AND, reg_b(2), SHF_SC_R_SHF, 0); in nfp_outro_tc_da()
3700 emit_alu(nfp_prog, reg_none(), reg_a(1), ALU_OP_OR, reg_imm(0)); in nfp_outro_tc_da()
3702 reg_imm(0xf), SHF_OP_AND, reg_b(3), SHF_SC_R_SHF, 0); in nfp_outro_tc_da()
3708 emit_ld_field(nfp_prog, reg_a(0), 0xc, reg_b(2), SHF_SC_L_SHF, 16); in nfp_outro_tc_da()
3714 * 0 aborted 0x82 -> drop, count as stat3 in nfp_outro_xdp()
3715 * 1 drop 0x22 -> drop, count as stat1 in nfp_outro_xdp()
3716 * 2 pass 0x11 -> pass, count as stat0 in nfp_outro_xdp()
3717 * 3 tx 0x44 -> redir, count as stat2 in nfp_outro_xdp()
3718 * * unknown 0x82 -> drop, count as stat3 in nfp_outro_xdp()
3725 wrp_mov(nfp_prog, reg_a(0), NFP_BPF_ABI_FLAGS); in nfp_outro_xdp()
3726 emit_ld_field(nfp_prog, reg_a(0), 0xc, reg_imm(0x82), SHF_SC_L_SHF, 16); in nfp_outro_xdp()
3732 emit_alu(nfp_prog, reg_none(), reg_imm(3), ALU_OP_SUB, reg_b(0)); in nfp_outro_xdp()
3733 emit_br(nfp_prog, BR_BLO, nfp_prog->tgt_abort, 0); in nfp_outro_xdp()
3735 wrp_immed(nfp_prog, reg_b(2), 0x44112282); in nfp_outro_xdp()
3738 reg_none(), SHF_OP_NONE, reg_b(0), SHF_SC_L_SHF, 3); in nfp_outro_xdp()
3740 emit_alu(nfp_prog, reg_none(), reg_a(1), ALU_OP_OR, reg_imm(0)); in nfp_outro_xdp()
3742 reg_imm(0xff), SHF_OP_AND, reg_b(2), SHF_SC_R_SHF, 0); in nfp_outro_xdp()
3746 wrp_mov(nfp_prog, reg_a(0), NFP_BPF_ABI_FLAGS); in nfp_outro_xdp()
3747 emit_ld_field(nfp_prog, reg_a(0), 0xc, reg_b(2), SHF_SC_L_SHF, 16); in nfp_outro_xdp()
3776 wrp_mov(nfp_prog, reg_lm(0, 1 + idx), reg_b(adj)); in nfp_push_callee_registers()
3782 wrp_mov(nfp_prog, reg_lm(0, 1 + idx + 1), reg_b(adj + 1)); in nfp_push_callee_registers()
3801 wrp_mov(nfp_prog, reg_both(adj), reg_lm(0, 1 + idx)); in nfp_pop_callee_registers()
3807 wrp_mov(nfp_prog, reg_both(adj + 1), reg_lm(0, 1 + idx + 1)); in nfp_pop_callee_registers()
3837 depth = nfp_prog->subprog[0].stack_depth; in nfp_translate()
3928 if (insn.imm >= 0) in nfp_bpf_opt_neg_add_sub()
3962 [BPF_B] = 0x000000ffU, in nfp_bpf_opt_ld_mask()
3963 [BPF_H] = 0x0000ffffU, in nfp_bpf_opt_ld_mask()
3964 [BPF_W] = 0xffffffffU, in nfp_bpf_opt_ld_mask()
4026 if (next1.imm != 0x20 || next2.imm != 0x20) in nfp_bpf_opt_ld_shift()
4193 u8 count = 0; in nfp_bpf_opt_ldst_gather()
4232 head_ld_meta->ldst_gather_len = 0; in nfp_bpf_opt_ldst_gather()
4253 count = 0; in nfp_bpf_opt_ldst_gather()
4279 s16 range_start = 0, range_end = 0; in nfp_bpf_opt_pkt_cache()
4282 s32 range_ptr_off = 0; in nfp_bpf_opt_pkt_cache()
4283 u32 range_ptr_id = 0; in nfp_bpf_opt_pkt_cache()
4400 return 0; in nfp_bpf_optimize()
4429 meta2->insn.imm = 0; in nfp_bpf_replace_map_ptrs()
4432 return 0; in nfp_bpf_replace_map_ptrs()
4440 for (i = 0; i < len; i++) { in nfp_bpf_ustore_calc()
4450 return 0; in nfp_bpf_ustore_calc()
4545 for (i = 0; i < nfp_prog->prog_len; i++) { in nfp_bpf_relo_for_vnic()