From patchwork Mon Mar 27 14:35:44 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ferruh Yigit X-Patchwork-Id: 22444 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 76704FB0E; Mon, 27 Mar 2017 16:35:49 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 0CA83FB0D for ; Mon, 27 Mar 2017 16:35:47 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=intel.com; i=@intel.com; q=dns/txt; s=intel; t=1490625348; x=1522161348; h=from:to:cc:subject:date:message-id; bh=/THrKgeRGZhn35NTzZLiEHNHqxDFjMxADoj/1lyR+N4=; b=gSXPXSzSBYXx8ZbiUghebgS+NjhhPLJkfFjDVsiKAkVFbH7jDIXjPZJO 9tCF16+BY4ScmwQfiyhGCK6Ph99M2w==; Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Mar 2017 07:35:47 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,231,1486454400"; d="scan'208";a="81447086" Received: from sivswdev02.ir.intel.com ([10.237.217.46]) by fmsmga006.fm.intel.com with ESMTP; 27 Mar 2017 07:35:46 -0700 From: Ferruh Yigit To: Thomas Monjalon Cc: dev@dpdk.org, Ferruh Yigit Date: Mon, 27 Mar 2017 15:35:44 +0100 Message-Id: <20170327143544.9498-1-ferruh.yigit@intel.com> X-Mailer: git-send-email 2.8.4 Subject: [dpdk-dev] [PATCH] mk: use icc default inline limit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" ICC build time Before this patch (bnx2x PMD enabled [1]) real 8m16.622s After this patch (bnx2x enabled) real 0m35.140s [1] bnx2x cause the build take a lot, otherwise build times are more sane numbers. ICC has a default inline limit and when this limit is hit it generates a warning, and in DPDK this breaks the build. Previous solution was to remove the inline limit, which does more aggressive inlining and build may take too much time. This patch keeps the default inline limits, but prevents the warning ICC generates. Fixes: 8acbad88c4fa ("mk: fix build with icc-15") Signed-off-by: Ferruh Yigit --- mk/toolchain/icc/rte.vars.mk | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/mk/toolchain/icc/rte.vars.mk b/mk/toolchain/icc/rte.vars.mk index 86d9ef7..dd33645 100644 --- a/mk/toolchain/icc/rte.vars.mk +++ b/mk/toolchain/icc/rte.vars.mk @@ -69,9 +69,11 @@ TOOLCHAIN_ASFLAGS = # 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" +# Warning #11074, 11076: to prevent "inline-max-size" warnings. WERROR_FLAGS := -Wall -w2 -diag-disable 271 -diag-warning 1478 WERROR_FLAGS += -diag-disable 13368 -diag-disable 15527 WERROR_FLAGS += -diag-disable 188 +WERROR_FLAGS += -diag-disable 11074 -diag-disable 11076 ifeq ($(RTE_DEVEL_BUILD),y) WERROR_FLAGS += -Werror-all @@ -79,10 +81,6 @@ endif # process cpu flags include $(RTE_SDK)/mk/toolchain/$(RTE_TOOLCHAIN)/rte.toolchain-compat.mk -# disable max-inline params boundaries for ICC compiler for version 15 and greater -ifeq ($(shell test $(ICC_MAJOR_VERSION) -ge 14 && 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