1*5698a42aSYonghong Song // SPDX-License-Identifier: GPL-2.0
2*5698a42aSYonghong Song /* Copyright (c) 2021 Facebook */
3*5698a42aSYonghong Song #include "vmlinux.h"
4*5698a42aSYonghong Song #include <bpf/bpf_helpers.h>
5*5698a42aSYonghong Song #include <bpf/bpf_tracing.h>
6*5698a42aSYonghong Song 
7*5698a42aSYonghong Song #if __has_attribute(btf_type_tag)
8*5698a42aSYonghong Song #define __tag1 __attribute__((btf_type_tag("tag1")))
9*5698a42aSYonghong Song #define __tag2 __attribute__((btf_type_tag("tag2")))
10*5698a42aSYonghong Song volatile const bool skip_tests = false;
11*5698a42aSYonghong Song #else
12*5698a42aSYonghong Song #define __tag1
13*5698a42aSYonghong Song #define __tag2
14*5698a42aSYonghong Song volatile const bool skip_tests = true;
15*5698a42aSYonghong Song #endif
16*5698a42aSYonghong Song 
17*5698a42aSYonghong Song struct btf_type_tag_test {
18*5698a42aSYonghong Song 	int __tag1 * __tag1 __tag2 *p;
19*5698a42aSYonghong Song } g;
20*5698a42aSYonghong Song 
21*5698a42aSYonghong Song SEC("fentry/bpf_fentry_test1")
BPF_PROG(sub,int x)22*5698a42aSYonghong Song int BPF_PROG(sub, int x)
23*5698a42aSYonghong Song {
24*5698a42aSYonghong Song   return 0;
25*5698a42aSYonghong Song }
26