1 # SPDX-License-Identifier: GPL-2.0 << 2 TEST_GEN_PROGS := copyuser_64_t0 copyuser_64_t << 3 copyuser_p7_t0 copyuser_p7_t1 << 4 memcpy_64_t0 memcpy_64_t1 memc << 5 memcpy_p7_t0 memcpy_p7_t1 copy << 6 copyuser_64_exc_t0 copyuser_64 << 7 memmove_64 << 8 << 9 EXTRA_SOURCES := validate.c ../harness.c stubs << 10 << 11 top_srcdir = ../../../../.. << 12 include ../../lib.mk << 13 include ../flags.mk << 14 << 15 # The loops are all 64-bit code 1 # The loops are all 64-bit code 16 CFLAGS += -m64 2 CFLAGS += -m64 17 CFLAGS += -I$(CURDIR) 3 CFLAGS += -I$(CURDIR) 18 CFLAGS += -D SELFTEST 4 CFLAGS += -D SELFTEST 19 CFLAGS += -maltivec 5 CFLAGS += -maltivec 20 CFLAGS += -mcpu=power4 << 21 6 22 # Use our CFLAGS for the implicit .S rule & se !! 7 # Use our CFLAGS for the implicit .S rule 23 ASFLAGS = $(CFLAGS) -Wa,-mpower4 !! 8 ASFLAGS = $(CFLAGS) >> 9 >> 10 TEST_PROGS := copyuser_64 copyuser_power7 memcpy_64 memcpy_power7 >> 11 EXTRA_SOURCES := validate.c ../harness.c >> 12 >> 13 all: $(TEST_PROGS) >> 14 >> 15 copyuser_64: CPPFLAGS += -D COPY_LOOP=test___copy_tofrom_user_base >> 16 copyuser_power7: CPPFLAGS += -D COPY_LOOP=test___copy_tofrom_user_power7 >> 17 memcpy_64: CPPFLAGS += -D COPY_LOOP=test_memcpy >> 18 memcpy_power7: CPPFLAGS += -D COPY_LOOP=test_memcpy_power7 >> 19 >> 20 $(TEST_PROGS): $(EXTRA_SOURCES) >> 21 >> 22 include ../../lib.mk 24 23 25 $(OUTPUT)/copyuser_64_t%: copyuser_64.S !! 24 clean: 26 $(CC) $(CPPFLAGS) $(CFLAGS) \ !! 25 rm -f $(TEST_PROGS) *.o 27 -D COPY_LOOP=test___copy_tofro << 28 -D SELFTEST_CASE=$(subst copyu << 29 -o $@ $^ << 30 << 31 $(OUTPUT)/copyuser_p7_t%: copyuser_power << 32 $(CC) $(CPPFLAGS) $(CFLAGS) \ << 33 -D COPY_LOOP=test___copy_tofro << 34 -D SELFTEST_CASE=$(subst copyu << 35 -o $@ $^ << 36 << 37 # Strictly speaking, we only need the memcpy_6 << 38 $(OUTPUT)/memcpy_64_t%: memcpy_64.S $(EXTRA_SO << 39 $(CC) $(CPPFLAGS) $(CFLAGS) \ << 40 -D COPY_LOOP=test_memcpy \ << 41 -D SELFTEST_CASE=$(subst memcp << 42 -o $@ $^ << 43 << 44 $(OUTPUT)/memcpy_p7_t%: memcpy_power7.S $(EXTR << 45 $(CC) $(CPPFLAGS) $(CFLAGS) \ << 46 -D COPY_LOOP=test_memcpy_power << 47 -D SELFTEST_CASE=$(subst memcp << 48 -o $@ $^ << 49 << 50 $(OUTPUT)/copy_mc_64: copy_mc_64.S $(EXTRA_SOU << 51 $(CC) $(CPPFLAGS) $(CFLAGS) \ << 52 -D COPY_LOOP=test_copy_mc_gene << 53 -o $@ $^ << 54 << 55 $(OUTPUT)/copyuser_64_exc_t%: copyuser_64.S ex << 56 copy_tofrom_user_reference.S s << 57 $(CC) $(CPPFLAGS) $(CFLAGS) \ << 58 -D COPY_LOOP=test___copy_tofro << 59 -D SELFTEST_CASE=$(subst copyu << 60 -o $@ $^ << 61 << 62 $(OUTPUT)/memmove_64: mem_64.S memcpy_64.S mem << 63 memcpy_stubs.S << 64 $(CC) $(CPPFLAGS) $(CFLAGS) \ << 65 -D TEST_MEMMOVE=test_memmove \ << 66 -o $@ $^ <<
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.