X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=mk%2Frte.cpuflags.mk;h=2129510c2df80d3accc12d0af0aee2fd3f975334;hb=refs%2Fheads%2Fupstream-17.11-stable;hp=e634abc38c5099547661d9b84aceaaeb8cd84c18;hpb=97f17497d162afdb82c8704bf097f0fee3724b2e;p=deb_dpdk.git diff --git a/mk/rte.cpuflags.mk b/mk/rte.cpuflags.mk index e634abc3..2129510c 100644 --- a/mk/rte.cpuflags.mk +++ b/mk/rte.cpuflags.mk @@ -70,8 +70,10 @@ CPUFLAGS += PCLMULQDQ endif ifneq ($(filter $(AUTO_CPUFLAGS),__AVX__),) +ifeq ($(CONFIG_RTE_ENABLE_AVX),y) CPUFLAGS += AVX endif +endif ifneq ($(filter $(AUTO_CPUFLAGS),__RDRND__),) CPUFLAGS += RDRAND @@ -86,11 +88,20 @@ CPUFLAGS += F16C endif ifneq ($(filter $(AUTO_CPUFLAGS),__AVX2__),) +ifeq ($(CONFIG_RTE_ENABLE_AVX),y) CPUFLAGS += AVX2 endif +endif ifneq ($(filter $(AUTO_CPUFLAGS),__AVX512F__),) +ifeq ($(CONFIG_RTE_ENABLE_AVX512),y) CPUFLAGS += AVX512F +else +# disable AVX512F support of gcc as a workaround for Bug 97 +ifeq ($(CONFIG_RTE_TOOLCHAIN_GCC),y) +MACHINE_CFLAGS += -mno-avx512f +endif +endif endif # IBM Power CPU flags @@ -111,7 +122,7 @@ CPUFLAGS += VSX endif # ARM flags -ifneq ($(filter $(AUTO_CPUFLAGS),__ARM_NEON),) +ifneq ($(filter __ARM_NEON __aarch64__,$(AUTO_CPUFLAGS)),) CPUFLAGS += NEON endif @@ -119,6 +130,12 @@ ifneq ($(filter $(AUTO_CPUFLAGS),__ARM_FEATURE_CRC32),) CPUFLAGS += CRC32 endif +ifneq ($(filter $(AUTO_CPUFLAGS),__ARM_FEATURE_CRYPTO),) +CPUFLAGS += AES +CPUFLAGS += PMULL +CPUFLAGS += SHA1 +CPUFLAGS += SHA2 +endif MACHINE_CFLAGS += $(addprefix -DRTE_MACHINE_CPUFLAG_,$(CPUFLAGS))