[dpdk-dev] mk: add support for ICC 15 compiler

Message ID 1421920442-7804-1-git-send-email-danielx.t.mrzyglod@intel.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

Daniel Mrzyglod Jan. 22, 2015, 9:54 a.m. UTC
  This patch add Support for ICC 15.

ICC 15 changed inline-max-size and inline-max-total-size default values,
so for ICC 15 flags -no-inline-max-size -no-inline-max-total-size must be added.

additionally disable compile error for:
13368 - loop was not vectorized with "vector always assert"
15527 - loop was not vectorized: function call to fprintf cannot be vectorize

Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
---
 mk/toolchain/icc/rte.vars.mk | 7 +++++++
 1 file changed, 7 insertions(+)
  

Comments

Sergio Gonzalez Monroy Jan. 23, 2015, 10:49 a.m. UTC | #1
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Daniel Mrzyglod
> Sent: Thursday, January 22, 2015 9:54 AM
> 
> This patch add Support for ICC 15.
> 
> ICC 15 changed inline-max-size and inline-max-total-size default values, so
> for ICC 15 flags -no-inline-max-size -no-inline-max-total-size must be added.
> 
> additionally disable compile error for:
> 13368 - loop was not vectorized with "vector always assert"
> 15527 - loop was not vectorized: function call to fprintf cannot be vectorize
> 
> Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
> ---
>  mk/toolchain/icc/rte.vars.mk | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/mk/toolchain/icc/rte.vars.mk b/mk/toolchain/icc/rte.vars.mk
> index 5503fb0..e39d710 100644
> --- a/mk/toolchain/icc/rte.vars.mk
> +++ b/mk/toolchain/icc/rte.vars.mk
> @@ -66,11 +66,18 @@ TOOLCHAIN_ASFLAGS =
>  # Turn off some ICC warnings -
>  #   Remark #271   : trailing comma is nonstandard
>  #   Warning #1478 : function "<func_name>" (declared at line N of
> "<filename>")
> +#   error #13368: loop was not vectorized with "vector always assert"
> +#   error #15527: loop was not vectorized: function call to fprintf cannot be
> vectorize
>  #                   was declared "deprecated"
>  WERROR_FLAGS := -Wall -Werror-all -w2 -diag-disable 271 -diag-warning
> 1478
> +WERROR_FLAGS += -diag-disable 13368 -diag-disable 15527
> 
>  # process cpu flags
>  include $(RTE_SDK)/mk/toolchain/$(RTE_TOOLCHAIN)/rte.toolchain-
> compat.mk
> +# disable max-inline params boundaries for ICC 15 compiler ifeq
> +($(shell test $(ICC_MAJOR_VERSION) -eq 15 && echo 1), 1)
> +	TOOLCHAIN_CFLAGS += -no-inline-max-size -no-inline-max-total-size
> +endif
> 
>  export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF  export
> TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS
> --
> 2.1.0

Acked-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
  
Thomas Monjalon Jan. 27, 2015, 11:16 a.m. UTC | #2
> > This patch add Support for ICC 15.
> > 
> > ICC 15 changed inline-max-size and inline-max-total-size default values, so
> > for ICC 15 flags -no-inline-max-size -no-inline-max-total-size must be added.
> > 
> > additionally disable compile error for:
> > 13368 - loop was not vectorized with "vector always assert"
> > 15527 - loop was not vectorized: function call to fprintf cannot be vectorize
> > 
> > Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
> 
> Acked-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>

Applied

Thanks
  

Patch

diff --git a/mk/toolchain/icc/rte.vars.mk b/mk/toolchain/icc/rte.vars.mk
index 5503fb0..e39d710 100644
--- a/mk/toolchain/icc/rte.vars.mk
+++ b/mk/toolchain/icc/rte.vars.mk
@@ -66,11 +66,18 @@  TOOLCHAIN_ASFLAGS =
 # Turn off some ICC warnings -
 #   Remark #271   : trailing comma is nonstandard
 #   Warning #1478 : function "<func_name>" (declared at line N of "<filename>")
+#   error #13368: loop was not vectorized with "vector always assert"
+#   error #15527: loop was not vectorized: function call to fprintf cannot be vectorize
 #                   was declared "deprecated"
 WERROR_FLAGS := -Wall -Werror-all -w2 -diag-disable 271 -diag-warning 1478
+WERROR_FLAGS += -diag-disable 13368 -diag-disable 15527
 
 # process cpu flags
 include $(RTE_SDK)/mk/toolchain/$(RTE_TOOLCHAIN)/rte.toolchain-compat.mk
+# disable max-inline params boundaries for ICC 15 compiler
+ifeq ($(shell test $(ICC_MAJOR_VERSION) -eq 15 && echo 1), 1)
+	TOOLCHAIN_CFLAGS += -no-inline-max-size -no-inline-max-total-size
+endif
 
 export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF
 export TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS