BPF_NEG
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_NEG:
case BPF_NEG:
case BPF_ALU | BPF_NEG:
emit_alu_i(ctx, lo(dst), 0, BPF_NEG);
case BPF_ALU64 | BPF_NEG:
case BPF_NEG:
case BPF_ALU | BPF_NEG:
emit_alu_i(ctx, dst, 0, BPF_NEG);
case BPF_ALU64 | BPF_NEG:
emit_alu_i64(ctx, dst, 0, BPF_NEG);
case BPF_ALU64 | BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_NEG:
case BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_ALU | BPF_NEG: /* (u32) dst = -dst */
case BPF_ALU64 | BPF_NEG: /* dst = -dst */
case BPF_ALU | BPF_NEG: /* (u32) dst = -dst */
case BPF_ALU64 | BPF_NEG: /* dst = -dst */
case BPF_ALU | BPF_NEG:
case BPF_NEG:
case BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_ALU | BPF_NEG: /* dst = (u32) -dst */
case BPF_ALU64 | BPF_NEG: /* dst = -dst */
case BPF_ALU | BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_ALU | BPF_NEG:
case BPF_ALU64 | BPF_NEG:
case BPF_NEG:
[BPF_ALU64 | BPF_NEG] = neg_reg64,
[BPF_ALU | BPF_NEG] = neg_reg,
case BPF_ALU | BPF_NEG:
} else if (BPF_OP(insn->code) == BPF_NEG) {
[BPF_NEG >> 4] = "neg",
case BPF_NEG:
case BPF_NEG:
if (opcode == BPF_END || opcode == BPF_NEG) {
if (opcode == BPF_NEG) {
if ((opcode == BPF_NEG || opcode == BPF_END) &&
insn_buf[5] = BPF_ALU64_IMM(BPF_NEG, BPF_REG_0, 0);
BPF_NEG | BPF_K, insn->dst_reg,
BPF_NEG | BPF_K, insn->dst_reg,
*patch++ = BPF_ALU64_IMM(BPF_NEG, BPF_REG_AX, 0);
if (opcode == BPF_END || opcode == BPF_NEG) {
case BPF_ALU | BPF_NEG:
BPF_STMT(BPF_ALU | BPF_NEG, 0), /* A == -3 */
BPF_ALU64_IMM(BPF_NEG, R0, 0),
BPF_ALU32_IMM(BPF_NEG, R0, 0),
BPF_ALU32_IMM(BPF_NEG, R0, 0),
BPF_ALU64_IMM(BPF_NEG, R0, 0),
BPF_ALU64_IMM(BPF_NEG, R0, 0),
[BPF_ALU | BPF_NEG] = true,
case BPF_ALU | BPF_NEG:
#define BPF_ALU_NEG (BPF_ALU | BPF_NEG)
bpf_set_curr_instr(BPF_ALU | BPF_NEG, 0, 0, 0); }
} else if (BPF_OP(insn->code) == BPF_NEG) {
[BPF_NEG >> 4] = "neg",
BPF_ALU64_IMM(BPF_NEG, BPF_REG_2, 0),
BPF_ALU64_IMM(BPF_NEG, BPF_REG_2, 0),
BPF_ALU64_IMM(BPF_NEG, BPF_REG_3, 0),
BPF_ALU64_IMM(BPF_NEG, BPF_REG_3, 0),