X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Flibrte_eal%2Flinuxapp%2Feal%2FMakefile;fp=lib%2Flibrte_eal%2Flinuxapp%2Feal%2FMakefile;h=5363683ead2f31795d6ca4a34c3592a09fe392b1;hb=84cc318424d49372dd2a5fbf3cf84426bf95acce;hp=140d1acfa7959037cf08ccd4de3328ccbb7b5edd;hpb=ea39ca97d2528d235f9cfe1c0338a39e79a8a891;p=dpdk.git diff --git a/lib/librte_eal/linuxapp/eal/Makefile b/lib/librte_eal/linuxapp/eal/Makefile index 140d1acfa7..5363683ead 100644 --- a/lib/librte_eal/linuxapp/eal/Makefile +++ b/lib/librte_eal/linuxapp/eal/Makefile @@ -103,6 +103,24 @@ SRCS-$(CONFIG_RTE_EXEC_ENV_LINUXAPP) += rte_cpuflags.c SRCS-$(CONFIG_RTE_ARCH_X86) += rte_spinlock.c SRCS-y += rte_cycles.c +# for run-time dispatch of memcpy +SRCS-$(CONFIG_RTE_ARCH_X86) += rte_memcpy.c +SRCS-$(CONFIG_RTE_ARCH_X86) += rte_memcpy_sse.c + +# if the compiler supports AVX512, add avx512 file +ifneq ($(findstring CC_SUPPORT_AVX512F,$(MACHINE_CFLAGS)),) +SRCS-$(CONFIG_RTE_ARCH_X86) += rte_memcpy_avx512f.c +CFLAGS_rte_memcpy_avx512f.o += -mavx512f +CFLAGS_rte_memcpy_avx512f.o += -DRTE_MACHINE_CPUFLAG_AVX512F +endif + +# if the compiler supports AVX2, add avx2 file +ifneq ($(findstring CC_SUPPORT_AVX2,$(MACHINE_CFLAGS)),) +SRCS-$(CONFIG_RTE_ARCH_X86) += rte_memcpy_avx2.c +CFLAGS_rte_memcpy_avx2.o += -mavx2 +CFLAGS_rte_memcpy_avx2.o += -DRTE_MACHINE_CPUFLAG_AVX2 +endif + CFLAGS_eal_common_cpuflags.o := $(CPUFLAGS_LIST) CFLAGS_eal.o := -D_GNU_SOURCE