18c2ecf20Sopenharmony_ci{
28c2ecf20Sopenharmony_ci	"jit: lsh, rsh, arsh by 1",
38c2ecf20Sopenharmony_ci	.insns = {
48c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
58c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_1, 0xff),
68c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_LSH, BPF_REG_1, 1),
78c2ecf20Sopenharmony_ci	BPF_ALU32_IMM(BPF_LSH, BPF_REG_1, 1),
88c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 0x3fc, 1),
98c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
108c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_RSH, BPF_REG_1, 1),
118c2ecf20Sopenharmony_ci	BPF_ALU32_IMM(BPF_RSH, BPF_REG_1, 1),
128c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 0xff, 1),
138c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
148c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_ARSH, BPF_REG_1, 1),
158c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 0x7f, 1),
168c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
178c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 2),
188c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
198c2ecf20Sopenharmony_ci	},
208c2ecf20Sopenharmony_ci	.result = ACCEPT,
218c2ecf20Sopenharmony_ci	.retval = 2,
228c2ecf20Sopenharmony_ci},
238c2ecf20Sopenharmony_ci{
248c2ecf20Sopenharmony_ci	"jit: mov32 for ldimm64, 1",
258c2ecf20Sopenharmony_ci	.insns = {
268c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 2),
278c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_1, 0xfeffffffffffffffULL),
288c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_RSH, BPF_REG_1, 32),
298c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_2, 0xfeffffffULL),
308c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JEQ, BPF_REG_1, BPF_REG_2, 1),
318c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
328c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
338c2ecf20Sopenharmony_ci	},
348c2ecf20Sopenharmony_ci	.result = ACCEPT,
358c2ecf20Sopenharmony_ci	.retval = 2,
368c2ecf20Sopenharmony_ci},
378c2ecf20Sopenharmony_ci{
388c2ecf20Sopenharmony_ci	"jit: mov32 for ldimm64, 2",
398c2ecf20Sopenharmony_ci	.insns = {
408c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
418c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_1, 0x1ffffffffULL),
428c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_2, 0xffffffffULL),
438c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JEQ, BPF_REG_1, BPF_REG_2, 1),
448c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 2),
458c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
468c2ecf20Sopenharmony_ci	},
478c2ecf20Sopenharmony_ci	.result = ACCEPT,
488c2ecf20Sopenharmony_ci	.retval = 2,
498c2ecf20Sopenharmony_ci},
508c2ecf20Sopenharmony_ci{
518c2ecf20Sopenharmony_ci	"jit: various mul tests",
528c2ecf20Sopenharmony_ci	.insns = {
538c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_2, 0xeeff0d413122ULL),
548c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_0, 0xfefefeULL),
558c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_1, 0xefefefULL),
568c2ecf20Sopenharmony_ci	BPF_ALU64_REG(BPF_MUL, BPF_REG_0, BPF_REG_1),
578c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JEQ, BPF_REG_0, BPF_REG_2, 2),
588c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
598c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
608c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_3, 0xfefefeULL),
618c2ecf20Sopenharmony_ci	BPF_ALU64_REG(BPF_MUL, BPF_REG_3, BPF_REG_1),
628c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JEQ, BPF_REG_3, BPF_REG_2, 2),
638c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
648c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
658c2ecf20Sopenharmony_ci	BPF_MOV32_REG(BPF_REG_2, BPF_REG_2),
668c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_0, 0xfefefeULL),
678c2ecf20Sopenharmony_ci	BPF_ALU32_REG(BPF_MUL, BPF_REG_0, BPF_REG_1),
688c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JEQ, BPF_REG_0, BPF_REG_2, 2),
698c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
708c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
718c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_3, 0xfefefeULL),
728c2ecf20Sopenharmony_ci	BPF_ALU32_REG(BPF_MUL, BPF_REG_3, BPF_REG_1),
738c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JEQ, BPF_REG_3, BPF_REG_2, 2),
748c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
758c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
768c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_0, 0x952a7bbcULL),
778c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_1, 0xfefefeULL),
788c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_2, 0xeeff0d413122ULL),
798c2ecf20Sopenharmony_ci	BPF_ALU32_REG(BPF_MUL, BPF_REG_2, BPF_REG_1),
808c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JEQ, BPF_REG_2, BPF_REG_0, 2),
818c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
828c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
838c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 2),
848c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
858c2ecf20Sopenharmony_ci	},
868c2ecf20Sopenharmony_ci	.result = ACCEPT,
878c2ecf20Sopenharmony_ci	.retval = 2,
888c2ecf20Sopenharmony_ci},
898c2ecf20Sopenharmony_ci{
908c2ecf20Sopenharmony_ci	"jit: jsgt, jslt",
918c2ecf20Sopenharmony_ci	.insns = {
928c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_1, 0x80000000ULL),
938c2ecf20Sopenharmony_ci	BPF_LD_IMM64(BPF_REG_2, 0x0ULL),
948c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JSGT, BPF_REG_1, BPF_REG_2, 2),
958c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
968c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JSLT, BPF_REG_2, BPF_REG_1, 2),
998c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
1008c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 2),
1038c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
1048c2ecf20Sopenharmony_ci	},
1058c2ecf20Sopenharmony_ci	.result = ACCEPT,
1068c2ecf20Sopenharmony_ci	.retval = 2,
1078c2ecf20Sopenharmony_ci},
108