18c2ecf20Sopenharmony_ci{
28c2ecf20Sopenharmony_ci	"jump test 1",
38c2ecf20Sopenharmony_ci	.insns = {
48c2ecf20Sopenharmony_ci	BPF_MOV64_REG(BPF_REG_2, BPF_REG_10),
58c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_1, -8),
68c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 0, 1),
78c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -8, 0),
88c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 1, 1),
98c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -16, 1),
108c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 2, 1),
118c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -8, 2),
128c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 3, 1),
138c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -16, 3),
148c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 4, 1),
158c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -8, 4),
168c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 5, 1),
178c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -32, 5),
188c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 0),
198c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
208c2ecf20Sopenharmony_ci	},
218c2ecf20Sopenharmony_ci	.errstr_unpriv = "R1 pointer comparison",
228c2ecf20Sopenharmony_ci	.result_unpriv = REJECT,
238c2ecf20Sopenharmony_ci	.result = ACCEPT,
248c2ecf20Sopenharmony_ci},
258c2ecf20Sopenharmony_ci{
268c2ecf20Sopenharmony_ci	"jump test 2",
278c2ecf20Sopenharmony_ci	.insns = {
288c2ecf20Sopenharmony_ci	BPF_MOV64_REG(BPF_REG_2, BPF_REG_10),
298c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 0, 2),
308c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -8, 0),
318c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 14),
328c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 1, 2),
338c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -16, 0),
348c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 11),
358c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 2, 2),
368c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -32, 0),
378c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 8),
388c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 3, 2),
398c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -40, 0),
408c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 5),
418c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 4, 2),
428c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -48, 0),
438c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
448c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 5, 1),
458c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -56, 0),
468c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 0),
478c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
488c2ecf20Sopenharmony_ci	},
498c2ecf20Sopenharmony_ci	.errstr_unpriv = "R1 pointer comparison",
508c2ecf20Sopenharmony_ci	.result_unpriv = REJECT,
518c2ecf20Sopenharmony_ci	.result = ACCEPT,
528c2ecf20Sopenharmony_ci},
538c2ecf20Sopenharmony_ci{
548c2ecf20Sopenharmony_ci	"jump test 3",
558c2ecf20Sopenharmony_ci	.insns = {
568c2ecf20Sopenharmony_ci	BPF_MOV64_REG(BPF_REG_2, BPF_REG_10),
578c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 0, 3),
588c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -8, 0),
598c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -8),
608c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 19),
618c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 1, 3),
628c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -16, 0),
638c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -16),
648c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 15),
658c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 2, 3),
668c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -32, 0),
678c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -32),
688c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 11),
698c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 3, 3),
708c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -40, 0),
718c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -40),
728c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 7),
738c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 4, 3),
748c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -48, 0),
758c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -48),
768c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 3),
778c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, 5, 0),
788c2ecf20Sopenharmony_ci	BPF_ST_MEM(BPF_DW, BPF_REG_2, -56, 0),
798c2ecf20Sopenharmony_ci	BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -56),
808c2ecf20Sopenharmony_ci	BPF_LD_MAP_FD(BPF_REG_1, 0),
818c2ecf20Sopenharmony_ci	BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, BPF_FUNC_map_delete_elem),
828c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
838c2ecf20Sopenharmony_ci	},
848c2ecf20Sopenharmony_ci	.fixup_map_hash_8b = { 24 },
858c2ecf20Sopenharmony_ci	.errstr_unpriv = "R1 pointer comparison",
868c2ecf20Sopenharmony_ci	.result_unpriv = REJECT,
878c2ecf20Sopenharmony_ci	.result = ACCEPT,
888c2ecf20Sopenharmony_ci	.retval = -ENOENT,
898c2ecf20Sopenharmony_ci},
908c2ecf20Sopenharmony_ci{
918c2ecf20Sopenharmony_ci	"jump test 4",
928c2ecf20Sopenharmony_ci	.insns = {
938c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
948c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
958c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
968c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
978c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
988c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
998c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
1008c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
1018c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
1028c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
1038c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
1048c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
1058c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
1068c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
1078c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
1088c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
1098c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
1108c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
1118c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
1128c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
1138c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
1148c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
1158c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
1168c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
1178c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
1188c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
1198c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
1208c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
1218c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
1228c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
1238c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
1248c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
1258c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 1),
1268c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 2),
1278c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 3),
1288c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 4),
1298c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 0),
1308c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 0),
1318c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 0),
1328c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JEQ, BPF_REG_1, BPF_REG_10, 0),
1338c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 0),
1348c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
1358c2ecf20Sopenharmony_ci	},
1368c2ecf20Sopenharmony_ci	.errstr_unpriv = "R1 pointer comparison",
1378c2ecf20Sopenharmony_ci	.result_unpriv = REJECT,
1388c2ecf20Sopenharmony_ci	.result = ACCEPT,
1398c2ecf20Sopenharmony_ci},
1408c2ecf20Sopenharmony_ci{
1418c2ecf20Sopenharmony_ci	"jump test 5",
1428c2ecf20Sopenharmony_ci	.insns = {
1438c2ecf20Sopenharmony_ci	BPF_MOV64_REG(BPF_REG_2, BPF_REG_10),
1448c2ecf20Sopenharmony_ci	BPF_MOV64_REG(BPF_REG_3, BPF_REG_2),
1458c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
1468c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
1478c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
1488c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
1498c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1508c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 0),
1518c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
1528c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
1538c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
1548c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
1558c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1568c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 0),
1578c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
1588c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
1598c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
1608c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
1618c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1628c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 0),
1638c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
1648c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
1658c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
1668c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
1678c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1688c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 0),
1698c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
1708c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
1718c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
1728c2ecf20Sopenharmony_ci	BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
1738c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1748c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 0),
1758c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
1768c2ecf20Sopenharmony_ci	},
1778c2ecf20Sopenharmony_ci	.errstr_unpriv = "R1 pointer comparison",
1788c2ecf20Sopenharmony_ci	.result_unpriv = REJECT,
1798c2ecf20Sopenharmony_ci	.result = ACCEPT,
1808c2ecf20Sopenharmony_ci},
1818c2ecf20Sopenharmony_ci{
1828c2ecf20Sopenharmony_ci	"jump test 6",
1838c2ecf20Sopenharmony_ci	.insns = {
1848c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
1858c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_1, 2),
1868c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
1878c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 2),
1888c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
1898c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JNE, BPF_REG_0, BPF_REG_1, 16),
1908c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1918c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1928c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1938c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1948c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1958c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1968c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1978c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1988c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
1998c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
2008c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
2018c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
2028c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
2038c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
2048c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
2058c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 0),
2068c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, -20),
2078c2ecf20Sopenharmony_ci	},
2088c2ecf20Sopenharmony_ci	.result = ACCEPT,
2098c2ecf20Sopenharmony_ci	.retval = 2,
2108c2ecf20Sopenharmony_ci},
2118c2ecf20Sopenharmony_ci{
2128c2ecf20Sopenharmony_ci	"jump test 7",
2138c2ecf20Sopenharmony_ci	.insns = {
2148c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
2158c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
2168c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 3),
2178c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
2188c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JNE, BPF_REG_0, 2, 16),
2198c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2208c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2218c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2228c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2238c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2248c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2258c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2268c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2278c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2288c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2298c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2308c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2318c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2328c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2338c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2348c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2358c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, -20),
2368c2ecf20Sopenharmony_ci	},
2378c2ecf20Sopenharmony_ci	.result = ACCEPT,
2388c2ecf20Sopenharmony_ci	.retval = 3,
2398c2ecf20Sopenharmony_ci},
2408c2ecf20Sopenharmony_ci{
2418c2ecf20Sopenharmony_ci	"jump test 8",
2428c2ecf20Sopenharmony_ci	.insns = {
2438c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
2448c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_1, 2),
2458c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
2468c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 3),
2478c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
2488c2ecf20Sopenharmony_ci	BPF_JMP_REG(BPF_JNE, BPF_REG_0, BPF_REG_1, 16),
2498c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2508c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2518c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2528c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2538c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2548c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2558c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2568c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2578c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2588c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2598c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2608c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2618c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2628c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2638c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2648c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2658c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, -20),
2668c2ecf20Sopenharmony_ci	},
2678c2ecf20Sopenharmony_ci	.result = ACCEPT,
2688c2ecf20Sopenharmony_ci	.retval = 3,
2698c2ecf20Sopenharmony_ci},
2708c2ecf20Sopenharmony_ci{
2718c2ecf20Sopenharmony_ci	"jump/call test 9",
2728c2ecf20Sopenharmony_ci	.insns = {
2738c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
2748c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JA, 0, 0, 2),
2758c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 3),
2768c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
2778c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JNE, BPF_REG_0, 2, 16),
2788c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2798c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2808c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2818c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2828c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2838c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2848c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2858c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2868c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2878c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2888c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2898c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2908c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2918c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2928c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2938c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
2948c2ecf20Sopenharmony_ci	BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 1, 0, -20),
2958c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
2968c2ecf20Sopenharmony_ci	},
2978c2ecf20Sopenharmony_ci	.prog_type = BPF_PROG_TYPE_SCHED_CLS,
2988c2ecf20Sopenharmony_ci	.result = REJECT,
2998c2ecf20Sopenharmony_ci	.errstr = "jump out of range from insn 1 to 4",
3008c2ecf20Sopenharmony_ci},
3018c2ecf20Sopenharmony_ci{
3028c2ecf20Sopenharmony_ci	"jump/call test 10",
3038c2ecf20Sopenharmony_ci	.insns = {
3048c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
3058c2ecf20Sopenharmony_ci	BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 1, 0, 2),
3068c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 3),
3078c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
3088c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JNE, BPF_REG_0, 2, 16),
3098c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3108c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3118c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3128c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3138c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3148c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3158c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3168c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3178c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3188c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3198c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3208c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3218c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3228c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3238c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3248c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3258c2ecf20Sopenharmony_ci	BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 1, 0, -20),
3268c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
3278c2ecf20Sopenharmony_ci	},
3288c2ecf20Sopenharmony_ci	.prog_type = BPF_PROG_TYPE_SCHED_CLS,
3298c2ecf20Sopenharmony_ci	.result = REJECT,
3308c2ecf20Sopenharmony_ci	.errstr = "last insn is not an exit or jmp",
3318c2ecf20Sopenharmony_ci},
3328c2ecf20Sopenharmony_ci{
3338c2ecf20Sopenharmony_ci	"jump/call test 11",
3348c2ecf20Sopenharmony_ci	.insns = {
3358c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
3368c2ecf20Sopenharmony_ci	BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 1, 0, 4),
3378c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 3),
3388c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
3398c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 3),
3408c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
3418c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 1),
3428c2ecf20Sopenharmony_ci	BPF_JMP_IMM(BPF_JNE, BPF_REG_0, 2, 26),
3438c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3448c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3458c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3468c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3478c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3488c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3498c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3508c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3518c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3528c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3538c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3548c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3558c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3568c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3578c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3588c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3598c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3608c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3618c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3628c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3638c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3648c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3658c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3668c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3678c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3688c2ecf20Sopenharmony_ci	BPF_MOV64_IMM(BPF_REG_0, 42),
3698c2ecf20Sopenharmony_ci	BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 1, 0, -31),
3708c2ecf20Sopenharmony_ci	BPF_EXIT_INSN(),
3718c2ecf20Sopenharmony_ci	},
3728c2ecf20Sopenharmony_ci	.prog_type = BPF_PROG_TYPE_SCHED_CLS,
3738c2ecf20Sopenharmony_ci	.result = ACCEPT,
3748c2ecf20Sopenharmony_ci	.retval = 3,
3758c2ecf20Sopenharmony_ci},
376