1# SPDX-License-Identifier: GPL-2.0 2include ../../../../../build/Build.include 3 4noarg: 5 $(MAKE) -C ../../ 6 7TEST_GEN_PROGS := reg_access_test event_attributes_test cycles_test \ 8 cycles_with_freeze_test pmc56_overflow_test \ 9 ebb_vs_cpu_event_test cpu_event_vs_ebb_test \ 10 cpu_event_pinned_vs_ebb_test task_event_vs_ebb_test \ 11 task_event_pinned_vs_ebb_test multi_ebb_procs_test \ 12 multi_counter_test pmae_handling_test \ 13 close_clears_pmcc_test instruction_count_test \ 14 fork_cleanup_test ebb_on_child_test \ 15 ebb_on_willing_child_test back_to_back_ebbs_test \ 16 lost_exception_test no_handler_test \ 17 cycles_with_mmcr2_test regs_access_pmccext_test 18 19top_srcdir = ../../../../../.. 20include ../../../lib.mk 21include ../../flags.mk 22 23# The EBB handler is 64-bit code and everything links against it 24CFLAGS += -m64 25 26TMPOUT = $(OUTPUT)/TMPDIR/ 27# Toolchains may build PIE by default which breaks the assembly 28no-pie-option := $(call try-run, echo 'int main() { return 0; }' | \ 29 $(CC) -Werror $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) -no-pie -x c - -o "$$TMP", -no-pie) 30 31LDFLAGS += $(no-pie-option) 32 33$(TEST_GEN_PROGS): ../../harness.c ../../utils.c ../event.c ../lib.c \ 34 ebb.c ebb_handler.S trace.c busy_loop.S 35 36$(OUTPUT)/instruction_count_test: ../loop.S 37 38$(OUTPUT)/lost_exception_test: ../lib.c 39