From patchwork Thu Jun 16 17:18:20 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Greenhalgh X-Patchwork-Id: 70206 Delivered-To: patch@linaro.org Received: by 10.140.28.4 with SMTP id 4csp371023qgy; Thu, 16 Jun 2016 10:19:25 -0700 (PDT) X-Received: by 10.98.152.76 with SMTP id q73mr6491831pfd.38.1466097565083; Thu, 16 Jun 2016 10:19:25 -0700 (PDT) Return-Path: Received: from sourceware.org (server1.sourceware.org. [209.132.180.131]) by mx.google.com with ESMTPS id ab3si20384604pad.150.2016.06.16.10.19.24 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 16 Jun 2016 10:19:25 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-return-429996-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) client-ip=209.132.180.131; Authentication-Results: mx.google.com; dkim=pass header.i=@gcc.gnu.org; spf=pass (google.com: domain of gcc-patches-return-429996-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-429996-patch=linaro.org@gcc.gnu.org DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:mime-version:content-type; q=dns; s=default; b=QUcyaLa/MC6Zm5y3AQCfdlEtdWjDsMM+NLIg7pzgLOONnaeQNX Bs9hvAO0Sl3vamITSefQNf290FH53xgGj4zgHf8MrFxWAY6pvRJlCHFpxB8kZbIi wN2F6fxRSz7fK1UQcg7WEmgpkM9UUaXiKB9VbBs3DLLE6cStXQ0hPhmg0= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:mime-version:content-type; s= default; bh=Vl/ZTx9+0TQsgA1pbu+uqUZYuxU=; b=EORoZp77p3g++IEO/yk0 myw/NAJ2IuOPbiqJV3z+4C22FelrYqiAQRwiU3qECp5bdUve7PUi3uvzu/nxe1Pp UupScgByrZDHF+Y3dC0IxGCmeGhX248lCzmh7GRF4QS7/Pa6MbRoquYLXfGRstOt GNDrPPk6ww12/uSxsTj4Iss= Received: (qmail 8086 invoked by alias); 16 Jun 2016 17:19:11 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 8075 invoked by uid 89); 16 Jun 2016 17:19:10 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.6 required=5.0 tests=AWL, BAYES_00, SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-spam-relays-external:167, H*RU:167 X-HELO: eu-smtp-delivery-143.mimecast.com Received: from eu-smtp-delivery-143.mimecast.com (HELO eu-smtp-delivery-143.mimecast.com) (146.101.78.143) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 16 Jun 2016 17:18:53 +0000 Received: from emea01-db3-obe.outbound.protection.outlook.com (mail-db3lrp0081.outbound.protection.outlook.com [213.199.154.81]) (Using TLS) by eu-smtp-1.mimecast.com with ESMTP id uk-mta-13-uDhotB46NVWiHOG1nqUteA-1; Thu, 16 Jun 2016 18:18:48 +0100 Received: from AM3PR08CA0052.eurprd08.prod.outlook.com (10.163.23.148) by HE1PR08MB1017.eurprd08.prod.outlook.com (10.166.125.139) with Microsoft SMTP Server (TLS) id 15.1.517.8; Thu, 16 Jun 2016 17:18:46 +0000 Received: from DB3FFO11OLC002.protection.gbl (2a01:111:f400:7e04::167) by AM3PR08CA0052.outlook.office365.com (2a01:111:e400:8854::20) with Microsoft SMTP Server (TLS) id 15.1.523.12 via Frontend Transport; Thu, 16 Jun 2016 17:18:46 +0000 Received: from nebula.arm.com (217.140.96.140) by DB3FFO11OLC002.mail.protection.outlook.com (10.47.217.130) with Microsoft SMTP Server (TLS) id 15.1.511.7 via Frontend Transport; Thu, 16 Jun 2016 17:18:46 +0000 Received: from e107456-lin.cambridge.arm.com (10.1.2.79) by mail.arm.com (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 16 Jun 2016 18:18:24 +0100 From: James Greenhalgh To: CC: , , , Subject: [Patch ARM arm_neon.h] s/__FAST_MATH/__FAST_MATH__/g Date: Thu, 16 Jun 2016 18:18:20 +0100 Message-ID: <1466097500-35271-1-git-send-email-james.greenhalgh@arm.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(7916002)(2980300002)(438002)(377424004)(199003)(189002)(5003600100002)(84326002)(86362001)(2906002)(87936001)(189998001)(110136002)(4610100001)(92566002)(4326007)(19580395003)(246002)(356003)(19580405001)(33646002)(512874002)(5890100001)(50986999)(5000100001)(8936002)(26826002)(586003)(50226002)(2476003)(6806005)(2351001)(229853001)(11100500001)(5008740100001)(106466001)(104016004)(450100001)(8676002)(77096005)(568964002)(36756003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR08MB1017; H:nebula.arm.com; FPR:; SPF:Pass; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; CAT:NONE; LANG:en; CAT:NONE; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11OLC002; 1:peQiEwaFBumwHWbFbWe26hZqSmquN5uaJcRd7KidPKEXOG0HH6hZm7eiMoGRYoE7oI8elfnUJi0NpyXiL4Zhwp/kIZ1ITP0RPc0+J6PIX5Yv/JRnW6vt6kEuerNeMv1lTTFA3l03c4gx4usDJypYjWrIua200uI+sy/FMb31T4ZM0OAoRKv27bcnOLa8sMiAb2pHqo0M/prZmHICPsYdezveTsFS2KOILz0yLOmiGPXmGFC4jlo/EMNXED9bSuan6JzxzgW97ezb2sGidsk43Aw3CyhqvQ+kDtpJMVhXPVPkjipcpcNOstYuzbbQrjEZpfZcrJ6la5lxqT1eU6Wfy/7hlB4CsJg8qFvd2v5yCr/XZ5SuPfxZU+BmqQe3dcoIOpBCnjhuUSaKNWGANKxw/Et99usTDd0c5x66WuUSJHbOcSHI7Z5UXmSTBOZ9z+oZPbjsVVu1crGqHitSnrUn8sE0C7Y1rwE/1lExN03Feh8Qmov0PT01DylrqQ+Mj/CI X-MS-Office365-Filtering-Correlation-Id: 9520dca2-4b95-4afc-c680-08d3960a4679 X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB1017; 2:swLNwAniemDWzmpsKVtfz3eLDhit+a5xri6OHHfnOTCJb44gXcvyYvLMezOPCiuWp8G+4oRYpo5kCsx+qGGsCDqLNXOTZnuxpz0S69keuB7l1v9+/Ba6ZzduG2e094UTsXdaZ4aZkt8v2jr1/yOcxwHQborJewPuRsI2gYXtK5A7daOx81CnzceCPsAoCcXe; 3:6AUO6ROPnCk3LFB2xMPzGHqFKB/FqOrlJrTaQREPjY0p6MYOkQybwTAmgkIqnnplXIV/Mck8cCEyj4QbjPNv+mJ6EOQga1/QSgshbgUoJkuCW/hdCEusngIzCIm5dw46Pl6BPgP418wK1HmdcP0y6QYYB4SmIouBtxJXxZ7YQaiLEJuBjA4jtp8CXzw2sbHA/aOeUW2rF1U8GLw6jNejRx+M7xGv2IpNaaiHC/IwoNIqyLONyECTS4lslbzHh5BVnRrxQz54b1DZkJghonaPHA== X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(8251501002); SRVR:HE1PR08MB1017; X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB1017; 25:K/q6GLNnyg/eazvErtW8rOXzToECx5CsW6K24rga3MeaX4U1bUPAZuP18p8ZZlm0/foLpP7LjUe3Uq4sfqzXMHP4IybEVeoqB8KHaoxnt203U2UFbv5YM9ql3KBQSK/azQjvMmohRk24b0pFA900slZdHBqDid27OCXJA6dhRF8ITrOUu4CqzqnR3/6avXHcZCagtoTbGzsFFcPpG2s0U20XbJBtqQJfDan6oyv5BJZ9eWZYj30uW4vnLGF4GoyWhB7PsaQCWBG9tHkJwk9lDemmCCsh8wXpg6KREbClyXkBvY/unu43q4fxit/DVQSvvriiD+oTxNMO/fRLpmYqDkcHQBvMfSdZTPMShOGYKCtNeXLQ3PZfj6BwqeHDZPD/DA/JcK4y+hl28ZWLct/4nntbyz5KIGLBRk3l4onxpo5TKfRZ2iUUGTyDOegJxrNUVhfI0niUobDdgSUH0/G0Q/Cl0s/a/fyeEajo2ik1Mta+lyYRIDaAMRFOBnWf9xwL; 20:zDJFIaMjXsz0jRvIJLolxmIl9LkwlFo3Nc5EO2sNo8VkW1joVLV4cL+TiXRzfyhoFPAt39MVbCPt2v8JCdKkmBEP4qUeHysHPYVB9ND2rWQVcMcQWBTxUXANyyyzVvd1eF2bGXBmn1Zeod3H5QLfjVlT58fU/bQs31dBt5nljvEr+bVZPs5N1zkEBtLjesmw0fP6+Cu9J5o7VQxZpLi0qYF+J9jJHU6X3GJTyjNhjllJfD3QeGBxbeOkFAJ++DQa NoDisclaimer: True X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(788757137089); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(102415321)(601004)(2401047)(5005006)(8121501046)(13020025)(13024025)(13013025)(13023025)(10201501046)(3002001)(6055026); SRVR:HE1PR08MB1017; BCL:0; PCL:0; RULEID:; SRVR:HE1PR08MB1017; X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB1017; 4:48FgJrMXB5ofjNoa9RNy/3TI3PJENf+9WL4QbGEXoD0MUUhZIYKARwAxefk5WHcG/IV5COv9mQnVQHjQY1tHg6d1L6lyzVEAh6mcF2faJDymcfY/rRV1akU97LUj1b67AlU9Mgd6xzyjwnM48r1EQTE9PePdqcavnIweNCHt7frp3NilzPllBrPQYdJAWx4ffzPBotrfGHE+pSkFLgagjedwxgjg7bZuobQqbEFU/mZhWZJ32yySN0CSrKV7ztqkm3Jv2ldRy68gVkllUIUPqDXRzN9OtofcjGVJrKyVB1tZv4wEPVfN3vV9qGX/IrkadDEmOhJS3pDBcveIrzIXi+Sq863kb8Y6NU5go0qkUqOoLKWJqysH8LGvY5qdnWcUB5g3so3bf6JTrGT+f8SbCckF1JHg41A4wQ8qgdU1fPPLcx9vgMt0UiKi6vQatwdsB0ibSY2TDDcxu9ywH2aKW0w1UNM9vNXGWXtm4u59FbX/qpKQ3jllVVbNdCjW311PslDZmIBagrv1kYlVeLUJrwB9HPy1W3FIY4Ks8xHs5S7iur3nCd1YHpYXWdK5HWkA X-Forefront-PRVS: 09752BC779 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR08MB1017; 23:5bvO0HGssVeCmAXMWtT7iSlOkCOOpfon/6Dw7QdKw?= =?us-ascii?Q?+K5UbmAAmfDxy2B1tF4CblYg07UpW644Ujfy5kgJKKeOI7BknmD4ovOhEL4X?= =?us-ascii?Q?kUrCs+6lEXTJ+cBNEJk3IRNR9z1I4wK0thGFfjnb3WvanCngtvZ5+hxD2U1I?= =?us-ascii?Q?tEVkmHttDLDBcNcLhKXI44DfcpjB5rxrtR2KBbtkw1zzDwZEzZxGxfvhNZnf?= =?us-ascii?Q?0IIXp3VK4Z5ePN7VROio547eNfGfPu5UdknEcOskB4UJz1ovPPtlXjGQxTIs?= =?us-ascii?Q?BlCY0ejvluJWgSyCkivWRlX5UmbV9DkEvtJ8oXJ/IhCJZUxFOhhOgeQgDsMc?= =?us-ascii?Q?DaBNxyq1+zoLommbUS0ri+29WMCdkatDcpzT8bHvqvyPCwVlO4Bl7fQDXFNa?= =?us-ascii?Q?kUhnPqXFwZbklGDaF74uEurKnQ86b/SzQFe2m7rnLB0vRi2pD5YagVYtLtuV?= =?us-ascii?Q?3fkS2B8pZ9VQYOUaLrAmzzRwYCWQLs4+xI50bWi4C4am2qH65T7n5hW8SZvm?= =?us-ascii?Q?QCCg+IVnOOn1jy3tZYdLkeosihFpxxWmTRqtqro70dEKbtv9TKjV7G6ok851?= =?us-ascii?Q?YXgAZMcKIiVszFsxdyULPg77NiKnQ2gdW/7S6vBxJnNAb5AirVsx0uG73QX3?= =?us-ascii?Q?38gGe0+B9GZVkSKfr0Gjgj9Bifr5BHmTc8lVltan2Agmvc2cffA6oxrVU7Le?= =?us-ascii?Q?ew8PpcoaSB1NWqFITVIkfssYAeuSLOVLj3pRjL+al06N5f/ivqVCWVNEVYES?= =?us-ascii?Q?bRxIdTmb1jBBOCk/7HetdBuExTv9G1Lb9n8xZlDvylxHiYqRC1JPpIbXNOu4?= =?us-ascii?Q?+gCnLhzo1E2kQgWpOvgf6Wd39TUoXXwHAw6caUqQXJWB2W73qakFMer7xHtB?= =?us-ascii?Q?2G+uBW017qN8cKHbqvmYHIHtHOa7yPoBvLOSRhQDsSbrQAemLDEH+p7b9FY6?= =?us-ascii?Q?HB/kCcJGnAT5lTUZKzT10sjKN0VD1yNZYCUWAhD9Of/0C7XaLnYBEXtkvWFD?= =?us-ascii?Q?bZZdsjlVFgmjrRPP66Z1uPIss6iONFVj4WDoHNDh9RRp0aCnFY+brGdhYJFe?= =?us-ascii?Q?MteTIbeH/W0XrtIy+vvUejEm1Azq7oEo3ly6qByQIUPPqY2BM/PPxnGITAQ1?= =?us-ascii?Q?1N7Eq8pP5U=3D?= X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB1017; 6:DMgbjVIlIegTCm52PjxPoU8MQ5awp06/LzwLeXzprzv8y0hACrox2cY8K+pBFZutw0SsXqEy2YokzOUpYtx/fdBjY/oa4c66HFe5dhAPrDs4l0ZOcQuZZp+klvuqwbs/zfdnwVLnAibrGLUC9lLcmsI/4cGKCFOozaiutupQ6GWZZk3bX4Px/t4yUdfRpa+iyezKHpLdChyRN7mAgXo3nsSaRSNecmESsGF2MN7uX0UnUHFllx6mqpA8N9IdO/Q9F5R5Z6RQt/9aM42QXb4CEjrCK1p8kx9R84b/piGSdf55hA202xj1bTOEGxesjRg8+m48OQWCUMgIoNLRB5C/SA==; 5:MGVEv9el/KhJOXWYB0Sk5WwYrmj6OrU9rAPqipoCzY0YcZlyyJ7IYkMe9Zf9jZEpVVD6Q0sn3eFCTwU1uBdMZRbq1AsuCHOSjGD5LUyHUebojcOan5iNouIQSZJyUyLkpm/1rp1c6QW6JruvGkY09w==; 24:0Z2c1DNuGx5NrUG+t/4hkY0KGDcRMrRIRHplw3yLbgcKjCzlz0s3Mm/3h5afDUoXls9RoTdFXWzoO0h0cMCDY904yG5mjBrJ3QlGgsJAMUU=; 7:YvMGT8ehOY1plOE3jJKcu6D78jAp6xP3d6pywYHoOf6rI0vd5NPElLS8RCyyMAfnxKGnjuUcr5m8kLIh0yb7wQzDOb1JGyU1NzBgvRuDxqEgBxBByroKqFFNEzVlKiHQ+TCl3duFHuPKsRkf9d5PN5l2C8PzcaNWIryKIg5OOtBVpqaGu6qf/z1C7vrRWL1bswnVk9Gbm4R4HVZrNBiMCQ== SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB1017; 20:BQ4kprea0w8kWYgTDJvtrFDGBlxxEoxbTHsbRxwiNnHoxV7lrgR7z2SbTDQ2c9w7aRVcLPvShdLOvCumFMP6qJzUMkQ1/90Ifayd9m2eksk3J9GayLdvMI/5uYR9gfwnsxSidEIW9U3Tl1eTji+hDeXWD770GtlL5IAh/gGoQQs= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2016 17:18:46.3101 (UTC) X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140]; Helo=[nebula.arm.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR08MB1017 X-MC-Unique: uDhotB46NVWiHOG1nqUteA-1 X-IsSubscribed: yes Hi, As subject, config/arm/arm_neon.h currently uses __FAST_MATH, but: $ gcc -E -dM - -ffast-math < /dev/null | grep FAST_MATH #define __FAST_MATH__ 1 It should be spelled as __FAST_MATH__. I've made that change, and confirmed that it causes the preprocessor to do what was intended for these intrinsics under -ffast-math. Currently bootstrapped on arm-none-linux-gnueabihf with no issues. This could also be backported to release branches. I think Ramana's patch went in for GCC 5.0, so backports to gcc_5_branch and gcc_6_branch would be feasible. Thanks, James --- 2016-06-16 James Greenhalgh * config/arm/arm_neon.h (vadd_f32): replace __FAST_MATH with __FAST_MATH__. (vaddq_f32): Likewise. (vmul_f32): Likewise. (vmulq_f32): Likewise. (vsub_f32): Likewise. (vsubq_f32): Likewise. diff --git a/gcc/config/arm/arm_neon.h b/gcc/config/arm/arm_neon.h index 7997cb4..32ee06c 100644 --- a/gcc/config/arm/arm_neon.h +++ b/gcc/config/arm/arm_neon.h @@ -530,7 +530,7 @@ vadd_s32 (int32x2_t __a, int32x2_t __b) __extension__ static __inline float32x2_t __attribute__ ((__always_inline__)) vadd_f32 (float32x2_t __a, float32x2_t __b) { -#ifdef __FAST_MATH +#ifdef __FAST_MATH__ return __a + __b; #else return (float32x2_t) __builtin_neon_vaddv2sf (__a, __b); @@ -594,7 +594,7 @@ vaddq_s64 (int64x2_t __a, int64x2_t __b) __extension__ static __inline float32x4_t __attribute__ ((__always_inline__)) vaddq_f32 (float32x4_t __a, float32x4_t __b) { -#ifdef __FAST_MATH +#ifdef __FAST_MATH__ return __a + __b; #else return (float32x4_t) __builtin_neon_vaddv4sf (__a, __b); @@ -1030,7 +1030,7 @@ vmul_s32 (int32x2_t __a, int32x2_t __b) __extension__ static __inline float32x2_t __attribute__ ((__always_inline__)) vmul_f32 (float32x2_t __a, float32x2_t __b) { -#ifdef __FAST_MATH +#ifdef __FAST_MATH__ return __a * __b; #else return (float32x2_t) __builtin_neon_vmulfv2sf (__a, __b); @@ -1077,7 +1077,7 @@ vmulq_s32 (int32x4_t __a, int32x4_t __b) __extension__ static __inline float32x4_t __attribute__ ((__always_inline__)) vmulq_f32 (float32x4_t __a, float32x4_t __b) { -#ifdef __FAST_MATH +#ifdef __FAST_MATH__ return __a * __b; #else return (float32x4_t) __builtin_neon_vmulfv4sf (__a, __b); @@ -1678,7 +1678,7 @@ vsub_s32 (int32x2_t __a, int32x2_t __b) __extension__ static __inline float32x2_t __attribute__ ((__always_inline__)) vsub_f32 (float32x2_t __a, float32x2_t __b) { -#ifdef __FAST_MATH +#ifdef __FAST_MATH__ return __a - __b; #else return (float32x2_t) __builtin_neon_vsubv2sf (__a, __b); @@ -1742,7 +1742,7 @@ vsubq_s64 (int64x2_t __a, int64x2_t __b) __extension__ static __inline float32x4_t __attribute__ ((__always_inline__)) vsubq_f32 (float32x4_t __a, float32x4_t __b) { -#ifdef __FAST_MATH +#ifdef __FAST_MATH__ return __a - __b; #else return (float32x4_t) __builtin_neon_vsubv4sf (__a, __b);