From patchwork Mon Jun 20 13:57:10 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Greenhalgh X-Patchwork-Id: 70454 Delivered-To: patch@linaro.org Received: by 10.140.28.4 with SMTP id 4csp1524091qgy; Mon, 20 Jun 2016 06:58:00 -0700 (PDT) X-Received: by 10.66.126.179 with SMTP id mz19mr22291556pab.27.1466431079992; Mon, 20 Jun 2016 06:57:59 -0700 (PDT) Return-Path: Received: from sourceware.org (server1.sourceware.org. [209.132.180.131]) by mx.google.com with ESMTPS id vw4si4130160pab.180.2016.06.20.06.57.59 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 20 Jun 2016 06:57:59 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-return-430145-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-430145-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-430145-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=IAbMbJe92CncqD6NoJ4GqF5fnsTDAAvEfyYiyRF4JZ0ns7Fnoe Gmd8gosUSGsrlm2b7o7LmpEd4+jvTAY2tTRhwtJ4tiSISW4EaAM/196gG8CWyvft 2nt77Dr0KQvwK/rvHfLD8GpFfWn0tOaOL05m0TZ5e2w6ABtVD14oDZTYQ= 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=qf0hjveQeeiItrY2YXtjUYVI53M=; b=qSThDrmu5JPHDHRxDRXH HW2jkxPz322TFZuH+Ti3BmMGhuprX1QjLS8TQhP0rh5RANpzeBzZAfMJS9MuCswt XNsx85jZNCZ93A5C2FN3KJaUTkGz6Ln4p+tkbYde/e6xZv8LmILfT+TIZx5kWeEM y40d/CWVTCeihCGfMZxYyUQ= Received: (qmail 70276 invoked by alias); 20 Jun 2016 13:57:47 -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 70260 invoked by uid 89); 20 Jun 2016 13:57:46 -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-languages-length:2996 X-HELO: eu-smtp-delivery-143.mimecast.com Received: from eu-smtp-delivery-143.mimecast.com (HELO eu-smtp-delivery-143.mimecast.com) (207.82.80.143) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 20 Jun 2016 13:57:36 +0000 Received: from emea01-am1-obe.outbound.protection.outlook.com (mail-am1lrp0012.outbound.protection.outlook.com [213.199.154.12]) (Using TLS) by eu-smtp-1.mimecast.com with ESMTP id uk-mta-52-RUZJ1AxyM4-la_ovzVV6CQ-1; Mon, 20 Jun 2016 14:57:30 +0100 Received: from AM3PR08CA0046.eurprd08.prod.outlook.com (10.163.23.142) by VI1PR08MB0958.eurprd08.prod.outlook.com (10.166.143.144) with Microsoft SMTP Server (TLS) id 15.1.523.12; Mon, 20 Jun 2016 13:57:29 +0000 Received: from AM1FFO11FD001.protection.gbl (2a01:111:f400:7e00::193) by AM3PR08CA0046.outlook.office365.com (2a01:111:e400:8854::14) with Microsoft SMTP Server (TLS) id 15.1.523.12 via Frontend Transport; Mon, 20 Jun 2016 13:57:29 +0000 Received: from nebula.arm.com (217.140.96.140) by AM1FFO11FD001.mail.protection.outlook.com (10.174.64.83) with Microsoft SMTP Server (TLS) id 15.1.517.7 via Frontend Transport; Mon, 20 Jun 2016 13:57:28 +0000 Received: from e107456-lin.cambridge.arm.com (10.1.2.79) by mail.arm.com (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 20 Jun 2016 14:57:12 +0100 From: James Greenhalgh To: CC: , , , , Subject: [AArch64] Give some new costs for Cortex-A53 floating-point operations Date: Mon, 20 Jun 2016 14:57:10 +0100 Message-ID: <1466431030-35005-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)(189002)(199003)(15975445007)(229853001)(512874002)(110136002)(77096005)(4326007)(5003600100002)(2906002)(246002)(8676002)(5000100001)(87936001)(11100500001)(33646002)(2476003)(2351001)(586003)(86362001)(189998001)(36756003)(50986999)(5890100001)(92566002)(19580405001)(568964002)(104016004)(450100001)(106466001)(356003)(26826002)(19580395003)(8936002)(4610100001)(6806005)(84326002)(7846002)(50226002); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR08MB0958; H:nebula.arm.com; FPR:; SPF:Pass; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; AM1FFO11FD001; 1:u3FcbVJgnVR7bScgFrI7oRYWTLmk0XejSUL687q8uZpHiEWA+W/8kNjBwSh2qDa0IcI8ey/qNop2x9K77bN2jTMaKseh+pf89OeU4MKNfRTxq+nABGJVvbMRMdktlBDOxTCrT/+esVYWakJnyT1SPcujv2unCdgQCIDBAQ0QyI7rCyxEn6QmY5i7pn3l5I1+SWx13b4TVS2E8z+WIhSUqjNTt5zW5LVbGvmIllQqyCpIcW8f8zZkfr9ERzVIAQ7CANSK5rhimAzpCPpteQk1Nae+R6zbC/3tDCXoekDK0Ci0mHOIePaucmTeo8BB1+YKcN+rwI9NN3IabWOsJBteIDA+DAjTdhqVFeJ66UX6VuqFIOJ1wegASur+SjpmQhTGXjEXjjqpw2VRIENjZhJrHcRxnyqZlQ17S7NreB5+5JN7TdRZWG/A9V69BRQwjFjMjpNBLs2BKwK7di8xYc4XGdtZtCmNvNMO7cols4TOC6NfrCHnh7bw/BRNv6ApRLYo X-MS-Office365-Filtering-Correlation-Id: 1d35f0bd-bb8c-457b-57a7-08d39912d14a X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0958; 2:LKR1eiL84eNy+oz+2ouuYbhMEBWCALrziLOfJZHTg3g6KiZTjvcN1bij8oEBl1I7cPQLTVRz8yfKimIKhFYT6bhY0CBDFvjtIh8jsLHpaXbuPtHzu8biqjkK3sdGeJzjGl4k/XNX1EkKleMxTa3gr0rhk6MaXZFcunlcJHAR8cwU98WQNocvjft2JnXFTpl1; 3:Qt9936fmFwzqxWdCJJPah/cvkoG3ZMUGVtie459928LBIPSd8F+hVTgUtlCr9CI+3zujPGN14K0fAJNA/Ur1CrxRBh+ywm7bcjXyCc91Y9aOqWgaX8oNgQUNSxABM9IxfkPokLCWO0Bkz0fehYrn+nS7UVQCcXgNbOKGMwCzomqqswVKQRUSxGnnw6awK/AYRma+r73t8ZqAXq4pc4Y0Vuxb4FZoJIUmSUCb7Kgd1eChb9ypVksG30hH4qEFK2vx6LQWEt8qD+UJB0Lt7Etu3g== X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(8251501002); SRVR:VI1PR08MB0958; X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0958; 25:4f9sjLtJXLwf6jw57CPm+EE+rPhH3kl4A7Wac0f6zVzBKSGkXPO9+tVOgUx+kjHMnJv3xTXO+9Ix3TmZW9JU12Za7EBIs25RMWyDZlUTIfqlRD0cwhl1eSPHdBLhcPZ9aBodvPoXvnDPxTzQY1lurjW5uRePLhsyfqpskzwKqZkU+68ltnDMfklesTbg5v4CIse5bq8qSWH7svguOctTpu2bgxJMLfjeO5BzrGwCEAOLrdl7sRIWyDeebCtDIAZqRnhCMEdcckjnJqgzY7OKKD/lvFMYN/D875Wxp2NHAsoDOLRpNQ0TS6qjsBlkrMm68/IGRhzd1Tatvn/AcSyY/a36JCENsNPIdIU5FxY1ngZk6KzR3KipdPK7WX8uX7Ji1szrYiMdlwyx6koyNWEwijg9ysGPu8oGl7eoCBWyylmagjw4rSJL4cJLyRU1imL/q+J057B8+HTmx8+gwAfaihvHIpn081Bipgsmoc+ftqGEi4qqMNhU4AtoPhzHC4DY; 20:iL2yIIa0SUgjF3PefOdZEoBE34EuXJEnDmVY/xhb6s19h3t9qzEQQAInx/eNHvDN8+hjny/ToRdprxQNSUg/OOI1b7kaxdwXiMI8qEZulaT03eAd3n1Wf8d+BaZeKrY7TPA4j0l00ucEoS5tznCTsRf3KZPH2RNN8Nkx2eszWKjuR06bMiQpk6hXwR6BJfcOAwegi3AiRbENzE2YbOTXM6ddU8lIoQF3Wl3MnGsdVFbs/iL/HOHXpcbOWLkbdAFP NoDisclaimer: True X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(22074186197030)(183786458502308); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(102415321)(601004)(2401047)(5005006)(8121501046)(13020025)(13024025)(13023025)(13013025)(10201501046)(3002001)(6055026); SRVR:VI1PR08MB0958; BCL:0; PCL:0; RULEID:; SRVR:VI1PR08MB0958; X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0958; 4:3WEH1Qlq/ODnbIq6Lzq8/uyVhwTBHbIudL3Z0JIIZRpo4Xkzm7XSaXniHYJNs4ibB5hlI1VzeXrD1bKvKbCk84B5bUtMb0CBuQddqAHwxWm1MyD5arRqGPoCGA//9DlgiNHaH9WBvCRU3Y5HNaFr5P7TtHB58D6QHhCxEiKu4D6Nz6pCwzy2B+VWBsy1H6pWQqftRpi+0nZBYqvKu8EVFbWg37uXCCD27SX9fpssCFdaYRpu3zSUQg/QNbsYgep/KIL6pnNzEjPXr5OZp78ml/9K2hx3F41B9oRxX1VKPjbNcj0c6sSjhuaGaENVsvz/wRWRD3FarmgNgMn0d80fuWAZB0up+92Ohtts8mfWmJHCoo/iPqq95MExc0tyOLsKizcMaKVtOi93gp06tdEeDQmVWSLWbl/Pod2JZ0TdIaBnKqzYvJXPe7aRghRPM1Cl/9kHgRUbq92KT6KuffU/B/p0zMitl846qhbo5QkLc/OFLxna4X7pef8s6TZkfIfewoOnrSDHkrwSWtX2SZdzJlNwZBxj3ICe/XuBmtT3GNqErM9kFhh+c6ZMxFnRv43c95de25um2iwk1tlmaECNQg== X-Forefront-PRVS: 09796A1B83 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR08MB0958; 23:E4tnzdXWHxoyJYcv35shHhq0LX5Ga8S71zohI+EmF?= =?us-ascii?Q?LASbcGM8eRnywFcWYwz13EkjUYGPXpNQRqXcirj2CITJbuondWmi44SpEYwd?= =?us-ascii?Q?wb28RWQaZBcUqU3fOXQvj7lr01xZ3GXVI3wd8YhZjFnVhy4ggHG+NBWlMAs2?= =?us-ascii?Q?rXHi/ADFmItlyTiVYsU60hZjpXD7WKEpu/otmB5CQ9PoIFqfhO45R0notArz?= =?us-ascii?Q?liyOTKzLQG8Saq+ynSq9TZVQ9L0E+EvNknSEKuL8Ud/nQJmnfuxW9JGjL4sg?= =?us-ascii?Q?k7n0uA/bAXDK/ywLlldEmx17ozd9nDl1gxtj2Dd0GDPiDJaiZHzDvboZb9X9?= =?us-ascii?Q?YIYLwugBq6HyDw++nPLbbJgUH6fk+rDfqLZPd99qkbOreclgZS4mqMfb7kGG?= =?us-ascii?Q?7j8mO7LYxkXgOmDpSpyWLVPq7SneSZSgiUQpLQ0JSiPbUi6Fn4zDgd8rH99k?= =?us-ascii?Q?DYQcQxB2qUYHdj1R/nyywXganKUUM8TRcegzLEPMU3mf3urDijCoM4tqDw9I?= =?us-ascii?Q?2WIaFmJa8mNo1PqpC28DDr9J9+olGw2ayfkBAAxY1IL4TDxV7h5nxih0UPAs?= =?us-ascii?Q?+4zZnMrfSsjdjH4Ay/qch/BgxyhqEXGtCZ8S6N/TkDltDNR1ij0SO4RqIZrZ?= =?us-ascii?Q?SNATOGuoYUiFud/eD27POnVpoksfwmp96hgM46Idn2EX/k58RhehzJ+hqebv?= =?us-ascii?Q?H/ObhEBwHtdjpCCk3hTGdzILYitQeMr0YfuaZhIbkzsds6J0iEQRN3+Tpfcl?= =?us-ascii?Q?OgzJPIoCcdvvqhANjYMjhn46eQYF6aOyH4Tq/NUJWuxmqpYFHIhVwDjXB7F3?= =?us-ascii?Q?FC9YwdXGB4V2sBh9s1tk7EjWHBLhavIYUqzKF/hI2ps2M5QPOJnDkD4JcnxA?= =?us-ascii?Q?r9eBAw+W9uHaoe6cW705ZYE/bfEOWjEt3NBtRqJe+CQvlC8lmeG8G16RWSKG?= =?us-ascii?Q?b4zOsNcRsUYL7RV5eAaZF59I1y6fLTRCdvkhQFMaMtGIg8/9H7dfHJELsn3V?= =?us-ascii?Q?ylfMcPwklmhDzq7njVrAdz2070/z4tsA6GuADOAkETuJSs/YLNWa9zxQkeka?= =?us-ascii?Q?/KynTFQfo/NQ/8LzUE6W7rkENwki5AjYB7Ik03m2XoYO8eQ7a/kYDxwYXUiG?= =?us-ascii?Q?hiTL2bLzHk=3D?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0958; 6:2wIWz6rcMFuFzSnl1dfKxDewS6sx8rGonGCq++ePuL0ZdpVhoKiPJFXBTGxQUSp+8FF1M9u7Mupg7O9sg4XQnrICtBbBZoxSSRgWiDoY8cuiXLJTOI/jECmDOcWMTY6fi16AJigs0jTaKc/p8YYqskpqsGKMlpv+72gQ4fIOsBh0Xox2q52lmLV5DJ73P45Rag/pryoIqv0e4WGN+RCVAQIY+fD+UPJdCUFEpmmcINHLN10WebO5jgLo8XQOjRXObVoQt5zbd6214Gw4ONqY1amSMT1eq1FVQeTQuXFIx+DWvQyszftQJLdP0e/Jymrd844juYj4u+0e9oa6jZ7taA==; 5:DnO2K+5yNcd3xMIyi5OJvheWDAW86xzkNGPMj59znmBG0BqPHncyohrdc7v81V/LvvUWKrntheOtRNFULlnofWB+XioH293vpVZdQEryt6k0T4oHTHLBfLw2+ONxqtOZbnDf+J6FreJzj5Qke0JXdA==; 24:MbI3P34mumBPwZcJHD6hJRrHE9euY9sj7hjBv7nWCgs6v0ddh6j6vxZghRjdm93Cn+AsoRun9n+igAIK39BxRz7b56AkZuY2CfMWKU7YeIU=; 7:PN2K+mXhnVknEN8DlAKWXJVNXX0Y2964T8CtgD/Tb9TQOUIQBtfFYt+8XCtWj41f9OxbQs3Z5BYIB6Vt8bf14pms8cEd7aZ0ZYZVVnKmUJAfXmoInaki+Hgr6zzYsSpArdKbaA0B2waqhbDPHUtYriXxkUaR66rYKZzSMRTW+rG4fjWr7oGKMSBVycg+2FftEkp+r3KzxliqU3xXAYxfRZOE7b9isHcrXHeNDBI+t7NP8L9Wii1xSA1Bq7SvoWdk SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0958; 20:yYDyxKGpcS8A96MLmBYivjWnXu0m292BJKg4ljX9XBwsys6e94jErzw5OS3rHDz9lJ81+OiOPz3kcWk7KXaINl+Ps6WbSrhvI4VG8a1lsFZXlWBD/M665zhid0I3jtLYPblS0F81s0OHTVxnQCITwhWTp5bhUizng8AI3DH+FdQ= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2016 13:57:28.6647 (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: VI1PR08MB0958 X-MC-Unique: RUZJ1AxyM4-la_ovzVV6CQ-1 X-IsSubscribed: yes Hi, As recently done for Cortex-A57 [1], this patch rebases the floating-point cost table for Cortex-A53 to be relative to the cost of a floating-point move. I wrote a little more on the justification for doing this in the other patch, but in summary this is what other targets and sub-targets do, so we should fall in line with that. Unlike the Cortex-A57 changes, this had no performance impact across Spec2000 and Spec2006. I'm posting it to keep the strategy for costs aligned between the two cores. Bootstrapped on aarch64-none-linux-gnu and arm-none-linux-gnueabihf with no issues. OK? Thanks, James [1]: https://gcc.gnu.org/ml/gcc-patches/2016-06/msg00251.html --- 2016-06-20 James Greenhalgh * config/arm/aarch-cost-tables.h (cortexa53_extra_costs): Make FP costs relative to the cost of a register move. diff --git a/gcc/config/arm/aarch-cost-tables.h b/gcc/config/arm/aarch-cost-tables.h index 5f42253..8bcfcb4 100644 --- a/gcc/config/arm/aarch-cost-tables.h +++ b/gcc/config/arm/aarch-cost-tables.h @@ -191,35 +191,35 @@ const struct cpu_cost_table cortexa53_extra_costs = { /* FP SFmode */ { - COSTS_N_INSNS (15), /* div. */ - COSTS_N_INSNS (3), /* mult. */ - COSTS_N_INSNS (7), /* mult_addsub. */ - COSTS_N_INSNS (7), /* fma. */ - COSTS_N_INSNS (3), /* addsub. */ - COSTS_N_INSNS (1), /* fpconst. */ - COSTS_N_INSNS (2), /* neg. */ - COSTS_N_INSNS (1), /* compare. */ - COSTS_N_INSNS (3), /* widen. */ - COSTS_N_INSNS (3), /* narrow. */ - COSTS_N_INSNS (3), /* toint. */ - COSTS_N_INSNS (3), /* fromint. */ - COSTS_N_INSNS (3) /* roundint. */ + COSTS_N_INSNS (5), /* div. */ + COSTS_N_INSNS (1), /* mult. */ + COSTS_N_INSNS (2), /* mult_addsub. */ + COSTS_N_INSNS (2), /* fma. */ + COSTS_N_INSNS (1), /* addsub. */ + 0, /* fpconst. */ + COSTS_N_INSNS (1), /* neg. */ + 0, /* compare. */ + COSTS_N_INSNS (1), /* widen. */ + COSTS_N_INSNS (1), /* narrow. */ + COSTS_N_INSNS (1), /* toint. */ + COSTS_N_INSNS (1), /* fromint. */ + COSTS_N_INSNS (1) /* roundint. */ }, /* FP DFmode */ { - COSTS_N_INSNS (30), /* div. */ - COSTS_N_INSNS (3), /* mult. */ - COSTS_N_INSNS (7), /* mult_addsub. */ - COSTS_N_INSNS (7), /* fma. */ - COSTS_N_INSNS (3), /* addsub. */ - COSTS_N_INSNS (1), /* fpconst. */ - COSTS_N_INSNS (2), /* neg. */ - COSTS_N_INSNS (1), /* compare. */ - COSTS_N_INSNS (3), /* widen. */ - COSTS_N_INSNS (3), /* narrow. */ - COSTS_N_INSNS (3), /* toint. */ - COSTS_N_INSNS (3), /* fromint. */ - COSTS_N_INSNS (3) /* roundint. */ + COSTS_N_INSNS (10), /* div. */ + COSTS_N_INSNS (1), /* mult. */ + COSTS_N_INSNS (2), /* mult_addsub. */ + COSTS_N_INSNS (2), /* fma. */ + COSTS_N_INSNS (1), /* addsub. */ + 0, /* fpconst. */ + COSTS_N_INSNS (1), /* neg. */ + 0, /* compare. */ + COSTS_N_INSNS (1), /* widen. */ + COSTS_N_INSNS (1), /* narrow. */ + COSTS_N_INSNS (1), /* toint. */ + COSTS_N_INSNS (1), /* fromint. */ + COSTS_N_INSNS (1) /* roundint. */ } }, /* Vector */