xref: /linux/tools/testing/selftests/powerpc/copyloops/Makefile (revision 4f3df2e5ea69f5717d2721922aff263c31957548)
1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
298c45f51SPaul MackerrasTEST_GEN_PROGS := copyuser_64_t0 copyuser_64_t1 copyuser_64_t2 \
3*146c9ab3SSayali Patil		copyuser_p7 copyuser_p7_vmx \
498c45f51SPaul Mackerras		memcpy_64_t0 memcpy_64_t1 memcpy_64_t2 \
5ec6347bbSDan Williams		memcpy_p7_t0 memcpy_p7_t1 copy_mc_64 \
62504e5b9SRitesh Harjani		copyuser_64_exc_t0 copyuser_64_exc_t1 copyuser_64_exc_t2 \
72504e5b9SRitesh Harjani		memmove_64
898c45f51SPaul Mackerras
92679f63fSMichael EllermanEXTRA_SOURCES := validate.c ../harness.c stubs.S
1022d651dcSMichael Ellerman
117e0cf1c9SMichael Ellermantop_srcdir = ../../../../..
1288baa78dSbamvor.zhangjian@huawei.cominclude ../../lib.mk
13108e5e68SMadhavan Srinivasaninclude ../flags.mk
1422d651dcSMichael Ellerman
1537496845SMadhavan Srinivasan# The loops are all 64-bit code
1637496845SMadhavan SrinivasanCFLAGS += -m64
1737496845SMadhavan SrinivasanCFLAGS += -I$(CURDIR)
1837496845SMadhavan SrinivasanCFLAGS += -D SELFTEST
1937496845SMadhavan SrinivasanCFLAGS += -maltivec
2037496845SMadhavan SrinivasanCFLAGS += -mcpu=power4
2137496845SMadhavan Srinivasan
2237496845SMadhavan Srinivasan# Use our CFLAGS for the implicit .S rule & set the asm machine type
2337496845SMadhavan SrinivasanASFLAGS = $(CFLAGS) -Wa,-mpower4
2437496845SMadhavan Srinivasan
2598c45f51SPaul Mackerras$(OUTPUT)/copyuser_64_t%:	copyuser_64.S $(EXTRA_SOURCES)
2698c45f51SPaul Mackerras	$(CC) $(CPPFLAGS) $(CFLAGS) \
2798c45f51SPaul Mackerras		-D COPY_LOOP=test___copy_tofrom_user_base \
2898c45f51SPaul Mackerras		-D SELFTEST_CASE=$(subst copyuser_64_t,,$(notdir $@)) \
2998c45f51SPaul Mackerras		-o $@ $^
3022d651dcSMichael Ellerman
31*146c9ab3SSayali Patil$(OUTPUT)/copyuser_p7:	copyuser_power7.S $(EXTRA_SOURCES)
3298c45f51SPaul Mackerras	$(CC) $(CPPFLAGS) $(CFLAGS) \
3398c45f51SPaul Mackerras		-D COPY_LOOP=test___copy_tofrom_user_power7 \
34*146c9ab3SSayali Patil		-o $@ $^
35*146c9ab3SSayali Patil
36*146c9ab3SSayali Patil$(OUTPUT)/copyuser_p7_vmx:       copyuser_power7.S $(EXTRA_SOURCES) ../utils.c
37*146c9ab3SSayali Patil	$(CC) $(CPPFLAGS) $(CFLAGS) \
38*146c9ab3SSayali Patil		-D COPY_LOOP=test___copy_tofrom_user_power7_vmx \
39*146c9ab3SSayali Patil		-D VMX_TEST \
4098c45f51SPaul Mackerras		-o $@ $^
4198c45f51SPaul Mackerras
4298c45f51SPaul Mackerras# Strictly speaking, we only need the memcpy_64 test cases for big-endian
4398c45f51SPaul Mackerras$(OUTPUT)/memcpy_64_t%:	memcpy_64.S $(EXTRA_SOURCES)
4498c45f51SPaul Mackerras	$(CC) $(CPPFLAGS) $(CFLAGS) \
4598c45f51SPaul Mackerras		-D COPY_LOOP=test_memcpy \
4698c45f51SPaul Mackerras		-D SELFTEST_CASE=$(subst memcpy_64_t,,$(notdir $@)) \
4798c45f51SPaul Mackerras		-o $@ $^
4898c45f51SPaul Mackerras
4998c45f51SPaul Mackerras$(OUTPUT)/memcpy_p7_t%:	memcpy_power7.S $(EXTRA_SOURCES)
5098c45f51SPaul Mackerras	$(CC) $(CPPFLAGS) $(CFLAGS) \
5198c45f51SPaul Mackerras		-D COPY_LOOP=test_memcpy_power7 \
5298c45f51SPaul Mackerras		-D SELFTEST_CASE=$(subst memcpy_p7_t,,$(notdir $@)) \
5398c45f51SPaul Mackerras		-o $@ $^
542679f63fSMichael Ellerman
55ec6347bbSDan Williams$(OUTPUT)/copy_mc_64: copy_mc_64.S $(EXTRA_SOURCES)
566f62a822SSantosh Sivaraj	$(CC) $(CPPFLAGS) $(CFLAGS) \
57ec6347bbSDan Williams		-D COPY_LOOP=test_copy_mc_generic \
586f62a822SSantosh Sivaraj		-o $@ $^
596f62a822SSantosh Sivaraj
602679f63fSMichael Ellerman$(OUTPUT)/copyuser_64_exc_t%: copyuser_64.S exc_validate.c ../harness.c \
612679f63fSMichael Ellerman		copy_tofrom_user_reference.S stubs.S
622679f63fSMichael Ellerman	$(CC) $(CPPFLAGS) $(CFLAGS) \
632679f63fSMichael Ellerman		-D COPY_LOOP=test___copy_tofrom_user_base \
642679f63fSMichael Ellerman		-D SELFTEST_CASE=$(subst copyuser_64_exc_t,,$(notdir $@)) \
652679f63fSMichael Ellerman		-o $@ $^
662504e5b9SRitesh Harjani
672504e5b9SRitesh Harjani$(OUTPUT)/memmove_64: mem_64.S memcpy_64.S memmove_validate.c ../harness.c \
682504e5b9SRitesh Harjani		memcpy_stubs.S
692504e5b9SRitesh Harjani	$(CC) $(CPPFLAGS) $(CFLAGS) \
702504e5b9SRitesh Harjani		-D TEST_MEMMOVE=test_memmove \
712504e5b9SRitesh Harjani		-o $@ $^
72