From patchwork Mon Jun 12 13:54:00 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Greenhalgh X-Patchwork-Id: 774642 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3wmZCp4sD8z9s71 for ; Mon, 12 Jun 2017 23:55:18 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="TqubSDJD"; dkim-atps=neutral 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:in-reply-to:references :mime-version:content-type; q=dns; s=default; b=JqwG0bcSSm8/bHkb gmri762mwdwviQvNDOI+v0lfd2qce7SoDMMsfnPrJME+/KkyYHom6mN3/cAXIn0e Rn2/5mlWxtTY+2kP11qSd1iXhXtD3MzOp2j4c/P/nkD6uk89nvhq4q12IkDqC7cO /a34+b5xb3SBjqRMp5igTgi+VEs= 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:in-reply-to:references :mime-version:content-type; s=default; bh=pSlj6kEd6LH5SokGhwcZfW Ns9DQ=; b=TqubSDJDUOkPwN9Um0uRONGI2SP/+EKfIOevdf/Ms0Gxiebo24cfJG CqG52WXIsW0Ml1IX2lv9QOwzTDCMpQXWDHwCMVzt0sryPuu05XWMkM6hcc+waXV4 XLfRMpRkjScGYXuBPdxLcxMmoJ2AIo2C1A1X41MwOMUJH6TDaPNnk= Received: (qmail 72996 invoked by alias); 12 Jun 2017 13:54:33 -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 72863 invoked by uid 89); 12 Jun 2017 13:54:31 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.4 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: EUR01-HE1-obe.outbound.protection.outlook.com Received: from mail-he1eur01on0072.outbound.protection.outlook.com (HELO EUR01-HE1-obe.outbound.protection.outlook.com) (104.47.0.72) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 12 Jun 2017 13:54:27 +0000 Received: from VI1PR0801CA0014.eurprd08.prod.outlook.com (2603:10a6:800:32::24) by VI1PR0801MB1390.eurprd08.prod.outlook.com (2603:10a6:800:3b::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12; Mon, 12 Jun 2017 13:54:28 +0000 Received: from AM5EUR03FT003.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e08::204) by VI1PR0801CA0014.outlook.office365.com (2603:10a6:800:32::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12 via Frontend Transport; Mon, 12 Jun 2017 13:54:28 +0000 Authentication-Results: spf=pass (sender IP is 217.140.96.140) smtp.mailfrom=arm.com; gcc.gnu.org; dkim=none (message not signed) header.d=none; gcc.gnu.org; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 217.140.96.140 as permitted sender) receiver=protection.outlook.com; client-ip=217.140.96.140; helo=nebula.arm.com; Received: from nebula.arm.com (217.140.96.140) by AM5EUR03FT003.mail.protection.outlook.com (10.152.16.149) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.1143.11 via Frontend Transport; Mon, 12 Jun 2017 13:54: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, 12 Jun 2017 14:54:07 +0100 From: James Greenhalgh To: CC: , , Subject: [Patch AArch64 2/2] Fix memory sizes to load/store patterns Date: Mon, 12 Jun 2017 14:54:00 +0100 Message-ID: <1497275640-6630-2-git-send-email-james.greenhalgh@arm.com> In-Reply-To: <1497275640-6630-1-git-send-email-james.greenhalgh@arm.com> References: <1497275640-6630-1-git-send-email-james.greenhalgh@arm.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(39860400002)(39410400002)(39850400002)(39400400002)(39840400002)(39450400003)(2980300002)(438002)(199003)(189002)(377424004)(6666003)(6916009)(77096006)(2476003)(2906002)(2950100002)(189998001)(8936002)(512874002)(8676002)(33646002)(84326002)(36756003)(50226002)(50986999)(76176999)(356003)(4326008)(72206003)(4610100001)(478600001)(5890100001)(104016004)(305945005)(38730400002)(5660300001)(86362001)(110136004)(54906002)(2351001); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1390; H:nebula.arm.com; FPR:; SPF:Pass; MLV:sfv; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT003; 1:fQUBqzPtuvw19J6S69RxpNjz8AufQ5Q4wi93R5OKlCSPCekGPc7oRA9lsvBT84hGImYuL4UUlSFOcPlivSMrl1dQx3Gm+Qk1IhB/lJBUFQb/ZiApfrFtqo2AtJtThRcjDORoyaVJLGKwt69Z1bkH5H8hpzog3qkMWllza2/YOJDVT2wnCSu4jGUg0AgEoeS6UPbEBhMLfcFuJyIeXRI7GGNcXm3XT4jVxPi9bzGvCOVXzcMU6ak0v7XXqmOn8ASTfegidqtNZYPjiDUgg/5QcsvWZEiMYY/+uRdU+DYjfaub+Pejkwz3F5eN8B/RahVYi1XdrKjF445qFdqRNXKiWhXgHOU/07p8LJsh3e0yX9s9HansEJpnReWb6L8M77aLSDAbZvEW785rhnbJpveqIaFApOwLs1Oq4mrZC0ZrKp7Ry1ZgumIA9jfWdaH4wUD1R87aYcafXvbaKjfXNTBN7tv5cvqoxJKvxhkiuszi/qeUrQfa8W1ElN2fb3A1uurApghA/H2PVewRW7B7DQlJTuawTKH8G7iXC+I/SEXTmkn5uXqZM7xdWMuqrN5c3NxX X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI1PR0801MB1390: X-MS-Office365-Filtering-Correlation-Id: c14a052f-3311-45f7-5b69-08d4b19a8b21 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002)(2017030254075)(201703131423075)(201703031133081); SRVR:VI1PR0801MB1390; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1390; 3:Sv7vbhCkIrhoS9rEdcSxIhmrxsvRhuaFET/pYZrlovJMsCY7BXi/FUBXsmMJoPZOJZZjvItoqjkArEtti60oPCgeSAU+Pe3uJPJ6l0OQdoaCzorSA+SuyeLhnHoyhJRewQxT91ln1hMBrv81VWtaHDk5qe/gv5IBnWaiWAtiQMuAvKnrnMxDUWjeVFLg5amJ5vLraroFqDhnnPlQUdOprs9DQ5lVq1lpTOWyT2OowhWj60lf0rZ4lII1WEc5B2Jwyl3221dTNADRIJS14mRVPemmiblo/NfHzg90fBYahN2/F6x00fPUUov1tJgiMfQuK90FW1oHUvSjSWXS0ECXjs/h0oefHW/KDryrcoxGzMayRIN+c1bxf0SVJwL2wRlZpe1wd2JzfkxnOZuhLVYE+LmSer/RIuIIW42bF0fsA3vZ9Oe8pfoShjj9gNm0yBkAfPwAdU0OAJgEJ6WvE1/dG+o/g3Gaad3etWM6jcum8zqTcK1/OgNUu70bEK6Xjj7k X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1390; 25:zr/Y6IzNOvIKSK+IPIze4CKe5eRV9YlNT36Uji4pzk2hCQojYqo1DfPyuiGmGw27tgD2YEG0KHqpu7nPgIdB0vfFp9KjQvLkhad/FurZfr3H4ps1VEaMwshcauLfTlE+SY8EyoPzxkX3UUKs01lQAb/drpkSUIt/vsoNb+jT30JXmAX05FZ/DdAb3ci/oOSeYdhliogw3FsV1fORTjvWC5prhbnxo7dP7fwFnE3Z82AzvygQ9eGHp41MF8n5rmxrslr1Nf6XTgH/u4BozFESv73C4bnIEXfjPZE6FiaGUlTwGbB4lrfNpeG5cmQcu2BcpB4KH2qLH9ffb01vx2DPKsRJV7e4nBsue73SDOpviVrRvlctbMZVjYsW+T/OS3/fA3kIUZT1Swggy7+SCpeSuzTz1xrw9HF8qtpUKG7HF/NAe/P3DIS5cOvGLT4u32gnbQ0BGkcoCSEVM+A23mG4kTQdsXvsd1DCD1vlMnstuWwevdbYDNhjuIsV5tenhgSiwkfMTkc5Q/Vf197taj3BHw==; 31:6VdL3EWa1vyXk/dvanRdGyQL/GY0vEJtHAWAjrDKwQW3AUQ0FV7IxtZMYbBZOjujopHDeR5Y4YaZkwDwEP2RZQFY5jcfnNYL8lscb85wdA2QTBKH4xaiPV6bqxRJ1Y5hP7laOOJSzE3Cjdvy6emu4Hw70NRfU+7T90RUvlAiBhtUz/HFJeTGE7+eNLIdRasjwvgKiYiGyEJAvIhcy7sSFoPyhXD5YLG07ViIi+qCRvLxr7orrpt+73CIcc5DSDn1RNmeH/mqwTDsazAJAI4Vde8BAJ0+bHeFyfXowYTdLXQK1xwvH0grTkWIUeQiL1DG NoDisclaimer: True X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1390; 20:EHxnPdO5W/A5/FbqeNoBFlpYe+GQrhZ9HmsiX5QDTp63c1fVTc05y8Ext/frHCt8qo3Fb6yWzoimLIb7nMKxd5ZawJF/6KuRnUifUZcTGl6GGa+K1SuCpA7SraUxucLMUA+ADbN796FKt/mWiSYXMFjpIplELcHRzelrHT9RrTl+kV5kyHkiddNGNpLlIMwkPWBoeojIqUV0H1x78oHZqCIg6o0NHKKucSeSknBSX83B8IgQiiNTg6jlYEA5WzNi X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(180628864354917); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(102415395)(6040450)(601004)(2401047)(5005006)(13013025)(8121501046)(13021025)(3002001)(10201501046)(100000703101)(100105400095)(93006095)(93004095)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123555025)(20161123562025)(20161123564025)(20161123558100)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:VI1PR0801MB1390; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:VI1PR0801MB1390; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1390; 4:dztJvbUjqPTQB1A/pD5n20E77jBLxo2UQlLIyFm3?= =?us-ascii?Q?jme1iqtq1oUDfEwvoH/5MhAXULt0FSpaog0udbUoX90t3KARMCRHODbaLG3f?= =?us-ascii?Q?UXfkkfKwhGDxIgaQEIUGe2THMEU4RcFJbZCITWCaH9WjJ0KLexc6yGgWuTU+?= =?us-ascii?Q?YB8PWhBLpqnHZb4U5C+pO+sQhklg5T6q6w3V0hiY+ht18wXAQ4dZT6mJTnK/?= =?us-ascii?Q?tQ+HH5yXIhWE9wQY/MvHv2LVqgDLX0+pTh4Qrc0Bhk7yOqGJN/YA6EF6oHLv?= =?us-ascii?Q?AwRyl4tXU2aVygJ1/l34egAHyZj9YcSAE4PL7bAhq5wuXgMSsr860SyAu2OJ?= =?us-ascii?Q?w7R9VInkCJXZ8w4m7GNsJHTystwk6xFrMNKW8eugUMV0op6HhN75EaWLI+yf?= =?us-ascii?Q?SzQEZWrbF7cTz3XPC4JMq7SCHBZL4gV8gJxQj+91tQJV/HT/h6T0L4nwHKHN?= =?us-ascii?Q?pv6sU+h6DVlmgbzxj4xGUpO9Q7NsRih/HAqbbDmWqvDGtT/0nN9MPhm7vH9i?= =?us-ascii?Q?kQ8yn7tptPOSHkIaNJau2IlFsfTJ6c0xWcNQitk9D0l/Bt4gMQSKDe0itc3t?= =?us-ascii?Q?DPUHrOSP4E9kcT5X7KJAvkc6LXdeS6wjaJnSO+xI65h3KHCfNT6k+lsGd6E1?= =?us-ascii?Q?DnniEwLLo2WUnpuZlq2zY9m8rMmaXkhr1S/0p46DziBMmHE8javwBRh95kGk?= =?us-ascii?Q?JSVIA9uBDwsoWh6n2SW8nKcrl6gHzERaqa/+66ib9ive8Ao8DHGdXEmlxGfm?= =?us-ascii?Q?PYYnIA4s+40fJhTQjrIZm0zO0pxSx7ldxUA1yUzmw7BHOiEw3aZK3tx/+hIa?= =?us-ascii?Q?lNs2GaQIGbb8QWj59gdyWg3WpmJcvH8qTvBwZ3A5PP/JQOcH1uypCadUoM+X?= =?us-ascii?Q?LZN6ug65A9UW5tIgtZjJouMBg2rMi6DhF3gL/Z6G9fXHCCXUrI4dicYmBnz6?= =?us-ascii?Q?lggUqQ9CUEjoJNGJu2BofmvSf8d7NvV+fegxJU8TBuuvuRDAXOMFOXXyQdv+?= =?us-ascii?Q?SN95lQhQg0b0BEZ6/76B+NO9jDaBWwHFnAoFjTC7ha55sGh/bFaZqEiDJegD?= =?us-ascii?Q?pdK8KP87XTTp3rdZmvv23fF02e9O7KQVVLRcXJLBWOXHenF8zdSFGA8U1o3M?= =?us-ascii?Q?0A3TmtbCmukqiRStzJw04jHdy+3maeEbPwiRAZKSjQHOy6Y/81oq6TzYOJ+Y?= =?us-ascii?Q?Ns7cbjYpy6hPhDSCTO3IVKoDHM5Pb5C90Aj6tznl7QeS+7sTPrltVRsaEVc7?= =?us-ascii?Q?GL1u8owOzHNQhSR2o1J/j5q/kbepfwvF5WtP607G?= X-Forefront-PRVS: 03361FCC43 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1390; 23:GK8MHW1rgp51/ZDuK8YRO1cgWg7jwmxQ2lZW5Ay?= =?us-ascii?Q?wzHy+iH0orKq+ZOfUKxh5X+lB5VcyZS7F30CAWqRNqfuV9MJY48WNKMkTJsl?= =?us-ascii?Q?pVHV+Afxjyr3U+OgSAd9itL6YctfTEFNABKoJmcR+s9q/Fkjaj0tBWBuBhDk?= =?us-ascii?Q?GDYl0jwAcvcuu2gpaY2jl/AZ3EbkZYv07hwK+itOUVK/2+9b9Iodu7PP2WF0?= =?us-ascii?Q?y1RruHwsuhtKc0DT6Rm8Q3pa/6Xy8Lc1K6z+QDP/QNbyPUeUKAxmPN7pVEWX?= =?us-ascii?Q?o4S255RP6mnXxvU4ODcpbLbcE8WJlmHAL2Ie6le8vvEEGSVnqnBDDXDKM/YC?= =?us-ascii?Q?/51HH0lH1z/XfvR7lBsNsGImVYi8St4TvsLG3mCnYI4/BrqcFeZJJtmltG/r?= =?us-ascii?Q?pjNBk6iWm/pQ3PPl4IROpNUs6BdWt7LfC/0d4+NUoc8o660V8G60YOx17/5m?= =?us-ascii?Q?2x4nPTjviLily4YgzWOQyVrn4aQrJZcK+3009qVb27Eb+8yev12n2yMFSdMj?= =?us-ascii?Q?GpQJjrcP19+Fbjg/sW+/CtsfCgLOCJUZUKG7FHLWCtieYGoEUYzEP+JLM1sm?= =?us-ascii?Q?cu2+zsmGahkXHSO2dh/4FUnffduQWpLjr/+Qtu6eQUUuE+1Eff1dOHEz3Owe?= =?us-ascii?Q?oE4Z4MU3kGPbpzhme76R7LuPSW7psKE8SlfR3ddRNVyNhsOjD/lwsNt+F3TL?= =?us-ascii?Q?gau+mPV5UtGgllZrkxdhJhJEfFTeW18zsHGTuiLF8U7sNc5Xuw2IZh6cW2qN?= =?us-ascii?Q?McsqL6YEt5Yvz/O3YGrGQ/sSZzBJf8Ex6uDvVprXn6x76f1x71gNUS9vXUqd?= =?us-ascii?Q?M+x47KhrQ72YzDKCCJmdM628wXzd5w95tACYvkvvWWVOXbtgQNJS4++lE7ZN?= =?us-ascii?Q?Ir9MDhsstRJIqsA6hWNOO6Bkfg2ZcDq0zRf5uYOsaBWG3/HUSrFofct+u5vU?= =?us-ascii?Q?FkjEclytQji6aH3+LsX6TK0b3qNMKmO2EThbACO/dHlXpdXypXwgCTneJYzV?= =?us-ascii?Q?yWg1MgRy/dvvZ5+L+nQgP8BZS9qOKqth1N2vvz37gK7d7nn2fn00DIHVOk/a?= =?us-ascii?Q?Yd1tQxf4=3D?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1390; 6:abnMVvqhMFy3dZBZduSgkGDNRJ4brb6/Ufr10h5uTcJPHNDOF1yku2hUjSi0lsZS2Udo2+RHPYDpTEx1n528fHzbfhbllkTJNJnJqtiWe9PBThLlWP7sK3HbGA6dxJnfGDK/kmUUXy9QEGDWqa3dSWB53dFFrjT1XKGGM/yxC8E4uSP3RSAmzQtPFHSY71Rv1m2M1GejQEU29P/5T6FTD9SGku6JWWxr6yCRgLuxZ3xYhGyiUm7T1forYdRkoDP0sPPlyS6mt7Zn2MtJ9IifXRAFyY57X83AQyy/2Q/nB/2aDPTjQHX1107dVzCTYBFIgjgTP+Tb93VEHxOv0FZGJWFQl1rEoVTdGCX/bMiCjFvIseKn6vWUS64Ez4Q0ifE32/XCmYCeF0+i1C8opjDSPSCj6hj7yQgR8V/UtGPVY9zEQIALSmvhgpnemfmjV5Qv1PLrtrduaDOm8HgIfRzdE+uYnLfrr7B5ioIWvg8znwNTKE74k3WFAgelNG6Qe7/r6idBSq1oibo9VZ6l+AO14cGGj2ooob+tihXHv/vis9A= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1390; 5:zvy/abD25crYlx7CBBgwaAkxW4ltT0eh9GykHa4ihosqAlLy823i4+uMxCZ/5hcgrfcffp24P7QRXDgMqJEAssk5fzXqnTZWAxmcbHj9o2eqUqZA7Taft3uOzr0HbmsalXO+j3IWQkUYG3mhBTfCKVi/8Vmd92WwTPHczGR67iP5iVga/iKWq7TgM18ydigsknLjcFv+3Fo0nRTl/bA93cc08lIX4IlfB3AxxHVrM4wgRiTujMKGtYBc95tai7hwsZRfDUSpvqf+pQCJuBu3cnQwUHOj5c68J8SgTsIINoMVpNJ3YF1JpSa9l45ahzY2WfVoFUw9Ma2dDm1hDAlsUm0iNb1ptSK41j1RX4C2alrDX4na+Q6D63OdjhlmJu93GGf3clEiXyOQQc38nQN6A/Ou0+8KOgzb2pfchC2X1OnyBKwNON3GjQGsJxcyCjNVdMGrjC3+owCwzCOtirrcqhfFeimcIQpm6P/o9IO/bQMacRm9wBEVyDZC3G/b0L2U; 24:P/G1gMvJxbHAG5aZXh9EVBQPuA2EFZJGur1TXZkCrelqiP0i27FM9DfuGoXmB1nePnhi3kckvvlPR+4JOsPrroYMCJmdZ9DQpV+dJTQjBCs= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1390; 7:0YNais8bA5QC60ttx2ODca5wXFcEXdTQN9V07OLb66//bBvW3Pap9bZV5FRQzWAMm/jD1N00VfVtPB/eqTfrIJ+VWAeE1BGnt/fXywoUwlnycqMRfyhFq7jx8OZR5dPKUbKDKrlswSvytzyaK6OSDt88Jm17yGfmU6X7mgURL6eIom8vsUFkaR67zcGN9nYpPC49+ohG5K9S7ENsoF4m/LJnPlwkV5IAHsrHxxzdJozKhvXvQi/XetswJjrXceVFNJLgILS2dPIsjtDj48RtcbDxclkWALDEo2/tWXO4skBR4IhxzEj43G+osfNE2+7ZK1YTKpC6Mdd0TQAgJlW67w== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2017 13:54:28.0881 (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: VI1PR0801MB1390 X-IsSubscribed: yes Hi, There seems to be a partial misconception in the AArch64 backend that load1/load2 referred to the number of registers to load, rather than the number of words to load. This patch fixes that using the new "number of byte" types added in the previous patch. That means using the load_16 and store_16 types that were defined in the previous patch for the first time in the AArch64 backend. To ensure continuity for scheduling models, I've just split this out from load_8. Please update your models if this is very wrong! Bootstrapped on aarch64-none-linux-gnu with no issue. OK? Thanks, James --- 2017-06-12 James Greenhalgh * config/aarch64/aarch64.md (movdi_aarch64): Set load/store types correctly. (movti_aarch64): Likewise. (movdf_aarch64): Likewise. (movtf_aarch64): Likewise. (load_pairdi): Likewise. (store_pairdi): Likewise. (load_pairdf): Likewise. (store_pairdf): Likewise. (loadwb_pair_): Likewise. (storewb_pair_): Likewise. (ldr_got_small_): Likewise. (ldr_got_small_28k_): Likewise. (ldr_got_tiny): Likewise. * config/aarch64/iterators.md (ldst_sz): New. (ldpstp_sz): Likewise. * config/aarch64/thunderx.md (thunderx_storepair): Split store_8 to store_16. (thunderx_load): Split load_8 to load_16. * config/aarch64/thunderx2t99.md (thunderx2t99_loadpair): Split load_8 to load_16. (thunderx2t99_storepair_basic): Split store_8 to store_16. * config/arm/xgene1.md (xgene1_load_pair): Split load_8 to load_16. (xgene1_store_pair): Split store_8 to store_16. diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 11295a6..a1385e3 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@ -981,7 +981,7 @@ DONE; }" [(set_attr "type" "mov_reg,mov_reg,mov_reg,mov_imm,mov_imm,\ - load_4,load_4,store_4,store_4,\ + load_8,load_8,store_8,store_8,\ adr,adr,f_mcr,f_mrc,fmov,neon_move") (set_attr "fp" "*,*,*,*,*,*,yes,*,yes,*,*,yes,yes,yes,*") (set_attr "simd" "*,*,*,*,*,*,*,*,*,*,*,*,*,*,yes")] @@ -1026,7 +1026,8 @@ ldr\\t%q0, %1 str\\t%q1, %0" [(set_attr "type" "multiple,f_mcr,f_mrc,neon_logic_q, \ - load_8,store_8,store_8,f_loadd,f_stored") + load_16,store_16,store_16,\ + load_16,store_16") (set_attr "length" "8,8,8,4,4,4,4,4,4") (set_attr "simd" "*,*,*,yes,*,*,*,*,*") (set_attr "fp" "*,*,*,*,*,*,*,yes,yes")] @@ -1121,7 +1122,7 @@ str\\t%x1, %0 mov\\t%x0, %x1" [(set_attr "type" "neon_move,f_mcr,f_mrc,fmov,fconstd,\ - f_loadd,f_stored,load_4,store_4,mov_reg") + f_loadd,f_stored,load_8,store_8,mov_reg") (set_attr "simd" "yes,*,*,*,*,*,*,*,*,*")] ) @@ -1145,7 +1146,7 @@ stp\\t%1, %H1, %0 stp\\txzr, xzr, %0" [(set_attr "type" "logic_reg,multiple,f_mcr,f_mrc,neon_move_q,f_mcr,\ - f_loadd,f_stored,load_8,store_8,store_8") + f_loadd,f_stored,load_16,store_16,store_16") (set_attr "length" "4,8,8,8,4,4,4,4,4,4,4") (set_attr "simd" "yes,*,*,*,yes,*,*,*,*,*,*")] ) @@ -1209,7 +1210,7 @@ "@ ldp\\t%x0, %x2, %1 ldp\\t%d0, %d2, %1" - [(set_attr "type" "load_8,neon_load1_2reg") + [(set_attr "type" "load_16,neon_load1_2reg") (set_attr "fp" "*,yes")] ) @@ -1244,7 +1245,7 @@ "@ stp\\t%x1, %x3, %0 stp\\t%d1, %d3, %0" - [(set_attr "type" "store_8,neon_store1_2reg") + [(set_attr "type" "store_16,neon_store1_2reg") (set_attr "fp" "*,yes")] ) @@ -1278,7 +1279,7 @@ "@ ldp\\t%d0, %d2, %1 ldp\\t%x0, %x2, %1" - [(set_attr "type" "neon_load1_2reg,load_8") + [(set_attr "type" "neon_load1_2reg,load_16") (set_attr "fp" "yes,*")] ) @@ -1312,7 +1313,7 @@ "@ stp\\t%d1, %d3, %0 stp\\t%x1, %x3, %0" - [(set_attr "type" "neon_store1_2reg,store_8") + [(set_attr "type" "neon_store1_2reg,store_16") (set_attr "fp" "yes,*")] ) @@ -1330,7 +1331,7 @@ (match_operand:P 5 "const_int_operand" "n"))))])] "INTVAL (operands[5]) == GET_MODE_SIZE (mode)" "ldp\\t%2, %3, [%1], %4" - [(set_attr "type" "load_8")] + [(set_attr "type" "load_")] ) (define_insn "loadwb_pair_" @@ -1363,7 +1364,7 @@ (match_operand:GPI 3 "register_operand" "r"))])] "INTVAL (operands[5]) == INTVAL (operands[4]) + GET_MODE_SIZE (mode)" "stp\\t%2, %3, [%0, %4]!" - [(set_attr "type" "store_8")] + [(set_attr "type" "store_")] ) (define_insn "storewb_pair_" @@ -5139,7 +5140,7 @@ UNSPEC_GOTSMALLPIC))] "" "ldr\\t%0, [%1, #:got_lo12:%a2]" - [(set_attr "type" "load_4")] + [(set_attr "type" "load_")] ) (define_insn "ldr_got_small_sidi" @@ -5162,7 +5163,7 @@ UNSPEC_GOTSMALLPIC28K))] "" "ldr\\t%0, [%1, #::%a2]" - [(set_attr "type" "load_4")] + [(set_attr "type" "load_")] ) (define_insn "ldr_got_small_28k_sidi" @@ -5183,7 +5184,7 @@ UNSPEC_GOTTINYPIC))] "" "ldr\\t%0, %L1" - [(set_attr "type" "load_4")] + [(set_attr "type" "load_8")] ) (define_insn "aarch64_load_tp_hard" diff --git a/gcc/config/aarch64/iterators.md b/gcc/config/aarch64/iterators.md index 43be7fd..a65c3aa 100644 --- a/gcc/config/aarch64/iterators.md +++ b/gcc/config/aarch64/iterators.md @@ -384,6 +384,11 @@ ;; 32-bit version and "%x0" in the 64-bit version. (define_mode_attr w [(QI "w") (HI "w") (SI "w") (DI "x") (SF "s") (DF "d")]) +;; The size of access, in bytes. +(define_mode_attr ldst_sz [(SI "4") (DI "8")]) +;; Likewise for load/store pair. +(define_mode_attr ldpstp_sz [(SI "8") (DI "16")]) + ;; For inequal width int to float conversion (define_mode_attr w1 [(HF "w") (SF "w") (DF "x")]) (define_mode_attr w2 [(HF "x") (SF "x") (DF "w")]) diff --git a/gcc/config/aarch64/thunderx.md b/gcc/config/aarch64/thunderx.md index c18da2f..84ac6cd 100644 --- a/gcc/config/aarch64/thunderx.md +++ b/gcc/config/aarch64/thunderx.md @@ -100,7 +100,7 @@ ;; Store pair are single issued (define_insn_reservation "thunderx_storepair" 1 (and (eq_attr "tune" "thunderx") - (eq_attr "type" "store_8")) + (eq_attr "type" "store_8,store_16")) "thunderx_pipe0 + thunderx_pipe1") ;; Prefetch are single issued @@ -112,7 +112,7 @@ ;; loads (and load pairs) from L1 take 3 cycles in pipe 0 (define_insn_reservation "thunderx_load" 3 (and (eq_attr "tune" "thunderx") - (eq_attr "type" "load_4, load_8")) + (eq_attr "type" "load_4, load_8, load_16")) "thunderx_pipe0") (define_insn_reservation "thunderx_brj" 1 diff --git a/gcc/config/aarch64/thunderx2t99.md b/gcc/config/aarch64/thunderx2t99.md index 632396f..4e39610 100644 --- a/gcc/config/aarch64/thunderx2t99.md +++ b/gcc/config/aarch64/thunderx2t99.md @@ -128,7 +128,7 @@ (define_insn_reservation "thunderx2t99_loadpair" 5 (and (eq_attr "tune" "thunderx2t99") - (eq_attr "type" "load_8")) + (eq_attr "type" "load_8,load_16")) "thunderx2t99_i012,thunderx2t99_ls01") (define_insn_reservation "thunderx2t99_store_basic" 1 @@ -138,7 +138,7 @@ (define_insn_reservation "thunderx2t99_storepair_basic" 1 (and (eq_attr "tune" "thunderx2t99") - (eq_attr "type" "store_8")) + (eq_attr "type" "store_8,store_16")) "thunderx2t99_ls01,thunderx2t99_sd") ;; FP data processing instructions. diff --git a/gcc/config/arm/xgene1.md b/gcc/config/arm/xgene1.md index 7e70408..0b457ee 100644 --- a/gcc/config/arm/xgene1.md +++ b/gcc/config/arm/xgene1.md @@ -92,12 +92,12 @@ (define_insn_reservation "xgene1_load_pair" 6 (and (eq_attr "tune" "xgene1") - (eq_attr "type" "load_8")) + (eq_attr "type" "load_8, load_16")) "xgene1_decodeIsolated") (define_insn_reservation "xgene1_store_pair" 2 (and (eq_attr "tune" "xgene1") - (eq_attr "type" "store_8")) + (eq_attr "type" "store_8, store_16")) "xgene1_decodeIsolated") (define_insn_reservation "xgene1_fp_load1" 10