| /linux/tools/include/linux/ |
| H A D | filter.h | 33 /* ALU ops on registers, bpf_add|sub|...: dst_reg += src_reg */ 39 .src_reg = SRC, \ 47 .src_reg = SRC, \ 57 .src_reg = 0, \ 65 .src_reg = 0, \ 75 .src_reg = 0, \ 79 /* Short form of mov, dst_reg = src_reg */ 85 .src_reg = SRC, \ 93 .src_reg = SRC, \ 103 .src_reg [all...] |
| /linux/samples/bpf/ |
| H A D | bpf_insn.h | 14 .src_reg = SRC, \ 22 .src_reg = SRC, \ 32 .src_reg = 0, \ 40 .src_reg = 0, \ 50 .src_reg = SRC, \ 58 .src_reg = SRC, \ 68 .src_reg = 0, \ 76 .src_reg = 0, \ 88 .src_reg = SRC, \ 94 .src_reg = 0, \ [all …]
|
| /linux/drivers/clk/socfpga/ |
| H A D | clk-gate.c | 58 u32 src_reg; in socfpga_clk_set_parent() local 62 src_reg = readl(clk_mgr_base_addr + CLKMGR_L4SRC); in socfpga_clk_set_parent() 63 src_reg &= ~0x1; in socfpga_clk_set_parent() 64 src_reg |= parent; in socfpga_clk_set_parent() 65 writel(src_reg, clk_mgr_base_addr + CLKMGR_L4SRC); in socfpga_clk_set_parent() 67 src_reg = readl(clk_mgr_base_addr + CLKMGR_L4SRC); in socfpga_clk_set_parent() 68 src_reg &= ~0x2; in socfpga_clk_set_parent() 69 src_reg |= (parent << 1); in socfpga_clk_set_parent() 70 writel(src_reg, clk_mgr_base_addr + CLKMGR_L4SRC); in socfpga_clk_set_parent() 72 src_reg = readl(clk_mgr_base_addr + CLKMGR_PERPLL_SRC); in socfpga_clk_set_parent() [all …]
|
| /linux/kernel/bpf/ |
| H A D | disasm.c | 25 if (!insn->src_reg && in __func_get_name() 38 if (insn->src_reg == BPF_PSEUDO_CALL) in __func_get_name() 40 else if (insn->src_reg == BPF_PSEUDO_KFUNC_CALL) in __func_get_name() 210 insn->src_reg, ((u32)insn->imm) >> 16, (u16)insn->imm); in print_bpf_insn() 213 insn->code, insn->dst_reg, insn->src_reg); in print_bpf_insn() 222 insn->src_reg); in print_bpf_insn() 241 insn->off, insn->src_reg); in print_bpf_insn() 250 insn->src_reg); in print_bpf_insn() 257 insn->code, probe_pfx, insn->src_reg, in print_bpf_insn() 261 insn->dst_reg, insn->off, insn->src_reg); in print_bpf_insn() [all …]
|
| H A D | const_fold.c | 55 struct const_arg_info *src = &ci_out[insn->src_reg]; in const_reg_xfer() 148 if (insn->src_reg == BPF_PSEUDO_FUNC) { in const_reg_xfer() 157 } else if (insn->src_reg == BPF_PSEUDO_MAP_VALUE || in const_reg_xfer() 158 insn->src_reg == BPF_PSEUDO_MAP_IDX_VALUE) { in const_reg_xfer() 162 } else if (insn->src_reg == BPF_PSEUDO_MAP_FD || in const_reg_xfer() 163 insn->src_reg == BPF_PSEUDO_MAP_IDX) { in const_reg_xfer() 166 } else if (insn->src_reg == 0) { in const_reg_xfer() 366 if (!(aux->const_reg_mask & BIT(insn->src_reg))) in bpf_prune_dead_branches() 368 src_val = aux->const_reg_vals[insn->src_reg]; in bpf_prune_dead_branches()
|
| H A D | verifier.c | 220 static void scalar32_min_max_add(struct bpf_reg_state *dst_reg, struct bpf_reg_state *src_reg); 221 static void scalar_min_max_add(struct bpf_reg_state *dst_reg, struct bpf_reg_state *src_reg); 542 return insn->code == (BPF_JMP | BPF_JCOND) && insn->src_reg == BPF_MAY_GOTO; in bpf_is_may_goto_insn() 3031 insn[i].src_reg == 0 && in check_subprogs() 3323 if (insn->src_reg != BPF_PSEUDO_KFUNC_CALL) in bpf_disasm_kfunc_name() 3431 struct bpf_reg_state *src_reg) in assign_scalar_id_before_mov() argument 3433 if (src_reg->type != SCALAR_VALUE) in assign_scalar_id_before_mov() 3440 if (src_reg->id & BPF_ADD_CONST) in assign_scalar_id_before_mov() 3441 clear_scalar_id(src_reg); in assign_scalar_id_before_mov() 3443 * Ensure that src_reg ha in assign_scalar_id_before_mov() 14851 scalar32_min_max_add(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_add() argument 14857 scalar_min_max_add(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_add() argument 14863 scalar32_min_max_sub(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_sub() argument 14869 scalar_min_max_sub(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_sub() argument 14875 scalar32_min_max_mul(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_mul() argument 14906 scalar_min_max_mul(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_mul() argument 14937 scalar32_min_max_udiv(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_udiv() argument 14949 scalar_min_max_udiv(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_udiv() argument 14961 scalar32_min_max_sdiv(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_sdiv() argument 14997 scalar_min_max_sdiv(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_sdiv() argument 15033 scalar32_min_max_umod(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_umod() argument 15052 scalar_min_max_umod(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_umod() argument 15071 scalar32_min_max_smod(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_smod() argument 15110 scalar_min_max_smod(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_smod() argument 15149 scalar32_min_max_and(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_and() argument 15170 scalar_min_max_and(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_and() argument 15193 scalar32_min_max_or(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_or() argument 15214 scalar_min_max_or(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_or() argument 15237 scalar32_min_max_xor(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_xor() argument 15253 scalar_min_max_xor(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_xor() argument 15285 scalar32_min_max_lsh(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_lsh() argument 15329 scalar_min_max_lsh(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_lsh() argument 15344 scalar32_min_max_rsh(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_rsh() argument 15374 scalar_min_max_rsh(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_rsh() argument 15406 scalar32_min_max_arsh(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar32_min_max_arsh() argument 15426 scalar_min_max_arsh(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg) scalar_min_max_arsh() argument 15496 is_safe_to_compute_dst_reg_range(struct bpf_insn * insn,const struct bpf_reg_state * src_reg) is_safe_to_compute_dst_reg_range() argument 15581 adjust_scalar_min_max_vals(struct bpf_verifier_env * env,struct bpf_insn * insn,struct bpf_reg_state * dst_reg,struct bpf_reg_state src_reg) adjust_scalar_min_max_vals() argument 15741 struct bpf_reg_state *regs = state->regs, *dst_reg, *src_reg; adjust_reg_min_max_vals() local 15979 struct bpf_reg_state *src_reg = regs + insn->src_reg; check_alu_op() local 16411 is_pkt_ptr_branch_taken(struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg,u8 opcode) is_pkt_ptr_branch_taken() argument 16742 try_match_pkt_pointers(const struct bpf_insn * insn,struct bpf_reg_state * dst_reg,struct bpf_reg_state * src_reg,struct bpf_verifier_state * this_branch,struct bpf_verifier_state * other_branch) try_match_pkt_pointers() argument 16961 struct bpf_reg_state *dst_reg, *other_branch_regs, *src_reg = NULL; check_cond_jmp_op() local [all...] |
| H A D | fixups.c | 745 zext_patch[1].src_reg = load_reg; in bpf_opt_subreg_zext_lo32_rnd_hi32() 1627 *patch++ = BPF_MOV64_REG(BPF_REG_AX, insn->src_reg); in bpf_do_misc_fixups() 1650 *patch++ = BPF_MOV64_REG(BPF_REG_AX, insn->src_reg); in bpf_do_misc_fixups() 1672 BPF_JNE | BPF_K, insn->src_reg, in bpf_do_misc_fixups() 1681 BPF_JEQ | BPF_K, insn->src_reg, in bpf_do_misc_fixups() 1712 *patch++ = BPF_MOV64_REG(BPF_REG_AX, insn->src_reg); in bpf_do_misc_fixups() 1771 off_reg = issrc ? insn->src_reg : insn->dst_reg; in bpf_do_misc_fixups() 1785 *patch++ = BPF_MOV64_REG(insn->dst_reg, insn->src_reg); in bpf_do_misc_fixups() 1786 insn->src_reg = BPF_REG_AX; in bpf_do_misc_fixups() 1873 (insn->src_reg == BPF_PSEUDO_MAP_VALUE || in bpf_do_misc_fixups() [all …]
|
| H A D | cgroup.c | 2489 BPF_SIZE(si->code), si->dst_reg, si->src_reg, in sysctl_convert_ctx_access() 2504 if (si->src_reg == treg || si->dst_reg == treg) in sysctl_convert_ctx_access() 2506 if (si->src_reg == treg || si->dst_reg == treg) in sysctl_convert_ctx_access() 2517 treg, si->src_reg, in sysctl_convert_ctx_access() 2527 si->dst_reg, si->src_reg, in sysctl_convert_ctx_access() 2668 si->dst_reg, si->src_reg, \ 2674 si->dst_reg, si->src_reg, \ 2714 if (si->src_reg == treg || si->dst_reg == treg) in cg_sockopt_convert_ctx_access() 2716 if (si->src_reg == treg || si->dst_reg == treg) in cg_sockopt_convert_ctx_access() 2728 treg, si->src_reg, in cg_sockopt_convert_ctx_access() [all …]
|
| /linux/arch/x86/net/ |
| H A D | bpf_jit_comp.c | 283 /* Encode 'dst_reg' and 'src_reg' registers into x86-64 opcode 'byte' */ 284 static u8 add_2reg(u8 byte, u32 dst_reg, u32 src_reg) in add_2reg() argument 286 return byte + reg2hex[dst_reg] + (reg2hex[src_reg] << 3); in add_2reg() 1005 static void emit_mov_reg(u8 **pprog, bool is64, u32 dst_reg, u32 src_reg) in emit_mov_reg() argument 1011 EMIT_mov(dst_reg, src_reg); in emit_mov_reg() 1014 if (is_ereg(dst_reg) || is_ereg(src_reg)) in emit_mov_reg() 1015 EMIT1(add_2mod(0x40, dst_reg, src_reg)); in emit_mov_reg() 1016 EMIT2(0x89, add_2reg(0xC0, dst_reg, src_reg)); in emit_mov_reg() 1023 u32 src_reg) in emit_movsx_reg() argument 1030 EMIT4(add_2mod(0x48, src_reg, dst_re in emit_movsx_reg() 1089 maybe_emit_mod(u8 ** pprog,u32 dst_reg,u32 src_reg,bool is64) maybe_emit_mod() argument 1115 emit_ldx(u8 ** pprog,u32 size,u32 dst_reg,u32 src_reg,int off) emit_ldx() argument 1145 emit_ldsx(u8 ** pprog,u32 size,u32 dst_reg,u32 src_reg,int off) emit_ldsx() argument 1167 emit_ldx_index(u8 ** pprog,u32 size,u32 dst_reg,u32 src_reg,u32 index_reg,int off) emit_ldx_index() argument 1193 emit_ldsx_index(u8 ** pprog,u32 size,u32 dst_reg,u32 src_reg,u32 index_reg,int off) emit_ldsx_index() argument 1215 emit_ldx_r12(u8 ** pprog,u32 size,u32 dst_reg,u32 src_reg,int off) emit_ldx_r12() argument 1220 emit_ldsx_r12(u8 ** prog,u32 size,u32 dst_reg,u32 src_reg,int off) emit_ldsx_r12() argument 1226 emit_stx(u8 ** pprog,u32 size,u32 dst_reg,u32 src_reg,int off) emit_stx() argument 1260 emit_stx_index(u8 ** pprog,u32 size,u32 dst_reg,u32 src_reg,u32 index_reg,int off) emit_stx_index() argument 1286 emit_stx_r12(u8 ** pprog,u32 size,u32 dst_reg,u32 src_reg,int off) emit_stx_r12() argument 1335 emit_atomic_rmw(u8 ** pprog,u32 atomic_op,u32 dst_reg,u32 src_reg,s16 off,u8 bpf_size) emit_atomic_rmw() argument 1377 emit_atomic_rmw_index(u8 ** pprog,u32 atomic_op,u32 size,u32 dst_reg,u32 src_reg,u32 index_reg,int off) emit_atomic_rmw_index() argument 1428 emit_atomic_ld_st(u8 ** pprog,u32 atomic_op,u32 dst_reg,u32 src_reg,s16 off,u8 bpf_size) emit_atomic_ld_st() argument 1449 emit_atomic_ld_st_index(u8 ** pprog,u32 atomic_op,u32 size,u32 dst_reg,u32 src_reg,u32 index_reg,int off) emit_atomic_ld_st_index() argument 1603 emit_shiftx(u8 ** pprog,u32 dst_reg,u8 src_reg,bool is64,u8 op) emit_shiftx() argument 1862 u32 src_reg = insn->src_reg; do_jit() local 3078 emit_arena_arg_conv(u8 ** pprog,u32 src_reg,bool nullable,u32 base_lo) emit_arena_arg_conv() argument [all...] |
| /linux/tools/testing/selftests/bpf/ |
| H A D | disasm.c | 25 if (!insn->src_reg && in __func_get_name() 38 if (insn->src_reg == BPF_PSEUDO_CALL) in __func_get_name() 40 else if (insn->src_reg == BPF_PSEUDO_KFUNC_CALL) in __func_get_name() 179 * dst_reg = src_reg + <percpu_base_off> 210 insn->src_reg, ((u32)insn->imm) >> 16, (u16)insn->imm); in print_bpf_insn() 213 insn->code, insn->dst_reg, insn->src_reg); in print_bpf_insn() 222 insn->src_reg); in print_bpf_insn() 241 insn->off, insn->src_reg); in print_bpf_insn() 250 insn->src_reg); in print_bpf_insn() 257 insn->code, probe_pfx, insn->src_reg, in print_bpf_insn() [all...] |
| H A D | disasm_helpers.c | 30 if (insn->src_reg == BPF_PSEUDO_CALL) { in print_call_cb()
|
| /linux/include/linux/ |
| H A D | filter.h | 110 .src_reg = SRC, \ 121 .src_reg = SRC, \ 134 .src_reg = 0, \ 144 .src_reg = 0, \ 156 .src_reg = 0, \ 166 .src_reg = 0, \ 176 .src_reg = SRC, \ 184 .src_reg = SRC, \ 198 .src_reg = SRC, \ 213 .src_reg = 0, \ [all …]
|
| /linux/tools/bpf/bpftool/ |
| H A D | xlated_dumper.c | 170 if (insn->src_reg == BPF_PSEUDO_CALL && in print_call() 175 if (insn->src_reg == BPF_PSEUDO_CALL) in print_call() 187 if (insn->src_reg == BPF_PSEUDO_MAP_FD) in print_imm() 190 else if (insn->src_reg == BPF_PSEUDO_MAP_VALUE) in print_imm() 193 else if (insn->src_reg == BPF_PSEUDO_MAP_IDX_VALUE) in print_imm() 196 else if (insn->src_reg == BPF_PSEUDO_FUNC) in print_imm() 268 jsonw_printf(json_wtr, "\"0x%hhx\"", insn[i].src_reg); in dump_xlated_json()
|
| /linux/drivers/clk/ |
| H A D | clk-lochnagar.c | 35 u16 src_reg; member 89 .src_reg = LOCHNAGAR1_##ID##_SEL, \ 97 .src_reg = LOCHNAGAR2_##ID##_CTRL, \ 181 ret = regmap_update_bits(regmap, lclk->src_reg, lclk->src_mask, index); in lochnagar_clk_set_parent() 197 ret = regmap_read(regmap, lclk->src_reg, &val); in lochnagar_clk_get_parent()
|
| /linux/net/core/ |
| H A D | filter.c | 318 static u32 convert_skb_access(int skb_field, int dst_reg, int src_reg, in convert_skb_access() argument 327 *insn++ = BPF_LDX_MEM(BPF_W, dst_reg, src_reg, in convert_skb_access() 332 *insn++ = BPF_LDX_MEM(BPF_B, dst_reg, src_reg, PKT_TYPE_OFFSET); in convert_skb_access() 342 *insn++ = BPF_LDX_MEM(BPF_H, dst_reg, src_reg, in convert_skb_access() 350 *insn++ = BPF_LDX_MEM(BPF_H, dst_reg, src_reg, in convert_skb_access() 355 *insn++ = BPF_LDX_MEM(BPF_W, dst_reg, src_reg, in convert_skb_access() 751 insn->src_reg = BPF_REG_TMP; in bpf_convert_filter() 757 insn->src_reg = bpf_src == BPF_X ? BPF_REG_X : 0; in bpf_convert_filter() 7623 si->dst_reg, si->src_reg, \ in bpf_tcp_sock_convert_ctx_access() 7635 si->dst_reg, si->src_reg, \ in bpf_tcp_sock_convert_ctx_access() [all …]
|
| /linux/drivers/scsi/ |
| H A D | script_asm.pl | 516 $src_reg = "\U$1\E"; 525 $src_reg = "\U$1\E"; 534 $src_reg = undef; 581 print STDERR "source = $src_reg, data = $data8 , destination = $dst_reg\n" 585 if (($src_reg eq undef) || ($src_reg eq $dst_reg)) { 590 ($registers{$src_reg} << 16); 591 } elsif ($src_reg =~ /SFBR/i) {
|
| /linux/tools/testing/selftests/bpf/verifier/ |
| H A D | atomic_fetch.c | 95 #define __ATOMIC_FETCH_OP_TEST(src_reg, dst_reg, operand1, op, operand2, expect) \ argument 103 BPF_MOV64_IMM(src_reg, operand2), \ 105 dst_reg, src_reg, -8), \ 107 BPF_JMP_IMM(BPF_JEQ, src_reg, operand1, 2), \
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | stream.c | 203 .src_reg = 1, /* BPF_REG_1 */ in stream_arena_load_acquire_fault() 247 .src_reg = 2, /* BPF_REG_2 */ in stream_arena_xchg_fault() 297 .src_reg = 2, /* BPF_REG_2 */ in stream_arena_cmpxchg_fault()
|
| H A D | netif_receive_skb.c | 241 {.code = (__u8)1,.dst_reg = (__u8)0x2,.src_reg = (__u8)0x3,.off = (__s16)4,.imm = (__s32)5,}); in BPF_PROG() 243 {.code = 1, .dst_reg = 0x2, .src_reg = 0x3, .off = 4, in BPF_PROG()
|
| /linux/drivers/soc/mediatek/ |
| H A D | mtk-cmdq-helper.c | 30 u16 src_reg; member 296 .src_reg = addr_low in cmdq_pkt_read_s() 310 .src_reg = src_reg_idx in cmdq_pkt_write_s() 324 .src_reg = src_reg_idx, in cmdq_pkt_write_s_mask() 546 inst.src_reg = cmdq_operand_get_idx_value(left_operand); in cmdq_pkt_logic_command()
|
| /linux/drivers/gpu/ipu-v3/ |
| H A D | ipu-common.c | 697 u32 src_reg, sink_reg; in ipu_fsu_link() local 707 src_reg = ipu_cm_read(ipu, link->src.reg); in ipu_fsu_link() 708 src_reg &= ~link->src.mask; in ipu_fsu_link() 709 src_reg |= link->src.val; in ipu_fsu_link() 710 ipu_cm_write(ipu, src_reg, link->src.reg); in ipu_fsu_link() 731 u32 src_reg, sink_reg; in ipu_fsu_unlink() local 741 src_reg = ipu_cm_read(ipu, link->src.reg); in ipu_fsu_unlink() 742 src_reg &= ~link->src.mask; in ipu_fsu_unlink() 743 ipu_cm_write(ipu, src_reg, link->src.reg); in ipu_fsu_unlink()
|
| /linux/lib/crc/arm/ |
| H A D | crc-t10dif-core.S | 215 .macro fold_16_bytes, src_reg, dst_reg, p, load_next_consts 216 pmull16x64_\p FOLD_CONST, \src_reg 220 veor.8 \dst_reg, \dst_reg, \src_reg
|
| /linux/Documentation/bpf/standardization/ |
| H A D | instruction-set.rst | 187 |src_reg|dst_reg| 193 |dst_reg|src_reg| 196 **src_reg** 219 src_reg dst_reg 221 dst_reg src_reg 233 with 'opcode', 'dst_reg', 'src_reg', and 'offset' all set to zero. 309 X 1 use 'src_reg' register value as source operand 496 code value src_reg description notes 728 encoding defined in `Instruction encoding`_, and use the 'src_reg' field of the 732 with opcode subtypes in the 'src_reg' field, using new terms such as "map" [all …]
|
| /linux/Documentation/bpf/ |
| H A D | classic_vs_extended.rst | 212 op:16, jt:8, jf:8, k:32 ==> op:8, dst_reg:4, src_reg:4, off:16, imm:32 284 BPF_SRC(code) == BPF_X - use 'src_reg' register as source operand 325 In eBPF it means dst_reg = (u32) dst_reg + (u32) src_reg; similarly, 327 src_reg = (u32) src_reg ^ (u32) imm32 in eBPF. 334 dst_reg = dst_reg + src_reg
|
| /linux/tools/perf/util/annotate-arch/ |
| H A D | annotate-powerpc.c | 366 int src_reg = src->reg1; in update_insn_state_powerpc() local 369 dst->reg1 = src_reg; in update_insn_state_powerpc()
|