1 // SPDX-License-Identifier: GPL-2.0
2 /* Converted from tools/testing/selftests/bpf/verifier/cfg.c */
5 #include <bpf/bpf_helpers.h>
9 __description("unreachable")
10 __failure __msg("unreachable")
12 __naked void unreachable(void)
21 __description("unreachable2")
22 __failure __msg("unreachable")
24 __naked void unreachable2(void)
34 __description("out of range jump")
35 __failure __msg("jump out of range")
37 __naked void out_of_range_jump(void)
47 __description("out of range jump2")
48 __failure __msg("jump out of range")
50 __naked void out_of_range_jump2(void)
59 __description("loop (back-edge)")
60 __failure __msg("unreachable insn 1")
61 __msg_unpriv("back-edge")
62 __naked void loop_back_edge(void)
71 __description("loop2 (back-edge)")
72 __failure __msg("unreachable insn 4")
73 __msg_unpriv("back-edge")
74 __naked void loop2_back_edge(void)
86 __description("conditional loop")
87 __failure __msg("infinite loop detected")
88 __msg_unpriv("back-edge")
89 __naked void conditional_loop(void)
95 if r1 == 0 goto l0_%=; \
100 char _license[] SEC("license") = "GPL";