18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci#ifndef PERF_TEST_LLVM_H
38c2ecf20Sopenharmony_ci#define PERF_TEST_LLVM_H
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci#ifdef __cplusplus
68c2ecf20Sopenharmony_ciextern "C" {
78c2ecf20Sopenharmony_ci#endif
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci#include <stddef.h> /* for size_t */
108c2ecf20Sopenharmony_ci#include <stdbool.h> /* for bool */
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciextern const char test_llvm__bpf_base_prog[];
138c2ecf20Sopenharmony_ciextern const char test_llvm__bpf_test_kbuild_prog[];
148c2ecf20Sopenharmony_ciextern const char test_llvm__bpf_test_prologue_prog[];
158c2ecf20Sopenharmony_ciextern const char test_llvm__bpf_test_relocation[];
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_cienum test_llvm__testcase {
188c2ecf20Sopenharmony_ci	LLVM_TESTCASE_BASE,
198c2ecf20Sopenharmony_ci	LLVM_TESTCASE_KBUILD,
208c2ecf20Sopenharmony_ci	LLVM_TESTCASE_BPF_PROLOGUE,
218c2ecf20Sopenharmony_ci	LLVM_TESTCASE_BPF_RELOCATION,
228c2ecf20Sopenharmony_ci	__LLVM_TESTCASE_MAX,
238c2ecf20Sopenharmony_ci};
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciint test_llvm__fetch_bpf_obj(void **p_obj_buf, size_t *p_obj_buf_sz,
268c2ecf20Sopenharmony_ci			     enum test_llvm__testcase index, bool force,
278c2ecf20Sopenharmony_ci			     bool *should_load_fail);
288c2ecf20Sopenharmony_ci#ifdef __cplusplus
298c2ecf20Sopenharmony_ci}
308c2ecf20Sopenharmony_ci#endif
318c2ecf20Sopenharmony_ci#endif
32