/linux-4.4.14/arch/s390/net/ |
D | bpf_jit_comp.c | 100 static inline u32 reg(u32 dst_reg, u32 src_reg) in reg() argument 102 return reg2hex[dst_reg] << 4 | reg2hex[src_reg]; in reg() 493 u32 dst_reg = insn->dst_reg; in bpf_jit_insn() local 505 EMIT4(0xb9160000, dst_reg, src_reg); in bpf_jit_insn() 509 EMIT4(0xb9040000, dst_reg, src_reg); in bpf_jit_insn() 513 EMIT6_IMM(0xc00f0000, dst_reg, imm); in bpf_jit_insn() 517 EMIT6_IMM(0xc0010000, dst_reg, imm); in bpf_jit_insn() 529 EMIT6_DISP_LH(0xe3000000, 0x0004, dst_reg, REG_0, REG_L, in bpf_jit_insn() 539 EMIT2(0x1a00, dst_reg, src_reg); in bpf_jit_insn() 540 EMIT_ZERO(dst_reg); in bpf_jit_insn() [all …]
|
/linux-4.4.14/arch/x86/net/ |
D | bpf_jit_comp.c | 165 static u8 add_1reg(u8 byte, u32 dst_reg) in add_1reg() argument 167 return byte + reg2hex[dst_reg]; in add_1reg() 171 static u8 add_2reg(u8 byte, u32 dst_reg, u32 src_reg) in add_2reg() argument 173 return byte + reg2hex[dst_reg] + (reg2hex[src_reg] << 3); in add_2reg() 357 u32 dst_reg = insn->dst_reg; in do_jit() local 386 EMIT1(add_2mod(0x48, dst_reg, src_reg)); in do_jit() 387 else if (is_ereg(dst_reg) || is_ereg(src_reg)) in do_jit() 388 EMIT1(add_2mod(0x40, dst_reg, src_reg)); in do_jit() 389 EMIT2(b2, add_2reg(0xC0, dst_reg, src_reg)); in do_jit() 394 EMIT_mov(dst_reg, src_reg); in do_jit() [all …]
|
/linux-4.4.14/tools/include/linux/ |
D | filter.h | 36 .dst_reg = DST, \ 44 .dst_reg = DST, \ 54 .dst_reg = DST, \ 62 .dst_reg = DST, \ 72 .dst_reg = DST, \ 82 .dst_reg = DST, \ 90 .dst_reg = DST, \ 100 .dst_reg = DST, \ 108 .dst_reg = DST, \ 118 .dst_reg = DST, \ [all …]
|
/linux-4.4.14/samples/bpf/ |
D | libbpf.h | 29 .dst_reg = DST, \ 37 .dst_reg = DST, \ 47 .dst_reg = DST, \ 55 .dst_reg = DST, \ 65 .dst_reg = DST, \ 73 .dst_reg = DST, \ 83 .dst_reg = DST, \ 95 .dst_reg = DST, \ 101 .dst_reg = 0, \ 120 .dst_reg = 0, \ [all …]
|
/linux-4.4.14/include/linux/ |
D | filter.h | 55 .dst_reg = DST, \ 63 .dst_reg = DST, \ 73 .dst_reg = DST, \ 81 .dst_reg = DST, \ 91 .dst_reg = DST, \ 101 .dst_reg = DST, \ 109 .dst_reg = DST, \ 119 .dst_reg = DST, \ 127 .dst_reg = DST, \ 139 .dst_reg = DST, \ [all …]
|
D | bpf.h | 117 u32 (*convert_ctx_access)(enum bpf_access_type type, int dst_reg,
|
/linux-4.4.14/kernel/bpf/ |
D | verifier.c | 324 insn->dst_reg, in print_bpf_insn() 331 insn->dst_reg, in print_bpf_insn() 340 insn->dst_reg, in print_bpf_insn() 346 insn->dst_reg, insn->off, in print_bpf_insn() 358 insn->dst_reg, in print_bpf_insn() 366 insn->code, insn->dst_reg, in print_bpf_insn() 382 insn->code, insn->dst_reg, insn->imm); in print_bpf_insn() 399 insn->code, insn->dst_reg, in print_bpf_insn() 404 insn->code, insn->dst_reg, in print_bpf_insn() 753 err = check_reg_arg(regs, insn->dst_reg, SRC_OP); in check_xadd() [all …]
|
D | core.c | 47 #define DST regs[insn->dst_reg]
|
/linux-4.4.14/net/core/ |
D | filter.c | 152 static u32 convert_skb_access(int skb_field, int dst_reg, int src_reg, in convert_skb_access() argument 161 *insn++ = BPF_LDX_MEM(BPF_W, dst_reg, src_reg, in convert_skb_access() 166 *insn++ = BPF_LDX_MEM(BPF_B, dst_reg, src_reg, PKT_TYPE_OFFSET()); in convert_skb_access() 167 *insn++ = BPF_ALU32_IMM(BPF_AND, dst_reg, PKT_TYPE_MAX); in convert_skb_access() 169 *insn++ = BPF_ALU32_IMM(BPF_RSH, dst_reg, 5); in convert_skb_access() 176 *insn++ = BPF_LDX_MEM(BPF_H, dst_reg, src_reg, in convert_skb_access() 186 *insn++ = BPF_LDX_MEM(BPF_H, dst_reg, src_reg, in convert_skb_access() 189 *insn++ = BPF_ALU32_IMM(BPF_AND, dst_reg, in convert_skb_access() 193 *insn++ = BPF_ALU32_IMM(BPF_RSH, dst_reg, 12); in convert_skb_access() 195 *insn++ = BPF_ALU32_IMM(BPF_AND, dst_reg, 1); in convert_skb_access() [all …]
|
/linux-4.4.14/drivers/scsi/ |
D | script_asm.pl | 566 $dst_reg = "\U$1\E"; 594 print STDERR "source = $src_reg, data = $data8 , destination = $dst_reg\n" 598 if (($src_reg eq undef) || ($src_reg eq $dst_reg)) { 600 ($registers{$dst_reg} << 16); 601 } elsif ($dst_reg =~ /SFBR/i) { 606 ($registers{$dst_reg} << 16);
|
/linux-4.4.14/include/uapi/linux/ |
D | bpf.h | 60 __u8 dst_reg:4; /* dest register */ member
|
/linux-4.4.14/Documentation/networking/ |
D | filter.txt | 810 op:16, jt:8, jf:8, k:32 ==> op:8, dst_reg:4, src_reg:4, off:16, imm:32 913 In eBPF it means dst_reg = (u32) dst_reg + (u32) src_reg; similarly, 922 dst_reg = dst_reg + src_reg 990 BPF_MEM | <size> | BPF_STX: *(size *) (dst_reg + off) = src_reg 991 BPF_MEM | <size> | BPF_ST: *(size *) (dst_reg + off) = imm32 992 BPF_MEM | <size> | BPF_LDX: dst_reg = *(size *) (src_reg + off) 993 BPF_XADD | BPF_W | BPF_STX: lock xadd *(u32 *)(dst_reg + off16) += src_reg 994 BPF_XADD | BPF_DW | BPF_STX: lock xadd *(u64 *)(dst_reg + off16) += src_reg 1001 instruction that loads 64-bit immediate value into a dst_reg.
|
/linux-4.4.14/arch/arm64/net/ |
D | bpf_jit_comp.c | 250 const u8 dst = bpf2a64[insn->dst_reg]; in build_insn() 551 insn1.dst_reg != 0 || insn1.off != 0) { in build_insn()
|