/Linux-v6.1/tools/bpf/ |
D | bpf_exp.y | 349 bpf_set_curr_instr(BPF_ALU | BPF_ADD | BPF_K, 0, 0, $3); } 351 bpf_set_curr_instr(BPF_ALU | BPF_ADD | BPF_X, 0, 0, 0); } 353 bpf_set_curr_instr(BPF_ALU | BPF_ADD | BPF_X, 0, 0, 0); } 358 bpf_set_curr_instr(BPF_ALU | BPF_SUB | BPF_K, 0, 0, $3); } 360 bpf_set_curr_instr(BPF_ALU | BPF_SUB | BPF_X, 0, 0, 0); } 362 bpf_set_curr_instr(BPF_ALU | BPF_SUB | BPF_X, 0, 0, 0); } 367 bpf_set_curr_instr(BPF_ALU | BPF_MUL | BPF_K, 0, 0, $3); } 369 bpf_set_curr_instr(BPF_ALU | BPF_MUL | BPF_X, 0, 0, 0); } 371 bpf_set_curr_instr(BPF_ALU | BPF_MUL | BPF_X, 0, 0, 0); } 376 bpf_set_curr_instr(BPF_ALU | BPF_DIV | BPF_K, 0, 0, $3); } [all …]
|
D | bpf_dbg.c | 64 #define BPF_ALU_ADD (BPF_ALU | BPF_ADD) 65 #define BPF_ALU_SUB (BPF_ALU | BPF_SUB) 66 #define BPF_ALU_MUL (BPF_ALU | BPF_MUL) 67 #define BPF_ALU_DIV (BPF_ALU | BPF_DIV) 68 #define BPF_ALU_MOD (BPF_ALU | BPF_MOD) 69 #define BPF_ALU_NEG (BPF_ALU | BPF_NEG) 70 #define BPF_ALU_AND (BPF_ALU | BPF_AND) 71 #define BPF_ALU_OR (BPF_ALU | BPF_OR) 72 #define BPF_ALU_XOR (BPF_ALU | BPF_XOR) 73 #define BPF_ALU_LSH (BPF_ALU | BPF_LSH) [all …]
|
/Linux-v6.1/arch/powerpc/net/ |
D | bpf_jit_comp64.c | 399 case BPF_ALU | BPF_ADD | BPF_X: /* (u32) dst += (u32) src */ in bpf_jit_build_body() 403 case BPF_ALU | BPF_SUB | BPF_X: /* (u32) dst -= (u32) src */ in bpf_jit_build_body() 407 case BPF_ALU | BPF_ADD | BPF_K: /* (u32) dst += (u32) imm */ in bpf_jit_build_body() 418 case BPF_ALU | BPF_SUB | BPF_K: /* (u32) dst -= (u32) imm */ in bpf_jit_build_body() 429 case BPF_ALU | BPF_MUL | BPF_X: /* (u32) dst *= (u32) src */ in bpf_jit_build_body() 431 if (BPF_CLASS(code) == BPF_ALU) in bpf_jit_build_body() 436 case BPF_ALU | BPF_MUL | BPF_K: /* (u32) dst *= (u32) imm */ in bpf_jit_build_body() 442 if (BPF_CLASS(code) == BPF_ALU) in bpf_jit_build_body() 448 case BPF_ALU | BPF_DIV | BPF_X: /* (u32) dst /= (u32) src */ in bpf_jit_build_body() 449 case BPF_ALU | BPF_MOD | BPF_X: /* (u32) dst %= (u32) src */ in bpf_jit_build_body() [all …]
|
D | bpf_jit_comp32.c | 330 case BPF_ALU | BPF_ADD | BPF_X: /* (u32) dst += (u32) src */ in bpf_jit_build_body() 337 case BPF_ALU | BPF_SUB | BPF_X: /* (u32) dst -= (u32) src */ in bpf_jit_build_body() 344 case BPF_ALU | BPF_SUB | BPF_K: /* (u32) dst -= (u32) imm */ in bpf_jit_build_body() 347 case BPF_ALU | BPF_ADD | BPF_K: /* (u32) dst += (u32) imm */ in bpf_jit_build_body() 380 case BPF_ALU | BPF_MUL | BPF_X: /* (u32) dst *= (u32) src */ in bpf_jit_build_body() 383 case BPF_ALU | BPF_MUL | BPF_K: /* (u32) dst *= (u32) imm */ in bpf_jit_build_body() 413 case BPF_ALU | BPF_DIV | BPF_X: /* (u32) dst /= (u32) src */ in bpf_jit_build_body() 416 case BPF_ALU | BPF_MOD | BPF_X: /* (u32) dst %= (u32) src */ in bpf_jit_build_body() 425 case BPF_ALU | BPF_DIV | BPF_K: /* (u32) dst /= (u32) imm */ in bpf_jit_build_body() 434 case BPF_ALU | BPF_MOD | BPF_K: /* (u32) dst %= (u32) imm */ in bpf_jit_build_body() [all …]
|
/Linux-v6.1/arch/mips/net/ |
D | bpf_jit_comp64.c | 646 case BPF_ALU | BPF_MOV | BPF_K: in build_insn() 651 case BPF_ALU | BPF_MOV | BPF_X: in build_insn() 661 case BPF_ALU | BPF_NEG: in build_insn() 670 case BPF_ALU | BPF_OR | BPF_K: in build_insn() 671 case BPF_ALU | BPF_AND | BPF_K: in build_insn() 672 case BPF_ALU | BPF_XOR | BPF_K: in build_insn() 673 case BPF_ALU | BPF_LSH | BPF_K: in build_insn() 689 case BPF_ALU | BPF_RSH | BPF_K: in build_insn() 690 case BPF_ALU | BPF_ARSH | BPF_K: in build_insn() 691 case BPF_ALU | BPF_ADD | BPF_K: in build_insn() [all …]
|
D | bpf_jit_comp32.c | 1478 case BPF_ALU | BPF_MOV | BPF_K: in build_insn() 1483 case BPF_ALU | BPF_MOV | BPF_X: in build_insn() 1493 case BPF_ALU | BPF_NEG: in build_insn() 1508 case BPF_ALU | BPF_OR | BPF_K: in build_insn() 1509 case BPF_ALU | BPF_AND | BPF_K: in build_insn() 1510 case BPF_ALU | BPF_XOR | BPF_K: in build_insn() 1511 case BPF_ALU | BPF_LSH | BPF_K: in build_insn() 1512 case BPF_ALU | BPF_RSH | BPF_K: in build_insn() 1513 case BPF_ALU | BPF_ARSH | BPF_K: in build_insn() 1514 case BPF_ALU | BPF_ADD | BPF_K: in build_insn() [all …]
|
/Linux-v6.1/arch/sparc/net/ |
D | bpf_jit_comp_32.c | 399 case BPF_ALU | BPF_ADD | BPF_X: /* A += X; */ in bpf_jit_compile() 402 case BPF_ALU | BPF_ADD | BPF_K: /* A += K; */ in bpf_jit_compile() 405 case BPF_ALU | BPF_SUB | BPF_X: /* A -= X; */ in bpf_jit_compile() 408 case BPF_ALU | BPF_SUB | BPF_K: /* A -= K */ in bpf_jit_compile() 411 case BPF_ALU | BPF_AND | BPF_X: /* A &= X */ in bpf_jit_compile() 414 case BPF_ALU | BPF_AND | BPF_K: /* A &= K */ in bpf_jit_compile() 417 case BPF_ALU | BPF_OR | BPF_X: /* A |= X */ in bpf_jit_compile() 420 case BPF_ALU | BPF_OR | BPF_K: /* A |= K */ in bpf_jit_compile() 424 case BPF_ALU | BPF_XOR | BPF_X: in bpf_jit_compile() 427 case BPF_ALU | BPF_XOR | BPF_K: /* A ^= K */ in bpf_jit_compile() [all …]
|
D | bpf_jit_comp_64.c | 909 case BPF_ALU | BPF_MOV | BPF_X: in build_insn() 918 case BPF_ALU | BPF_ADD | BPF_X: in build_insn() 922 case BPF_ALU | BPF_SUB | BPF_X: in build_insn() 926 case BPF_ALU | BPF_AND | BPF_X: in build_insn() 930 case BPF_ALU | BPF_OR | BPF_X: in build_insn() 934 case BPF_ALU | BPF_XOR | BPF_X: in build_insn() 938 case BPF_ALU | BPF_MUL | BPF_X: in build_insn() 944 case BPF_ALU | BPF_DIV | BPF_X: in build_insn() 953 case BPF_ALU | BPF_MOD | BPF_X: { in build_insn() 974 case BPF_ALU | BPF_LSH | BPF_X: in build_insn() [all …]
|
/Linux-v6.1/arch/loongarch/net/ |
D | bpf_jit.c | 406 const bool is32 = BPF_CLASS(insn->code) == BPF_ALU || BPF_CLASS(insn->code) == BPF_JMP32; in build_insn() 410 case BPF_ALU | BPF_MOV | BPF_X: in build_insn() 417 case BPF_ALU | BPF_MOV | BPF_K: in build_insn() 423 case BPF_ALU | BPF_ADD | BPF_X: in build_insn() 430 case BPF_ALU | BPF_ADD | BPF_K: in build_insn() 442 case BPF_ALU | BPF_SUB | BPF_X: in build_insn() 449 case BPF_ALU | BPF_SUB | BPF_K: in build_insn() 461 case BPF_ALU | BPF_MUL | BPF_X: in build_insn() 468 case BPF_ALU | BPF_MUL | BPF_K: in build_insn() 476 case BPF_ALU | BPF_DIV | BPF_X: in build_insn() [all …]
|
/Linux-v6.1/arch/s390/net/ |
D | bpf_jit_comp.c | 694 case BPF_ALU | BPF_MOV | BPF_X: /* dst = (u32) src */ in bpf_jit_insn() 704 case BPF_ALU | BPF_MOV | BPF_K: /* dst = (u32) imm */ in bpf_jit_insn() 731 case BPF_ALU | BPF_ADD | BPF_X: /* dst = (u32) dst + (u32) src */ in bpf_jit_insn() 740 case BPF_ALU | BPF_ADD | BPF_K: /* dst = (u32) dst + (u32) imm */ in bpf_jit_insn() 756 case BPF_ALU | BPF_SUB | BPF_X: /* dst = (u32) dst - (u32) src */ in bpf_jit_insn() 765 case BPF_ALU | BPF_SUB | BPF_K: /* dst = (u32) dst - (u32) imm */ in bpf_jit_insn() 786 case BPF_ALU | BPF_MUL | BPF_X: /* dst = (u32) dst * (u32) src */ in bpf_jit_insn() 795 case BPF_ALU | BPF_MUL | BPF_K: /* dst = (u32) dst * (u32) imm */ in bpf_jit_insn() 811 case BPF_ALU | BPF_DIV | BPF_X: /* dst = (u32) dst / (u32) src */ in bpf_jit_insn() 812 case BPF_ALU | BPF_MOD | BPF_X: /* dst = (u32) dst % (u32) src */ in bpf_jit_insn() [all …]
|
/Linux-v6.1/arch/riscv/net/ |
D | bpf_jit_comp64.c | 374 if (code & (BPF_ALU | BPF_X) || code & (BPF_ALU64 | BPF_X) || in init_regs() 621 case BPF_ALU | BPF_MOV | BPF_X: in bpf_jit_emit_insn() 634 case BPF_ALU | BPF_ADD | BPF_X: in bpf_jit_emit_insn() 640 case BPF_ALU | BPF_SUB | BPF_X: in bpf_jit_emit_insn() 650 case BPF_ALU | BPF_AND | BPF_X: in bpf_jit_emit_insn() 656 case BPF_ALU | BPF_OR | BPF_X: in bpf_jit_emit_insn() 662 case BPF_ALU | BPF_XOR | BPF_X: in bpf_jit_emit_insn() 668 case BPF_ALU | BPF_MUL | BPF_X: in bpf_jit_emit_insn() 674 case BPF_ALU | BPF_DIV | BPF_X: in bpf_jit_emit_insn() 680 case BPF_ALU | BPF_MOD | BPF_X: in bpf_jit_emit_insn() [all …]
|
D | bpf_jit_comp32.c | 1015 case BPF_ALU | BPF_MOV | BPF_X: in bpf_jit_emit_insn() 1023 case BPF_ALU | BPF_ADD | BPF_X: in bpf_jit_emit_insn() 1024 case BPF_ALU | BPF_SUB | BPF_X: in bpf_jit_emit_insn() 1025 case BPF_ALU | BPF_AND | BPF_X: in bpf_jit_emit_insn() 1026 case BPF_ALU | BPF_OR | BPF_X: in bpf_jit_emit_insn() 1027 case BPF_ALU | BPF_XOR | BPF_X: in bpf_jit_emit_insn() 1029 case BPF_ALU | BPF_MUL | BPF_X: in bpf_jit_emit_insn() 1030 case BPF_ALU | BPF_MUL | BPF_K: in bpf_jit_emit_insn() 1032 case BPF_ALU | BPF_DIV | BPF_X: in bpf_jit_emit_insn() 1033 case BPF_ALU | BPF_DIV | BPF_K: in bpf_jit_emit_insn() [all …]
|
/Linux-v6.1/kernel/bpf/ |
D | disasm.c | 67 [BPF_ALU] = "alu", 138 if (class == BPF_ALU || class == BPF_ALU64) { in print_bpf_insn() 146 insn->code, class == BPF_ALU ? 'w' : 'r', in print_bpf_insn() 147 insn->dst_reg, class == BPF_ALU ? 'w' : 'r', in print_bpf_insn() 151 insn->code, class == BPF_ALU ? 'w' : 'r', in print_bpf_insn() 154 class == BPF_ALU ? 'w' : 'r', in print_bpf_insn() 158 insn->code, class == BPF_ALU ? 'w' : 'r', in print_bpf_insn()
|
/Linux-v6.1/tools/include/linux/ |
D | filter.h | 44 .code = BPF_ALU | BPF_OP(OP) | BPF_X, \ 62 .code = BPF_ALU | BPF_OP(OP) | BPF_K, \ 72 .code = BPF_ALU | BPF_END | BPF_SRC(TYPE), \ 90 .code = BPF_ALU | BPF_MOV | BPF_X, \ 108 .code = BPF_ALU | BPF_MOV | BPF_K, \ 126 .code = BPF_ALU | BPF_MOV | BPF_SRC(TYPE), \
|
/Linux-v6.1/arch/x86/net/ |
D | bpf_jit_comp.c | 942 case BPF_ALU | BPF_ADD | BPF_X: in do_jit() 943 case BPF_ALU | BPF_SUB | BPF_X: in do_jit() 944 case BPF_ALU | BPF_AND | BPF_X: in do_jit() 945 case BPF_ALU | BPF_OR | BPF_X: in do_jit() 946 case BPF_ALU | BPF_XOR | BPF_X: in do_jit() 959 case BPF_ALU | BPF_MOV | BPF_X: in do_jit() 966 case BPF_ALU | BPF_NEG: in do_jit() 973 case BPF_ALU | BPF_ADD | BPF_K: in do_jit() 974 case BPF_ALU | BPF_SUB | BPF_K: in do_jit() 975 case BPF_ALU | BPF_AND | BPF_K: in do_jit() [all …]
|
D | bpf_jit_comp32.c | 1689 case BPF_ALU | BPF_MOV | BPF_K: in do_jit() 1690 case BPF_ALU | BPF_MOV | BPF_X: in do_jit() 1718 case BPF_ALU | BPF_ADD | BPF_K: in do_jit() 1719 case BPF_ALU | BPF_ADD | BPF_X: in do_jit() 1720 case BPF_ALU | BPF_SUB | BPF_K: in do_jit() 1721 case BPF_ALU | BPF_SUB | BPF_X: in do_jit() 1722 case BPF_ALU | BPF_OR | BPF_K: in do_jit() 1723 case BPF_ALU | BPF_OR | BPF_X: in do_jit() 1724 case BPF_ALU | BPF_AND | BPF_K: in do_jit() 1725 case BPF_ALU | BPF_AND | BPF_X: in do_jit() [all …]
|
/Linux-v6.1/arch/arm/net/ |
D | bpf_jit_32.c | 1377 case BPF_ALU | BPF_MOV | BPF_K: in build_insn() 1378 case BPF_ALU | BPF_MOV | BPF_X: in build_insn() 1404 case BPF_ALU | BPF_ADD | BPF_K: in build_insn() 1405 case BPF_ALU | BPF_ADD | BPF_X: in build_insn() 1406 case BPF_ALU | BPF_SUB | BPF_K: in build_insn() 1407 case BPF_ALU | BPF_SUB | BPF_X: in build_insn() 1408 case BPF_ALU | BPF_OR | BPF_K: in build_insn() 1409 case BPF_ALU | BPF_OR | BPF_X: in build_insn() 1410 case BPF_ALU | BPF_AND | BPF_K: in build_insn() 1411 case BPF_ALU | BPF_AND | BPF_X: in build_insn() [all …]
|
/Linux-v6.1/samples/bpf/ |
D | bpf_insn.h | 20 .code = BPF_ALU | BPF_OP(OP) | BPF_X, \ 38 .code = BPF_ALU | BPF_OP(OP) | BPF_K, \ 56 .code = BPF_ALU | BPF_MOV | BPF_X, \ 74 .code = BPF_ALU | BPF_MOV | BPF_K, \
|
/Linux-v6.1/arch/arm64/net/ |
D | bpf_jit_comp.c | 779 case BPF_ALU | BPF_MOV | BPF_X: in build_insn() 784 case BPF_ALU | BPF_ADD | BPF_X: in build_insn() 788 case BPF_ALU | BPF_SUB | BPF_X: in build_insn() 792 case BPF_ALU | BPF_AND | BPF_X: in build_insn() 796 case BPF_ALU | BPF_OR | BPF_X: in build_insn() 800 case BPF_ALU | BPF_XOR | BPF_X: in build_insn() 804 case BPF_ALU | BPF_MUL | BPF_X: in build_insn() 808 case BPF_ALU | BPF_DIV | BPF_X: in build_insn() 812 case BPF_ALU | BPF_MOD | BPF_X: in build_insn() 817 case BPF_ALU | BPF_LSH | BPF_X: in build_insn() [all …]
|
/Linux-v6.1/kernel/ |
D | seccomp.c | 301 case BPF_ALU | BPF_ADD | BPF_K: in seccomp_check_filter() 302 case BPF_ALU | BPF_ADD | BPF_X: in seccomp_check_filter() 303 case BPF_ALU | BPF_SUB | BPF_K: in seccomp_check_filter() 304 case BPF_ALU | BPF_SUB | BPF_X: in seccomp_check_filter() 305 case BPF_ALU | BPF_MUL | BPF_K: in seccomp_check_filter() 306 case BPF_ALU | BPF_MUL | BPF_X: in seccomp_check_filter() 307 case BPF_ALU | BPF_DIV | BPF_K: in seccomp_check_filter() 308 case BPF_ALU | BPF_DIV | BPF_X: in seccomp_check_filter() 309 case BPF_ALU | BPF_AND | BPF_K: in seccomp_check_filter() 310 case BPF_ALU | BPF_AND | BPF_X: in seccomp_check_filter() [all …]
|
/Linux-v6.1/Documentation/bpf/ |
D | instruction-set.rst | 59 BPF_ALU 0x04 32-bit arithmetic operations `Arithmetic and jump instructions`_ 68 For arithmetic and jump instructions (``BPF_ALU``, ``BPF_ALU64``, ``BPF_JMP`` and 92 ``BPF_ALU`` uses 32-bit wide operands while ``BPF_ALU64`` uses 64-bit wide operands for 115 ``BPF_ADD | BPF_X | BPF_ALU`` means:: 123 ``BPF_XOR | BPF_K | BPF_ALU`` means:: 135 The byte swap instructions use an instruction class of ``BPF_ALU`` and a 4-bit 156 ``BPF_ALU | BPF_TO_LE | BPF_END`` with imm = 16 means:: 160 ``BPF_ALU | BPF_TO_BE | BPF_END`` with imm = 64 means::
|
D | classic_vs_extended.rst | 264 BPF_ALU 0x04 BPF_ALU 0x04 289 If BPF_CLASS(code) == BPF_ALU or BPF_ALU64 [ in eBPF ], BPF_OP(code) is one of:: 323 So BPF_ADD | BPF_X | BPF_ALU means 32-bit addition in both classic BPF 326 BPF_XOR | BPF_K | BPF_ALU means A ^= imm32 in classic BPF and analogous 330 eBPF is using BPF_MOV | BPF_X | BPF_ALU code instead. Since there are no 332 exactly the same operations as BPF_ALU, but with 64-bit wide operands
|
/Linux-v6.1/lib/ |
D | test_bpf.c | 145 insn[i] = __BPF_STMT(BPF_ALU | BPF_ADD | BPF_K, k); in bpf_fill_maxinsns3() 237 insn[len - 2] = __BPF_STMT(BPF_ALU | BPF_SUB | BPF_X, 0); in bpf_fill_maxinsns7() 392 insn[len - 2] = __BPF_STMT(BPF_ALU | BPF_XOR | BPF_X, 0); in bpf_fill_maxinsns13() 3070 BPF_STMT(BPF_ALU | BPF_ADD | BPF_X, 0), 3071 BPF_STMT(BPF_ALU | BPF_NEG, 0), /* A == -3 */ 3074 BPF_STMT(BPF_ALU | BPF_ADD | BPF_X, 0), 3088 BPF_STMT(BPF_ALU | BPF_ADD | BPF_X, 0), 3099 BPF_STMT(BPF_ALU | BPF_ADD | BPF_K, 2), 3101 BPF_STMT(BPF_ALU | BPF_SUB | BPF_X, 0), 3102 BPF_STMT(BPF_ALU | BPF_ADD | BPF_K, 0xffffffff), [all …]
|
/Linux-v6.1/tools/include/uapi/linux/ |
D | bpf_common.h | 11 #define BPF_ALU 0x04 macro
|
/Linux-v6.1/include/uapi/linux/ |
D | bpf_common.h | 11 #define BPF_ALU 0x04 macro
|