[dpdk-dev] [PATCH 2/2] examples: fix build errors for icc
error: loops in this subroutine are not good vectorization candidates (try compiling with O3 and/or IPO). Solution to disable this diagnostic message https://software.intel.com/en-us/forums/intel-c-compiler/topic/537688 Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample application") Fixes: 8cc72f2814dd ("examples/vmdq_dcb: support X710") Signed-off-by: Daniel Mrzyglod --- examples/ipsec-secgw/Makefile | 4 examples/vmdq_dcb/Makefile| 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/examples/ipsec-secgw/Makefile b/examples/ipsec-secgw/Makefile index da39e49..f9b59c2 100644 --- a/examples/ipsec-secgw/Makefile +++ b/examples/ipsec-secgw/Makefile @@ -42,6 +42,10 @@ APP = ipsec-secgw CFLAGS += -O3 -gdwarf-2 CFLAGS += $(WERROR_FLAGS) +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y) +CFLAGS_sa.o += -diag-disable=vec +endif + VPATH += $(SRCDIR)/librte_ipsec diff --git a/examples/vmdq_dcb/Makefile b/examples/vmdq_dcb/Makefile index 10a9a9a..8c51131 100644 --- a/examples/vmdq_dcb/Makefile +++ b/examples/vmdq_dcb/Makefile @@ -51,7 +51,9 @@ CFLAGS += $(WERROR_FLAGS) ifeq ($(CONFIG_RTE_TOOLCHAIN_GCC),y) CFLAGS_main.o += -Wno-return-type endif - +ifeq ($(CONFIG_RTE_TOOLCHAIN_ICC),y) +CFLAGS_main.o += -diag-disable=vec +endif EXTRA_CFLAGS += -O3 -g include $(RTE_SDK)/mk/rte.extapp.mk -- 2.5.5
[dpdk-dev] [PATCH 2/2] examples: fix build errors for icc
Hi Daniel, > -Original Message- > From: Mrzyglod, DanielX T > Sent: Monday, April 04, 2016 9:47 AM > To: dev at dpdk.org > Cc: Wu, Jingjing; De Lara Guarch, Pablo > Subject: [PATCH 2/2] examples: fix build errors for icc > > error: loops in this subroutine are not good vectorization candidates > (try compiling with O3 and/or IPO). > > Solution to disable this diagnostic message > https://software.intel.com/en-us/forums/intel-c-compiler/topic/537688 > > Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample application") > Fixes: 8cc72f2814dd ("examples/vmdq_dcb: support X710") > > Signed-off-by: Daniel Mrzyglod Which ICC version are you using? I don't see any errors with ICC 15.0, so is it with 16.0? Thanks, Pablo
[dpdk-dev] [PATCH 2/2] examples: fix build errors for icc
>From: De Lara Guarch, Pablo >Sent: Monday, April 04, 2016 11:34 AM >To: Mrzyglod, DanielX T ; dev at dpdk.org >Cc: Wu, Jingjing >Subject: RE: [PATCH 2/2] examples: fix build errors for icc > >Hi Daniel, > >> -Original Message- >> From: Mrzyglod, DanielX T >> Sent: Monday, April 04, 2016 9:47 AM >> To: dev at dpdk.org >> Cc: Wu, Jingjing; De Lara Guarch, Pablo >> Subject: [PATCH 2/2] examples: fix build errors for icc >> >> error: loops in this subroutine are not good vectorization candidates >> (try compiling with O3 and/or IPO). >> >> Solution to disable this diagnostic message >> https://software.intel.com/en-us/forums/intel-c-compiler/topic/537688 >> >> Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample application") >> Fixes: 8cc72f2814dd ("examples/vmdq_dcb: support X710") >> >> Signed-off-by: Daniel Mrzyglod > >Which ICC version are you using? I don't see any errors with ICC 15.0, so is >it with >16.0? icc (ICC) 15.0.1 20141023 Copyright (C) 1985-2014 Intel Corporation. All rights reserved. When I did: make examples T=x86_64-native-linuxapp-icc /mnt/shared/dtmrzglx/hubabuba/examples/vmdq_dcb/main.c(521): (col. 1) error: loops in this subroutine are not good vectorization candidates (try compiling with O3 and/or IPO). compilation aborted for /mnt/shared/dtmrzglx/hubabuba/examples/vmdq_dcb/main.c (code 1) /mnt/shared/dtmrzglx/hubabuba/mk/internal/rte.compile-pre.mk:126: recipe for target 'main.o' failed make[4]: *** [main.o] Error 1 /mnt/shared/dtmrzglx/hubabuba/mk/rte.extapp.mk:42: recipe for target 'all' failed make[3]: *** [all] Error 2 /mnt/shared/dtmrzglx/hubabuba/mk/rte.extsubdir.mk:46: recipe for target 'vmdq_dcb' failed make[2]: *** [vmdq_dcb] Error 2 make[2]: *** Waiting for unfinished jobs /mnt/shared/dtmrzglx/hubabuba/examples/ipsec-secgw/sa.c(348): (col. 1) error: loops in this subroutine are not good vectorization candidates (try compiling with O3 and/or IPO). compilation aborted for /mnt/shared/dtmrzglx/hubabuba/examples/ipsec-secgw/sa.c (code 1) /mnt/shared/dtmrzglx/hubabuba/mk/internal/rte.compile-pre.mk:126: recipe for target 'sa.o' failed make[4]: *** [sa.o] Error 1
[dpdk-dev] [PATCH 2/2] examples: fix build errors for icc
> -Original Message- > From: Mrzyglod, DanielX T > Sent: Monday, April 04, 2016 10:38 AM > To: De Lara Guarch, Pablo; dev at dpdk.org > Cc: Wu, Jingjing > Subject: RE: [PATCH 2/2] examples: fix build errors for icc > > >From: De Lara Guarch, Pablo > >Sent: Monday, April 04, 2016 11:34 AM > >To: Mrzyglod, DanielX T ; dev at dpdk.org > >Cc: Wu, Jingjing > >Subject: RE: [PATCH 2/2] examples: fix build errors for icc > > > >Hi Daniel, > > > >> -Original Message- > >> From: Mrzyglod, DanielX T > >> Sent: Monday, April 04, 2016 9:47 AM > >> To: dev at dpdk.org > >> Cc: Wu, Jingjing; De Lara Guarch, Pablo > >> Subject: [PATCH 2/2] examples: fix build errors for icc > >> > >> error: loops in this subroutine are not good vectorization candidates > >> (try compiling with O3 and/or IPO). > >> > >> Solution to disable this diagnostic message > >> https://software.intel.com/en-us/forums/intel-c-compiler/topic/537688 > >> > >> Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample > application") > >> Fixes: 8cc72f2814dd ("examples/vmdq_dcb: support X710") > >> > >> Signed-off-by: Daniel Mrzyglod > > > >Which ICC version are you using? I don't see any errors with ICC 15.0, so is > >it > with > >16.0? OK, I see that the problem is only in 15.0.1, but was fixed in 15.0.2 (my version). Could you specify in the commit message the icc version that this patch is targeting? Thanks, Pablo > > icc (ICC) 15.0.1 20141023 > Copyright (C) 1985-2014 Intel Corporation. All rights reserved. > > When I did: make examples T=x86_64-native-linuxapp-icc > /mnt/shared/dtmrzglx/hubabuba/examples/vmdq_dcb/main.c(521): (col. 1) > error: loops in this subroutine are not good vectorization candidates (try > compiling with O3 and/or IPO). > compilation aborted for > /mnt/shared/dtmrzglx/hubabuba/examples/vmdq_dcb/main.c (code 1) > /mnt/shared/dtmrzglx/hubabuba/mk/internal/rte.compile-pre.mk:126: > recipe for target 'main.o' failed > make[4]: *** [main.o] Error 1 > /mnt/shared/dtmrzglx/hubabuba/mk/rte.extapp.mk:42: recipe for target > 'all' failed > make[3]: *** [all] Error 2 > /mnt/shared/dtmrzglx/hubabuba/mk/rte.extsubdir.mk:46: recipe for target > 'vmdq_dcb' failed > make[2]: *** [vmdq_dcb] Error 2 > make[2]: *** Waiting for unfinished jobs > > > /mnt/shared/dtmrzglx/hubabuba/examples/ipsec-secgw/sa.c(348): (col. 1) > error: loops in this subroutine are not good vectorization candidates (try > compiling with O3 and/or IPO). > compilation aborted for /mnt/shared/dtmrzglx/hubabuba/examples/ipsec- > secgw/sa.c (code 1) > /mnt/shared/dtmrzglx/hubabuba/mk/internal/rte.compile-pre.mk:126: > recipe for target 'sa.o' failed > make[4]: *** [sa.o] Error 1