From patchwork Sun Feb 17 15:31:25 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 10817121 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D4D8A17E9 for ; Sun, 17 Feb 2019 15:33:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C59CF2A436 for ; Sun, 17 Feb 2019 15:33:39 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B8C922A448; Sun, 17 Feb 2019 15:33:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 67D082A436 for ; Sun, 17 Feb 2019 15:33:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726311AbfBQPdj (ORCPT ); Sun, 17 Feb 2019 10:33:39 -0500 Received: from mail-ed1-f68.google.com ([209.85.208.68]:42508 "EHLO mail-ed1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728052AbfBQPdj (ORCPT ); Sun, 17 Feb 2019 10:33:39 -0500 Received: by mail-ed1-f68.google.com with SMTP id j89so2341466edb.9 for ; Sun, 17 Feb 2019 07:33:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=yvqULUZkqq9f6QAni1NoIGJqQ+OESNy+W8XKWrQS4ec=; b=BqmlL6pOOKMQeXwNTADdOBYrRlJe2/TjtKk62wN+o12FaD9T2VyokvZupwsOovunmA OD3AJdiy5TXAzmpY/UVHiAMVOhfrAJcijTdlVTer/bNhYxVxTX66pbE2+eL7eqed5FnC IFTdkHDfZ8cCMHvMqlpdow01hePZJfKGhZjcQoo8petlE/VZd+hcVddd6nvL4SQZBAFP HkjhMQ89rrYJ2caEHcvdliYStKz290JDg9GYWc4X4c5YhbA9wIEA+3Pc5QGqQARDmHhd rFptMtNTik/VjMaOlRQWz068iWc/lU+LlF1DvlAzaCsLfaZEn1DJHZ3wf9q6lAoQnAtK r2Bw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=yvqULUZkqq9f6QAni1NoIGJqQ+OESNy+W8XKWrQS4ec=; b=mARH1u54Xjg9HxoYQiPloDwRaCOODihuPwUUP89whNd1OL+7wos5kvmUtKcuJhXGtP ou7gJq37sAa7a/uVeVCrMa/j0uSydm4dAqgZwTBuuVXwOJ1lJddqKhkMwZeecZDgVe/W mETRM5n5WzyaLn/g6f9ghOL16hHUKbfTU3BWUuqQODKVCvZOjihrP12b6d6YhwQTjjD5 BD5FSYaBJLfF4y/23uYYzhJOzlxnZQTlA2u9eZ88YIasEu02Rt357/fPG2SH3W81BgJH ashLnM4p1oMYjJSH1Uy4tfUDSQBsDsAM9gL3WOikzgrNfwGAW2OQ25AKTBcvKDO70zjJ XrTw== X-Gm-Message-State: AHQUAuayutLDhIdvyoGhulfWt+XueCfjacVHtG+HAw+SIbD9+Y9Zuixj Pvpi3rU6GSkxgVB2cGdkRsyLRrXt X-Google-Smtp-Source: AHgI3IZjKJqjbQwkqBPV8W+6+chSgv04pDvxr7yc7FbaoDwOYvzQWdRn3zH5Vx50/CoUdAlEeGJ4gQ== X-Received: by 2002:a50:9938:: with SMTP id k53mr10715443edb.134.1550417617274; Sun, 17 Feb 2019 07:33:37 -0800 (PST) Received: from localhost.localdomain ([2a02:a03f:4034:3c00:8957:5468:9041:ae4f]) by smtp.gmail.com with ESMTPSA id u18sm2529108ejl.5.2019.02.17.07.33.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 17 Feb 2019 07:33:36 -0800 (PST) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Luc Van Oostenryck Subject: [PATCH 1/7] cgcc: -dumpmachine should be fetched with '$ccom' Date: Sun, 17 Feb 2019 16:31:25 +0100 Message-Id: <20190217153131.94556-2-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190217153131.94556-1-luc.vanoostenryck@gmail.com> References: <20190215101427.9896-1-uwe@kleine-koenig.org> <20190217153131.94556-1-luc.vanoostenryck@gmail.com> MIME-Version: 1.0 Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The variable '$ccom' is used to hold the compiler command only while '$cc' hold the compiler and it's options. So, use '$ccom' to fetch '-dumpmachine' instead of '$cc'. Signed-off-by: Luc Van Oostenryck --- cgcc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cgcc b/cgcc index c42fee6de..456b97e37 100755 --- a/cgcc +++ b/cgcc @@ -322,7 +322,7 @@ sub add_specs { &define_size_t ("long unsigned int") . ' -D__SIZEOF_POINTER__=' . ($m64 ? '8' : '4')); } elsif ($spec eq 'arm') { - chomp (my $gccmachine = `$cc -dumpmachine`); + chomp (my $gccmachine = `$ccom -dumpmachine`); my $cppsymbols = ' -m32'; if ($gccmachine eq 'arm-linux-gnueabihf') { From patchwork Sun Feb 17 15:31:26 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 10817125 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 72FD2139A for ; Sun, 17 Feb 2019 15:33:41 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 637922A419 for ; Sun, 17 Feb 2019 15:33:41 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 57B492A437; Sun, 17 Feb 2019 15:33:41 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 013F92A419 for ; Sun, 17 Feb 2019 15:33:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728111AbfBQPdk (ORCPT ); Sun, 17 Feb 2019 10:33:40 -0500 Received: from mail-ed1-f66.google.com ([209.85.208.66]:43026 "EHLO mail-ed1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728052AbfBQPdk (ORCPT ); Sun, 17 Feb 2019 10:33:40 -0500 Received: by mail-ed1-f66.google.com with SMTP id m35so7773299ede.10 for ; Sun, 17 Feb 2019 07:33:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ARZ8Kl2MU9+bpYBLEIqe9/cJs9KZung/vzWAxkFYx9E=; b=f+c5lVMtJlET1bzgDzPtkjeEJ2/dvX2bMhad80+2CW6/8Cvpb+t3xa6QPnhGxPYCXm L5mouZNonjLIzbSr0fRiTHTP00zWJQWKsD7gOFXHwtnXhDSSMeTLlfklef7ITrcHqRaI wrf3wVjETkontgGni5pMF3b0RWJxwqk2nHLXNOMAfoQiqbyTcxO6iOM8OB10uw54zWDG /m86x0iHKiw19Od1MbsUMmq5nuguaGhfnwnePa1CTHpJjc6TFj1uGheQuVrJWbYnFlvJ RfiT/nHiP/YzaObi+wpWSAtewQ8PEPeX+Ghzldf1ze2yNy/Fx9SqHNYALQbPQczmIuhn tv+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ARZ8Kl2MU9+bpYBLEIqe9/cJs9KZung/vzWAxkFYx9E=; b=izkxfh9zufkkMBmbbKEqtbdeIAVhMUHjgIz+gcDGu6wCfGGHzLBXNt5mjzMSV5JDlP ggBmf4DoV6Ttn48xgtNv3041eopzhN6sOx1pj7W2HHqyEvRHZ1cOh/+2A8l3FSmhGKLY Xk5Hf0ZkXS24gdGzRqo5NQUEkc0/eGy+ocjyTDitN7N7m1Woctp7Z87uXEcnGsTOLMHq EF4UHzaU6BUiLrvtFYJV+MpyfXorX3aJBK2QAZZU0FtR7fxccfFefiTaSPd5dtjhJ+/W Oo6UhKXvwQtnN366tlq5k4wn1Ed3/9LCV8WB8jMf6a+DSieAKHQ1KuvOZo2yTepet0e8 jLsg== X-Gm-Message-State: AHQUAuYSpCfYGKehCOXTUju2xgljZEwRTGevSJD+V0qrCMdzF8KXmN7M rUTjmpE2s08V3wpw+E5CAfgFpaIb X-Google-Smtp-Source: AHgI3IahMiUsftgC+vdO9DojXtU4bcYi0oLsoeQj0S4U8v8IffC3ezYUpvJgHh8DU0pFaloEJHBADw== X-Received: by 2002:a17:906:3482:: with SMTP id g2mr13448437ejb.242.1550417618477; Sun, 17 Feb 2019 07:33:38 -0800 (PST) Received: from localhost.localdomain ([2a02:a03f:4034:3c00:8957:5468:9041:ae4f]) by smtp.gmail.com with ESMTPSA id u18sm2529108ejl.5.2019.02.17.07.33.37 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 17 Feb 2019 07:33:37 -0800 (PST) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Luc Van Oostenryck Subject: [PATCH 2/7] cgcc: add pseudo-archs for ppc64be/ppc64le Date: Sun, 17 Feb 2019 16:31:26 +0100 Message-Id: <20190217153131.94556-3-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190217153131.94556-1-luc.vanoostenryck@gmail.com> References: <20190215101427.9896-1-uwe@kleine-koenig.org> <20190217153131.94556-1-luc.vanoostenryck@gmail.com> MIME-Version: 1.0 Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Platforms having an uname's machine 'ppc64' or 'ppc64le' need to have their endianness set (as well as the 'ELF' version). To facilitate some futur changes and code reuses here, create entries for 2 pseudo-archs 'ppc64+be' & 'ppc64+le'. Signed-off-by: Luc Van Oostenryck --- cgcc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/cgcc b/cgcc index 456b97e37..7ae6e5c6d 100755 --- a/cgcc +++ b/cgcc @@ -315,6 +315,10 @@ sub add_specs { } elsif ($spec eq 'ppc64') { return (' -D_STRING_ARCH_unaligned=1 -m64' . &float_types (1, 1, 21, [24,8], [53,11], [113,15])); + } elsif ($spec eq 'ppc64+be') { + return &add_specs ('ppc64') . ' -mbig-endian -D_CALL_ELF=1'; + } elsif ($spec eq 'ppc64+le') { + return &add_specs ('ppc64') . ' -mlittle-endian -D_CALL_ELF=2'; } elsif ($spec eq 's390x') { return (' -D_BIG_ENDIAN' . &integer_types (8, 16, 32, $m64 ? 64 : 32, 64) . @@ -350,9 +354,9 @@ sub add_specs { } elsif ($arch =~ /^(ppc)$/i) { return &add_specs ('ppc'); } elsif ($arch =~ /^(ppc64)$/i) { - return &add_specs ('ppc64') . ' -mbig-endian -D_CALL_ELF=1'; + return &add_specs ('ppc64+be'); } elsif ($arch =~ /^(ppc64le)$/i) { - return &add_specs ('ppc64') . ' -mlittle-endian -D_CALL_ELF=2'; + return &add_specs ('ppc64+le'); } elsif ($arch =~ /^(s390x)$/i) { return &add_specs ('s390x'); } elsif ($arch =~ /^(sparc64)$/i) { From patchwork Sun Feb 17 15:31:27 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 10817127 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 76CE4139A for ; Sun, 17 Feb 2019 15:33:42 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6621D2A419 for ; Sun, 17 Feb 2019 15:33:42 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5A5902A437; Sun, 17 Feb 2019 15:33:42 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 093102A419 for ; Sun, 17 Feb 2019 15:33:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728113AbfBQPdl (ORCPT ); Sun, 17 Feb 2019 10:33:41 -0500 Received: from mail-ed1-f65.google.com ([209.85.208.65]:45834 "EHLO mail-ed1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728110AbfBQPdl (ORCPT ); Sun, 17 Feb 2019 10:33:41 -0500 Received: by mail-ed1-f65.google.com with SMTP id d9so11696394edh.12 for ; Sun, 17 Feb 2019 07:33:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=45k4uQu4/S/MLCDSzjwFE9qDE+SpLvxAG8J6hP9MIq4=; b=pbzE/JV5dmLiU762pheQ1kA/ozqJjF5OufSobddzNoUVKbdQQKxMPoda0e3BvVTsMV 2IOluQTYE11L1t8RGIO1KhmPw8+WlOgkwmTBWgpOYqyUsa4YSjFReAHh5ncuPdr3kmKk WqsESnraK5i6MhjcV5jtmsVYRVMbd0NKrKJPW7d6Zpe9Q7ieVEPK5KskbzJENJ0Wkb2M SPb1hZ4bDGuHxH2mgReEu0ERiPO65tFzRP12Ca3Zx/6vgXzQHcdJjhZlPGMZxZokiwCW b/y4I7RwMoiAh2sT3U1/glocVAlMuf6XfjgdStNubEWB/UC+lcC/MJY9+ztrQo6KX+85 E4JA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=45k4uQu4/S/MLCDSzjwFE9qDE+SpLvxAG8J6hP9MIq4=; b=Zf3utKOzdCuA8+w13jNOK8DMZW5F1GYZ8lZq3cgMJlEXRu+xBg5uwtqrHZ2jI29Irj csG81PtD1oQzscHpGVvfwMfUArxiYvfyz9NNDfMGunUHMR3KjQInH0zQnOcJfvcWMJiq OysZ5aEvj5okbEoqNYHYRSPbSDGQO0gmrLh1jbbrvBwVejwYG5NjdLBBb32SeOzD0378 eIiR+Zx1IU6EphKzdEbyGSOyqGbKp2leunejVcUE7yOxSPrUfh+HSala61oMZnrcmbvE dBTbsVuhLv33FoT2gUfS7vhJAU6aRIIiF5uxijN5mCP4clQxpkjfaEFcCAEsdF9Mxpgh kqRw== X-Gm-Message-State: AHQUAuZNo79aSOqxuVwMQRhqfe6fXpfeN7Uv7Tp/RFArGHbTG4JLqnbG MphAbaHcK7vfe2W7qq04Uj725DuM X-Google-Smtp-Source: AHgI3IZO4PTSNxqc44MqIvJVCUjR5kJLfpnsROrReawjwFNRh5n+jXxHkp/d5aqxrm8/N0NL8a0ypA== X-Received: by 2002:a17:906:7042:: with SMTP id r2mr13803208ejj.81.1550417619581; Sun, 17 Feb 2019 07:33:39 -0800 (PST) Received: from localhost.localdomain ([2a02:a03f:4034:3c00:8957:5468:9041:ae4f]) by smtp.gmail.com with ESMTPSA id u18sm2529108ejl.5.2019.02.17.07.33.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 17 Feb 2019 07:33:38 -0800 (PST) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Luc Van Oostenryck Subject: [PATCH 3/7] cgcc: simpler handling of hard-float ARM Date: Sun, 17 Feb 2019 16:31:27 +0100 Message-Id: <20190217153131.94556-4-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190217153131.94556-1-luc.vanoostenryck@gmail.com> References: <20190215101427.9896-1-uwe@kleine-koenig.org> <20190217153131.94556-1-luc.vanoostenryck@gmail.com> MIME-Version: 1.0 Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP There is an ABI for ARM with hard floats and one for soft floats (as well as one for a sort of mix between hard & soft). For the hard fp, the preprocessor symbol '__ARM_PCS_VFP' needs to be defined. This is added as an additional check in the code returning the 'specs' for ARM. To facilitate some incoming changes and code reuses here, create a pseudo-arch 'arm+hf' for define the symbol. Signed-off-by: Luc Van Oostenryck --- cgcc | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/cgcc b/cgcc index 7ae6e5c6d..5336ae3ce 100755 --- a/cgcc +++ b/cgcc @@ -326,15 +326,10 @@ sub add_specs { &define_size_t ("long unsigned int") . ' -D__SIZEOF_POINTER__=' . ($m64 ? '8' : '4')); } elsif ($spec eq 'arm') { - chomp (my $gccmachine = `$ccom -dumpmachine`); - my $cppsymbols = ' -m32'; - - if ($gccmachine eq 'arm-linux-gnueabihf') { - $cppsymbols .= ' -mfloat-abi=hard'; - } - - return ($cppsymbols . + return (' -m32' . &float_types (1, 1, 36, [24,8], [53,11], [53, 11])); + } elsif ($spec eq 'arm+hf') { + return &add_specs ('arm') . ' -mfloat-abi=hard'; } elsif ($spec eq 'aarch64') { return (' -m64' . &float_types (1, 1, 36, [24,8], [53,11], [113,15])); @@ -362,6 +357,10 @@ sub add_specs { } elsif ($arch =~ /^(sparc64)$/i) { return &add_specs ('sparc64'); } elsif ($arch =~ /^arm(?:v[78]l)?$/i) { + chomp (my $gccmachine = `$ccom -dumpmachine`); + if ($gccmachine eq 'arm-linux-gnueabihf') { + return &add_specs ('arm+hf'); + } return &add_specs ('arm'); } elsif ($arch =~ /^(aarch64)$/i) { return &add_specs ('aarch64'); From patchwork Sun Feb 17 15:31:28 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 10817129 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 28EB51390 for ; Sun, 17 Feb 2019 15:33:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 189902A419 for ; Sun, 17 Feb 2019 15:33:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 0C7A22A43A; Sun, 17 Feb 2019 15:33:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8282B2A419 for ; Sun, 17 Feb 2019 15:33:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728117AbfBQPdn (ORCPT ); Sun, 17 Feb 2019 10:33:43 -0500 Received: from mail-ed1-f68.google.com ([209.85.208.68]:37111 "EHLO mail-ed1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728052AbfBQPdn (ORCPT ); Sun, 17 Feb 2019 10:33:43 -0500 Received: by mail-ed1-f68.google.com with SMTP id m12so11728087edv.4 for ; Sun, 17 Feb 2019 07:33:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=I/BFTnqEKXuH8m/wn2W8spekG7l+UtNhYa2jh35mwQw=; b=pEeiGGxOug1MVq5cEvhkVb7vhnb/L+qid6RxX+dEMct0dSEdJq09AlHmKjEGBGkWot 9XydRpAyThsB+I5GrPITMgtNJ8CvqcLs2xG4QB/4gocLNLTtP8xjpc/XVtqj800h900/ uOW030jdfGolspc9D4NTJGMhr8Bo4QoEygiYqvzZA6JW/D2feEr7aLdNCNFtMvk+gJR8 6UjFcsR0Ib/nY2bmkf9FljIjLi5jFXKQu/STVGg72nzrQqo70Nu0m96Rx3ssw42rgbE9 BZ9JdfxfOE/ZfFF12soBSR1ZZk77WUR+JG+3iUoWNKOHYXa+0g50TbtG4KNrw3UWBcC4 KKHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=I/BFTnqEKXuH8m/wn2W8spekG7l+UtNhYa2jh35mwQw=; b=XSuuBjltNx0LjurPPAhCowR5UL4YdD1FmrtqwB1oQ690o8aoimw1PmzrI8m2EKNH+Z HsT7G1sJTP/An3LY9NazzWLjG50djgcBviNSkIZheV1pGwx8pcyFDpdRApU5TPzLyEa5 HItNI4tAu058DY3TVfCmNOZ1dRuvOT0VsNpf1A8Dvcy0yDZRqjU0xWp6aWRRZNa2nNx1 umACw+DfC11S6doj0DeKKc9chkldu2QpjQ1HxHjBaDa7eMJyay4eLDMz0Nlk7m7m/IM0 eDx3Bz2AjLONukx2UmUAbVgGbjITOsPsfw5EQ6H0MEpnNLa8iLbDPbVPQfZGvjs63qxj nKkQ== X-Gm-Message-State: AHQUAuYoHcT73A3bKk0bTRI0FcGI0yE77BC8TqmnRmgykMTvUd86Y6tR vxtTJCy9LE7d58TaFS8NyQgVitN7 X-Google-Smtp-Source: AHgI3IZCHEU6q6obkQGFY5waN2lIZtR7CMSQUIGWVxcfqS5dRWDbG13wAD520puZl+1uDBQViFPlqw== X-Received: by 2002:a50:e3cb:: with SMTP id c11mr15772026edm.80.1550417620774; Sun, 17 Feb 2019 07:33:40 -0800 (PST) Received: from localhost.localdomain ([2a02:a03f:4034:3c00:8957:5468:9041:ae4f]) by smtp.gmail.com with ESMTPSA id u18sm2529108ejl.5.2019.02.17.07.33.39 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 17 Feb 2019 07:33:40 -0800 (PST) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Luc Van Oostenryck Subject: [PATCH 4/7] cgcc: favor using 'gcc -dumpmachine' to determine specifics Date: Sun, 17 Feb 2019 16:31:28 +0100 Message-Id: <20190217153131.94556-5-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190217153131.94556-1-luc.vanoostenryck@gmail.com> References: <20190215101427.9896-1-uwe@kleine-koenig.org> <20190217153131.94556-1-luc.vanoostenryck@gmail.com> MIME-Version: 1.0 Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Uwe Kleine-König `uname -m` returns information about the host machine but this information is useless when cgcc is used with a non-native compiler. In this case it's information about the target machine that is needed. [This can happen when cross compiling or (more common) if you are running a 32 bit userspace on a 64 bit kernel. The latter makes sparse fail to build on some machines of the Debian build farm as for example some armhf builder run on arm64 kernels.] This patch is only lightly tested and also misses details for mips* and so marked as RFC.] Originally-by: Uwe Kleine-König Signed-off-by: Luc Van Oostenryck --- cgcc | 33 ++++++++++++++++++++++++++++----- 1 file changed, 28 insertions(+), 5 deletions(-) diff --git a/cgcc b/cgcc index 5336ae3ce..69380c60d 100755 --- a/cgcc +++ b/cgcc @@ -338,7 +338,34 @@ sub add_specs { chomp $os; return &add_specs (lc $os); } elsif ($spec eq 'host_arch_specs') { - my $arch = `uname -m`; + my $gccmachine; + my $arch; + + $gccmachine = `$ccom -dumpmachine`; + chomp $gccmachine; + + if ($gccmachine =~ '^aarch64-') { + return &add_specs ('aarch64'); + } elsif ($gccmachine =~ '^arm-.*eabihf$') { + return &add_specs ('arm+hf'); + } elsif ($gccmachine =~ '^arm-') { + return &add_specs ('arm'); + } elsif ($gccmachine =~ '^i[23456]86-') { + return &add_specs ('i386'); + } elsif ($gccmachine =~ '^(powerpc|ppc)64le-') { + return &add_specs ('ppc64+le'); + } elsif ($gccmachine =~ '^s390x-') { + return &add_specs ('s390x'); + } elsif ($gccmachine eq 'x86_64-linux-gnu') { + return &add_specs ('x86_64'); + } + + # fall back to uname -m to determine the specifics. + # Note: this is only meaningful when using natively + # since informaton about the host i sused to guess + # characteristics of the target. + + $arch = `uname -m`; chomp $arch; if ($arch =~ /^(i.?86|athlon)$/i) { return &add_specs ('i386'); @@ -357,10 +384,6 @@ sub add_specs { } elsif ($arch =~ /^(sparc64)$/i) { return &add_specs ('sparc64'); } elsif ($arch =~ /^arm(?:v[78]l)?$/i) { - chomp (my $gccmachine = `$ccom -dumpmachine`); - if ($gccmachine eq 'arm-linux-gnueabihf') { - return &add_specs ('arm+hf'); - } return &add_specs ('arm'); } elsif ($arch =~ /^(aarch64)$/i) { return &add_specs ('aarch64'); From patchwork Sun Feb 17 15:31:29 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 10817131 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 63C3717E9 for ; Sun, 17 Feb 2019 15:33:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 534512A419 for ; Sun, 17 Feb 2019 15:33:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 47D112A437; Sun, 17 Feb 2019 15:33:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id ECA1D2A436 for ; Sun, 17 Feb 2019 15:33:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728052AbfBQPdn (ORCPT ); Sun, 17 Feb 2019 10:33:43 -0500 Received: from mail-ed1-f68.google.com ([209.85.208.68]:45838 "EHLO mail-ed1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728110AbfBQPdn (ORCPT ); Sun, 17 Feb 2019 10:33:43 -0500 Received: by mail-ed1-f68.google.com with SMTP id d9so11696427edh.12 for ; Sun, 17 Feb 2019 07:33:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Wnmiu0FuxVRwjdC89ZZ6U8/hlB0RucVu2O5+//ODMSM=; b=BPiXNJ0n66HhZNUnqDoDjEEfxelTLDgnN+mojRLK6g3UhqkLcPf9U/mqeA/qkMhQVm cuU19SXxGl+0vF3CScRCBE+81VZknz98ZmMrMoj3Zxkmx1A+/EvnSAMFduDrPwv99FN8 oJ3eD6hbY/YPlQq2mPM9JH1m6+yGOyqJFe5YhNXyVGAc0nGXJDmrCVhKYP0Ir7NfXLbB 5GFZfcKNGp2XPWtKqTaE9oK2r9YMqxvnO+55C8ZWfaWwNz3PQbX3pSxt1R0NZF/s9TnC b848KfLQjLjpSwthixDYQKXtR0E6qGa4DIGCWhrpxsn+1eIAvqCC49289cocntM+J7to WTaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Wnmiu0FuxVRwjdC89ZZ6U8/hlB0RucVu2O5+//ODMSM=; b=IhYx6uv/bV4egTtqlVTh6kg2hkBtUOdRvOcjx1RJiz67bt2TD3gUJ/iUEWAtX1ETwW SwPZ8ESCOol0frwmX8KARPTAwqfMRmpZK327r4Ky5G7CPlL5DsNdgqhbloORdW0KTM5o b0zX0VxOWFtBZwYdn+CFSfsvtUBTjl2w9F/2xnGG5PHE/gopXbjL3ShAHzs4rgpWrhMX fwb27cwLDuIGqVmnDp0gqFjhBHbebp6+UJMuSclCcfseYKJqm1LzWVKfSqZAH0vvvTUG lfWhGNWGn6r85EO7P5P51bYFCFrEGLEGJQsoxB/H8UEzJb+3t8CHXDFJKbPIXdCRGmOY I9Mw== X-Gm-Message-State: AHQUAuazbjLjKuRhCGagDteUB2tsBZ4vUsVHlspbdEhxA5W56bQiOuCx 0fdAQ5mKfKTdCjNsweflB0sGujEP X-Google-Smtp-Source: AHgI3Ib9K1S7egLzx8SpOK/6F9Sk8qL6Eogs9vqYa8TBW5J0WKUckyo1N1SP0DDT3Q4+RR0Vxb3r0w== X-Received: by 2002:a17:906:2988:: with SMTP id x8mr13746190eje.105.1550417621784; Sun, 17 Feb 2019 07:33:41 -0800 (PST) Received: from localhost.localdomain ([2a02:a03f:4034:3c00:8957:5468:9041:ae4f]) by smtp.gmail.com with ESMTPSA id u18sm2529108ejl.5.2019.02.17.07.33.40 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 17 Feb 2019 07:33:41 -0800 (PST) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Luc Van Oostenryck Subject: [PATCH 5/7] cgcc: add support for x86-x32 Date: Sun, 17 Feb 2019 16:31:29 +0100 Message-Id: <20190217153131.94556-6-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190217153131.94556-1-luc.vanoostenryck@gmail.com> References: <20190215101427.9896-1-uwe@kleine-koenig.org> <20190217153131.94556-1-luc.vanoostenryck@gmail.com> MIME-Version: 1.0 Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Detect when the target is x86-64 and use the appropriate flag '-mx32'. Signed-off-by: Luc Van Oostenryck --- cgcc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cgcc b/cgcc index 69380c60d..d178e3bc3 100755 --- a/cgcc +++ b/cgcc @@ -356,7 +356,9 @@ sub add_specs { return &add_specs ('ppc64+le'); } elsif ($gccmachine =~ '^s390x-') { return &add_specs ('s390x'); - } elsif ($gccmachine eq 'x86_64-linux-gnu') { + } elsif ($gccmachine eq 'x86_64-linux-gnux32') { + return &add_specs ('x86_64') . ' -mx32'; + } elsif ($gccmachine =~ '^x86_64-') { return &add_specs ('x86_64'); } From patchwork Sun Feb 17 15:31:30 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 10817133 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 995B31390 for ; Sun, 17 Feb 2019 15:33:45 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 893712A419 for ; Sun, 17 Feb 2019 15:33:45 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 7DD292A437; Sun, 17 Feb 2019 15:33:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3730F2A419 for ; Sun, 17 Feb 2019 15:33:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728120AbfBQPdp (ORCPT ); Sun, 17 Feb 2019 10:33:45 -0500 Received: from mail-ed1-f50.google.com ([209.85.208.50]:39182 "EHLO mail-ed1-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728110AbfBQPdo (ORCPT ); Sun, 17 Feb 2019 10:33:44 -0500 Received: by mail-ed1-f50.google.com with SMTP id p27so4187790edc.6 for ; Sun, 17 Feb 2019 07:33:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=5rB6eUV4GA2prE0LHzsa3ETE5+yQXVlmtTgHJ7j2R3c=; b=PctUhul9PhGWPpb9u0s3RjdmGP8nDMbuoHfFDR94kBtBr+3yFwC7Sx2Vr7SYKQLfSA gMbGPJI9AFpVTlo71QvTqDYc4UhAbWJ4B32GL4qB7P2CzeE18THP635jtQuwJusBkLGE 5Es6wROeXmNpBEy0G7EJluv5WSawXx9adqOKdxM2WbPnKP56BZFq/zCmAOZCkhRxiZwh z12OvDnQuRwumTJ2VTATKjhB2OToH71HPWFW2gp8fkZ9OfNpCQKD2AInmko8XeZ8dOWo kHVQLnGQtRsfJjRT/BikIZ/w4oBCYaJhnk9EL4BXpVB+DtOR/NxpIWVA/rH5vx/PIHQk nssw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=5rB6eUV4GA2prE0LHzsa3ETE5+yQXVlmtTgHJ7j2R3c=; b=C7PLHlcTRqJW9UMG1M+/NA8tRRSok8wmUFofzFEWEJdOWM9E0YzYRGS3LoAuFRwO8o 1gEwgAnn6dFqyuH1cmZnWrgqXuoKu973/MS36Y9fAxyoRa7NA/qbDMS4oxPJaK0u1zfI LkYBJUP18gREq/KM9j4IXn3I3mbGMLB1B2Nw5LGzyWhJ0fGctXJFU5IWFr/dyxElPq0T /KAZP8hBBUeQPij3//O8UBvqyO03eJWPKUDShYxdeTRJlGjm6kO3W2sSFEQ6iKZk0evz VP2hyQoHJURPVMmvqHEXlIiV8hxviNsJt6w3qnLtQfQUtedrkIMRTyD5Dr6S0RVZSTMR dxSg== X-Gm-Message-State: AHQUAuYxF8CVZWYlTt1u3w9eFKmJg2w+VQX3WN0ElX+mvvtp37qGWmUH l+pslLKsweyYhXtve9SWJwc/jqI0 X-Google-Smtp-Source: AHgI3IZHyV+Ruhfj+zIauPfaEbgh1lUla4glzHsI9CXTMNhUI9EMEdIIy0qY6ZIU7Hr5E+s9T28bhw== X-Received: by 2002:a17:906:b742:: with SMTP id fx2mr7830494ejb.199.1550417622930; Sun, 17 Feb 2019 07:33:42 -0800 (PST) Received: from localhost.localdomain ([2a02:a03f:4034:3c00:8957:5468:9041:ae4f]) by smtp.gmail.com with ESMTPSA id u18sm2529108ejl.5.2019.02.17.07.33.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 17 Feb 2019 07:33:42 -0800 (PST) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Luc Van Oostenryck Subject: [PATCH 6/7] cgcc: extract add_specs_arch() from add_specs() Date: Sun, 17 Feb 2019 16:31:30 +0100 Message-Id: <20190217153131.94556-7-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190217153131.94556-1-luc.vanoostenryck@gmail.com> References: <20190215101427.9896-1-uwe@kleine-koenig.org> <20190217153131.94556-1-luc.vanoostenryck@gmail.com> MIME-Version: 1.0 Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP --- cgcc | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/cgcc b/cgcc index d178e3bc3..170612b05 100755 --- a/cgcc +++ b/cgcc @@ -92,7 +92,7 @@ if ($gendeps) { if ($do_check) { if (!$has_specs) { - $check .= &add_specs ('host_arch_specs'); + $check .= &add_specs_arch; $check .= &add_specs ('host_os_specs'); } @@ -337,7 +337,12 @@ sub add_specs { my $os = `uname -s`; chomp $os; return &add_specs (lc $os); - } elsif ($spec eq 'host_arch_specs') { + } else { + die "$0: invalid specs: $spec\n"; + } +} + +sub add_specs_arch { my $gccmachine; my $arch; @@ -390,9 +395,8 @@ sub add_specs { } elsif ($arch =~ /^(aarch64)$/i) { return &add_specs ('aarch64'); } - } else { - die "$0: invalid specs: $spec\n"; - } + + print "$0: unknown arch: $arch\n" if $verbose; } # ----------------------------------------------------------------------------- From patchwork Sun Feb 17 15:31:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 10817135 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 640DE139A for ; Sun, 17 Feb 2019 15:33:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 53C412A419 for ; Sun, 17 Feb 2019 15:33:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4858E2A437; Sun, 17 Feb 2019 15:33:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DA7D92A419 for ; Sun, 17 Feb 2019 15:33:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728125AbfBQPdq (ORCPT ); Sun, 17 Feb 2019 10:33:46 -0500 Received: from mail-ed1-f46.google.com ([209.85.208.46]:37266 "EHLO mail-ed1-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728110AbfBQPdq (ORCPT ); Sun, 17 Feb 2019 10:33:46 -0500 Received: by mail-ed1-f46.google.com with SMTP id m12so11728150edv.4 for ; Sun, 17 Feb 2019 07:33:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=R9Ev0DKnF3IMOyiFkLxGDV9c0Q+EyN0Vpwh9XlL6tKo=; b=Y5+HWFk354305u1qpJnauPHhaQ0BmiUx/wI1ZLy1+I+ncGyrTYWYAAZJeqitaPXfgl 0FkTmzIFO/BdfYDDawPlhJ/hcafNYMkgyQT4Ei9jwgeR0izrfURmf7Z6OKnfCJ3roGBx +TRQyxr9pzSeGdMhduirZWh+sy57V/kai2rDzzg3UHZbcwyJWpMTogoTfgcceKf5zxjI gqxufKH0ORrZsFcPuJVVh97+h5ffYot9vk79cAMHel32n1vZfqQhgh8zq792ww0ao8Vj eHC06BMOc94PFmrUSQahGLgXC4vsXNGTBznLxcE5YSqSiCW6R4F/zvfC4SydJOGctSG5 bm0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=R9Ev0DKnF3IMOyiFkLxGDV9c0Q+EyN0Vpwh9XlL6tKo=; b=irks8k023lFhemiEfkB0GCtETsd5tmhdZq5hdAGWL1An+oWoVseh98N/kbMHkI6A3Y O6q3YaEmJTu6vr9akWoQ862L2V526+oP3YzCjtxGP0ke6LKS90f6yXIQOQ6gNHJG24zg 9XBSm6flOZFmPaYBRXvXa5Og/d2cdAWozg2+roJzQdyI6C/kDXZjGwZlS+77PToi7Dg9 xCgUzKexob+kQP1ugI3fKHo0SCB9GE9EG0HPCyZvEOwzW18QZ+zu6TKvWaSc4kQVq3Fi JO9X8ajjPWScs12J2nyrXVwivyxIZ4lSgJkxKGq0B5Bpoa1CsLT963u5pFuZMiePMO6B eLRg== X-Gm-Message-State: AHQUAuaCted2yOd2hQnBQ8l0us/g4KGVA6vj1jjtJczU5Rttkmut3rUu FEYVXI0QtLCgoO4CLAH4t6uIKcu2 X-Google-Smtp-Source: AHgI3IY9rAnvh0ahWtCTP9OpQADhu14tvgidCfWF9W0AVyP11smjZHMu0XQselimhPHNtr0jhoErYg== X-Received: by 2002:a50:d2d7:: with SMTP id q23mr8399416edg.120.1550417623908; Sun, 17 Feb 2019 07:33:43 -0800 (PST) Received: from localhost.localdomain ([2a02:a03f:4034:3c00:8957:5468:9041:ae4f]) by smtp.gmail.com with ESMTPSA id u18sm2529108ejl.5.2019.02.17.07.33.43 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 17 Feb 2019 07:33:43 -0800 (PST) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Luc Van Oostenryck Subject: [PATCH 7/7] cgcc: extract add_specs_os() from add_specs() Date: Sun, 17 Feb 2019 16:31:31 +0100 Message-Id: <20190217153131.94556-8-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190217153131.94556-1-luc.vanoostenryck@gmail.com> References: <20190215101427.9896-1-uwe@kleine-koenig.org> <20190217153131.94556-1-luc.vanoostenryck@gmail.com> MIME-Version: 1.0 Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP --- cgcc | 43 +++++++++++++++++++++++++------------------ 1 file changed, 25 insertions(+), 18 deletions(-) diff --git a/cgcc b/cgcc index 170612b05..5fb458c40 100755 --- a/cgcc +++ b/cgcc @@ -93,7 +93,7 @@ if ($gendeps) { if ($do_check) { if (!$has_specs) { $check .= &add_specs_arch; - $check .= &add_specs ('host_os_specs'); + $check .= &add_specs_os; } $gcc_base_dir = qx($ccom -print-file-name=) if !$gcc_base_dir; @@ -246,10 +246,16 @@ sub define_size_t { # ----------------------------------------------------------------------------- -sub add_specs { - my ($spec) = @_; +sub add_specs_unix { + return ' -Dunix=1 -D__unix=1 -D__unix__=1'; +} + +sub add_specs_os { + my $spec = lc `uname -s`; + chomp $spec; + if ($spec eq 'sunos') { - return &add_specs ('unix') . + return &add_specs_unix . ' -D__sun__=1 -D__sun=1 -Dsun=1' . ' -D__svr4__=1 -DSVR4=1' . ' -D__STDC__=0' . @@ -257,30 +263,28 @@ sub add_specs { ' -D_SOLARIS_THREADS' . ' -DNULL="((void *)0)"'; } elsif ($spec eq 'linux') { - return &add_specs ('unix') . + return &add_specs_unix . ' -D__linux__=1 -D__linux=1 -Dlinux=linux'; } elsif ($spec eq 'gnu/kfreebsd') { - return &add_specs ('unix') . + return &add_specs_unix . ' -D__FreeBSD_kernel__=1'; } elsif ($spec eq 'openbsd') { - return &add_specs ('unix') . + return &add_specs_unix . ' -D__OpenBSD__=1'; } elsif ($spec eq 'freebsd') { - return &add_specs ('unix') . + return &add_specs_unix . ' -D__FreeBSD__=1'; } elsif ($spec eq 'netbsd') { - return &add_specs ('unix') . + return &add_specs_unix . ' -D__NetBSD__=1'; } elsif ($spec eq 'darwin') { return ' -D__APPLE__=1 -D__MACH__=1'; } elsif ($spec eq 'gnu') { # Hurd - return &add_specs ('unix') . # So, GNU is Unix, uh? + return &add_specs_unix . # So, GNU is Unix, uh? ' -D__GNU__=1 -D__gnu_hurd__=1 -D__MACH__=1'; - } elsif ($spec eq 'unix') { - return ' -Dunix=1 -D__unix=1 -D__unix__=1'; } elsif ( $spec =~ /^cygwin/) { - return &add_specs ('unix') . + return &add_specs_unix . ' -D__CYGWIN__=1 -D__CYGWIN32__=1' . " -D'_cdecl=__attribute__((__cdecl__))'" . " -D'__cdecl=__attribute__((__cdecl__))'" . @@ -289,7 +293,14 @@ sub add_specs { " -D'_fastcall=__attribute__((__fastcall__))'" . " -D'__fastcall=__attribute__((__fastcall__))'" . " -D'__declspec(x)=__attribute__((x))'"; - } elsif ($spec eq 'i386') { + } + + print "$0: unknown OS: $spec\n" if $verbose; +} + +sub add_specs { + my ($spec) = @_; + if ($spec eq 'i386') { return ( &float_types (1, 1, 21, [24,8], [53,11], [64,15])); } elsif ($spec eq 'sparc') { @@ -333,10 +344,6 @@ sub add_specs { } elsif ($spec eq 'aarch64') { return (' -m64' . &float_types (1, 1, 36, [24,8], [53,11], [113,15])); - } elsif ($spec eq 'host_os_specs') { - my $os = `uname -s`; - chomp $os; - return &add_specs (lc $os); } else { die "$0: invalid specs: $spec\n"; }