From patchwork Mon Apr 25 15:35:27 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 102463 Delivered-To: patch@linaro.org Received: by 10.140.93.198 with SMTP id d64csp1106755qge; Mon, 25 Apr 2016 08:37:55 -0700 (PDT) X-Received: by 10.66.139.9 with SMTP id qu9mr49675083pab.101.1461598652797; Mon, 25 Apr 2016 08:37:32 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id gs6si7556792pac.81.2016.04.25.08.37.32; Mon, 25 Apr 2016 08:37:32 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932920AbcDYPhT (ORCPT + 29 others); Mon, 25 Apr 2016 11:37:19 -0400 Received: from mout.kundenserver.de ([212.227.17.13]:58134 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932844AbcDYPhQ (ORCPT ); Mon, 25 Apr 2016 11:37:16 -0400 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue101) with ESMTPA (Nemesis) id 0MIvAv-1asmbS2y0f-002VGp; Mon, 25 Apr 2016 17:35:39 +0200 From: Arnd Bergmann To: Michal Marek Cc: linux-kbuild@vger.kernel.org, Peter Oberparleiter , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Arnd Bergmann Subject: [PATCH 1/5] Kbuild: change CC_OPTIMIZE_FOR_SIZE definition Date: Mon, 25 Apr 2016 17:35:27 +0200 Message-Id: <1461598531-2190169-2-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1461598531-2190169-1-git-send-email-arnd@arndb.de> References: <1461598531-2190169-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:/o9KGCtHPfAx7h8PjAjQcEGsSnwGZNVUZw97HwbBtqR1txdzSM/ gi8if3FhL/yWSfr/5spf3gnoyXIeplDuraYICgoWdKmAGmY4X0yLBEA5OkoX0VtTyWJgb+4 BRLUc1fS6TYOKGvc/qB9pqnU+8NU044DK0dPqYwzdEjsEQeT+jMnuNdVRxqMe2YZGbngyvK k/FqNZdmEvGcutSckOrVA== X-UI-Out-Filterresults: notjunk:1; V01:K0:Od22WQfSiGw=:IgLm6ZqdfosqbbW2nzsSwA 2IsNNmKe3jKVx0GHrtH5uQSybBFjndfqOtsWJzREzyTl6GVZvDRTnefq+LmVRaeOWNBiBTrEn 6HQa7DXULDCCKkwuIErKTlHykjcRAW3zLQtSUvLlX6UaNax3xnDvap1SuiMcpMMeN3L9ujrJ1 ssbsPJh2xSj9dyE/pzpxt7SCqnQsuE0AHA0AVTh6aUMXAblJ+7WByo3oI2cJwXoRQhBffBHeA 8bHmdsqbUPBm2/WPL6SQCXoWky2p1WmsvUFNdLk440nW14R3mM0YlwJ0C9KeOYnTGpEgRRgfL wWj0Xp5eehvQ3OmzmJ02WF1xGzCSFVDYc0agny7M9oaMIkLRs7ysNEnFvoWlE93csif19yw2J WA/r06rWS/c7uq6LEAbVizONYEHYElOK+XQbviLOnnwgM4ImtUv0xZLFt6TLnOYpfAuglFuOM Cac7i/oTHESJ2fuomJVlSE5rnn8s6q4/viOsmqDzw98VoJQMnmsNSIiMojnMAJt2chlZNssTr PJiPIPwjJ4HgY9JnXfixB0AzosXyVHmUdk3rT+nemMmt8fyYLn0HIuIXNyIgngJQIknxWI5+n k6zYkPNmU/IHop5hQNOpZ7cFOgrqe10VR8P74ILQQkCRllUzN8QJE+f/p0ztN5u8tI5bYFrEH H7/EG43Y3G29eOzOOs/DPdzdMZ20CPMNFAVtFT010QQzejbu0i7rT5d6UFYP2FuekLLI= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org CC_OPTIMIZE_FOR_SIZE disables the often useful -Wmaybe-unused warning, because that causes a ridiculous amount of false positives when combined with -Os. This means a lot of warnings don't show up in testing by the developers that should see them with an 'allmodconfig' kernel that has CC_OPTIMIZE_FOR_SIZE enabled, but only later in randconfig builds that don't. This changes the Kconfig logic around CC_OPTIMIZE_FOR_SIZE to make it a 'choice' statement defaulting to CC_OPTIMIZE_FOR_PERFORMANCE that gets added for this purpose. The allmodconfig and allyesconfig kernels now default to -O2 with the maybe-unused warning enabled. Signed-off-by: Arnd Bergmann --- init/Kconfig | 13 +++++++++++++ 1 file changed, 13 insertions(+) -- 2.7.0 diff --git a/init/Kconfig b/init/Kconfig index 0c666408a8b6..d1b766bf60c1 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -1284,6 +1284,17 @@ source "usr/Kconfig" endif +choice + prompt "Compiler optimization level" + default CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE + +config CC_OPTIMIZE_FOR_PERFORMANCE + bool "Optimize for performance" + help + This is the default optimization level for the kernel, building + with the "-O2" compiler flag for best performance and most + helpful compile-time warnings. + config CC_OPTIMIZE_FOR_SIZE bool "Optimize for size" help @@ -1292,6 +1303,8 @@ config CC_OPTIMIZE_FOR_SIZE If unsure, say N. +endchoice + config SYSCTL bool