XOR
XOR(0, 4) \
XOR(1, 5) \
XOR(2, 6) \
XOR(3, 7)
XOR(0, 2) \
XOR(1, 3)
result = Dallp1(left) XOR Dallp1(right)
Dallp1(result) = left XOR Dallp1(right)
Dallp2(left) = Dallp2(left) XOR Dallp2(right); \
Dallp2(right) = Dallp2(left) XOR Dallp2(right); \
Dallp2(left) = Dallp2(left) XOR Dallp2(right)
Dextallp2(leftp2) = Dextallp2(leftp2) XOR Dextallp2(rightp2); \
Dextallp2(rightp2) = Dextallp2(leftp2) XOR Dextallp2(rightp2); \
Dextallp2(leftp2) = Dextallp2(leftp2) XOR Dextallp2(rightp2); \
Dextallp3(leftp3) = Dextallp3(leftp3) XOR Dextallp3(rightp3); \
Dextallp3(rightp3) = Dextallp3(leftp3) XOR Dextallp3(rightp3); \
Dextallp3(leftp3) = Dextallp3(leftp3) XOR Dextallp3(rightp3); \
Dextallp4(leftp4) = Dextallp4(leftp4) XOR Dextallp4(rightp4); \
Dextallp4(rightp4) = Dextallp4(leftp4) XOR Dextallp4(rightp4); \
Dextallp4(leftp4) = Dextallp4(leftp4) XOR Dextallp4(rightp4)
result = Sall(left) XOR Sall(right);
Sall(result) = left XOR Sall(right)
Sextallp2(leftp2) = Sextallp2(leftp2) XOR Sextallp2(rightp2); \
Sextallp2(rightp2) = Sextallp2(leftp2) XOR Sextallp2(rightp2); \
Sextallp2(leftp2) = Sextallp2(leftp2) XOR Sextallp2(rightp2)
XOR(v1, v2);
XOR(v3, v4);
XOR(v1, v3);
XOR(v1, v2);
XOR(v3, v4);
XOR(v1, v5);
XOR(v1, v3);
XOR(v1, v2);
XOR(v1, v2);
XOR(v1, v3);
emit_alu_X(XOR);
emit_alu_K(XOR, K);
emit_alu_K(XOR, dst, imm, ctx);
emit(XOR | IMMED | RS1(reg) | S13(lbits) | RD(reg), ctx);
emit(XOR | IMMED | RS1(dest) | S13(low_bits) | RD(dest), ctx);
emit_alu(XOR, src, dst, ctx);
APPEND_MATH(XOR, desc, dest, src0, src1, len)
APPEND_MATH_IMM_u32(XOR, desc, dest, src0, src1, data)
APPEND_MATH_IMM_u64(XOR, desc, dest, src0, src1, data)
#define CS_ALU_INSTR_XOR __CS_ALU_INSTR(XOR, NA, NA)
#define ETH_RSS_HASH_XOR __ETH_RSS_HASH(XOR)
INSN_3(ALU, XOR, X), \
INSN_3(ALU, XOR, K), \
INSN_3(ALU64, XOR, X), \
INSN_3(ALU64, XOR, K), \
ALU(XOR, ^)
BPF_TEST_CLOBBER_ALU(ALU64_IMM, XOR, R8, 123456789),
BPF_TEST_CLOBBER_ALU(ALU64_IMM, XOR, R9, 123456789),
BPF_TEST_CLOBBER_ALU(ALU32_IMM, XOR, R8, 123456789),
BPF_TEST_CLOBBER_ALU(ALU32_IMM, XOR, R9, 123456789),
BPF_TEST_CLOBBER_ALU(ALU64_REG, XOR, R8, R1),
BPF_TEST_CLOBBER_ALU(ALU64_REG, XOR, R9, R1),
BPF_TEST_CLOBBER_ALU(ALU32_REG, XOR, R8, R1),
BPF_TEST_CLOBBER_ALU(ALU32_REG, XOR, R9, R1),
BPF_ALU32_SRC_ZEXT(XOR),
BPF_ATOMIC32_SRC_ZEXT(XOR),