|
@@ -1735,6 +1735,27 @@ static struct bpf_test tests[] = {
|
|
|
{ },
|
|
|
{ { 1, 0 } },
|
|
|
},
|
|
|
+ {
|
|
|
+ "load 64-bit immediate",
|
|
|
+ .u.insns_int = {
|
|
|
+ BPF_LD_IMM64(R1, 0x567800001234L),
|
|
|
+ BPF_MOV64_REG(R2, R1),
|
|
|
+ BPF_MOV64_REG(R3, R2),
|
|
|
+ BPF_ALU64_IMM(BPF_RSH, R2, 32),
|
|
|
+ BPF_ALU64_IMM(BPF_LSH, R3, 32),
|
|
|
+ BPF_ALU64_IMM(BPF_RSH, R3, 32),
|
|
|
+ BPF_ALU64_IMM(BPF_MOV, R0, 0),
|
|
|
+ BPF_JMP_IMM(BPF_JEQ, R2, 0x5678, 1),
|
|
|
+ BPF_EXIT_INSN(),
|
|
|
+ BPF_JMP_IMM(BPF_JEQ, R3, 0x1234, 1),
|
|
|
+ BPF_EXIT_INSN(),
|
|
|
+ BPF_ALU64_IMM(BPF_MOV, R0, 1),
|
|
|
+ BPF_EXIT_INSN(),
|
|
|
+ },
|
|
|
+ INTERNAL,
|
|
|
+ { },
|
|
|
+ { { 0, 1 } }
|
|
|
+ },
|
|
|
};
|
|
|
|
|
|
static struct net_device dev;
|