1 # SPDX-License-Identifier: GPL-2.0
2 # The loops are all 64-bit code
9 # Use our CFLAGS for the implicit .S rule & set the asm machine type
10 ASFLAGS
= $(CFLAGS
) -Wa
,-mpower4
12 TEST_GEN_PROGS
:= copyuser_64_t0 copyuser_64_t1 copyuser_64_t2 \
13 copyuser_p7_t0 copyuser_p7_t1 \
14 memcpy_64_t0 memcpy_64_t1 memcpy_64_t2 \
15 memcpy_p7_t0 memcpy_p7_t1 copy_mc_64 \
16 copyuser_64_exc_t0 copyuser_64_exc_t1 copyuser_64_exc_t2
18 EXTRA_SOURCES
:= validate.c ..
/harness.c stubs.S
20 top_srcdir
= ..
/..
/..
/..
/..
23 $(OUTPUT
)/copyuser_64_t
%: copyuser_64.S
$(EXTRA_SOURCES
)
24 $(CC
) $(CPPFLAGS
) $(CFLAGS
) \
25 -D COPY_LOOP
=test___copy_tofrom_user_base \
26 -D SELFTEST_CASE
=$(subst copyuser_64_t
,,$(notdir $@
)) \
29 $(OUTPUT
)/copyuser_p7_t
%: copyuser_power7.S
$(EXTRA_SOURCES
)
30 $(CC
) $(CPPFLAGS
) $(CFLAGS
) \
31 -D COPY_LOOP
=test___copy_tofrom_user_power7 \
32 -D SELFTEST_CASE
=$(subst copyuser_p7_t
,,$(notdir $@
)) \
35 # Strictly speaking, we only need the memcpy_64 test cases for big-endian
36 $(OUTPUT
)/memcpy_64_t
%: memcpy_64.S
$(EXTRA_SOURCES
)
37 $(CC
) $(CPPFLAGS
) $(CFLAGS
) \
38 -D COPY_LOOP
=test_memcpy \
39 -D SELFTEST_CASE
=$(subst memcpy_64_t
,,$(notdir $@
)) \
42 $(OUTPUT
)/memcpy_p7_t
%: memcpy_power7.S
$(EXTRA_SOURCES
)
43 $(CC
) $(CPPFLAGS
) $(CFLAGS
) \
44 -D COPY_LOOP
=test_memcpy_power7 \
45 -D SELFTEST_CASE
=$(subst memcpy_p7_t
,,$(notdir $@
)) \
48 $(OUTPUT
)/copy_mc_64
: copy_mc_64.S
$(EXTRA_SOURCES
)
49 $(CC
) $(CPPFLAGS
) $(CFLAGS
) \
50 -D COPY_LOOP
=test_copy_mc_generic \
53 $(OUTPUT
)/copyuser_64_exc_t
%: copyuser_64.S exc_validate.c ..
/harness.c \
54 copy_tofrom_user_reference.S stubs.S
55 $(CC
) $(CPPFLAGS
) $(CFLAGS
) \
56 -D COPY_LOOP
=test___copy_tofrom_user_base \
57 -D SELFTEST_CASE
=$(subst copyuser_64_exc_t
,,$(notdir $@
)) \