Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/638454/?format=api
{ "id": 638454, "url": "http://patchwork.ozlabs.org/api/patches/638454/?format=api", "web_url": "http://patchwork.ozlabs.org/project/glibc/patch/1466485631-3532-6-git-send-email-ynorov@caviumnetworks.com/", "project": { "id": 41, "url": "http://patchwork.ozlabs.org/api/projects/41/?format=api", "name": "GNU C Library", "link_name": "glibc", "list_id": "libc-alpha.sourceware.org", "list_email": "libc-alpha@sourceware.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<1466485631-3532-6-git-send-email-ynorov@caviumnetworks.com>", "list_archive_url": null, "date": "2016-06-21T05:06:48", "name": "[04/27,AARCH64] Add PTR_REG, PTR_LOG_SIZE, and PTR_SIZE. Use it in LDST_PCREL and LDST_GLOBAL.", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "fb5f28d5427e27688e4254293679e5b4998b7eff", "submitter": { "id": 68471, "url": "http://patchwork.ozlabs.org/api/people/68471/?format=api", "name": "Yury Norov", "email": "ynorov@caviumnetworks.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/glibc/patch/1466485631-3532-6-git-send-email-ynorov@caviumnetworks.com/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/638454/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/638454/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<libc-alpha-return-70814-incoming=patchwork.ozlabs.org@sourceware.org>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": [ "patchwork-incoming@bilbo.ozlabs.org", "mailing list libc-alpha@sourceware.org" ], "Received": [ "from sourceware.org (server1.sourceware.org [209.132.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3rYbNh4yqGz9sdQ\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 21 Jun 2016 15:08:52 +1000 (AEST)", "(qmail 106457 invoked by alias); 21 Jun 2016 05:08:46 -0000", "(qmail 106448 invoked by uid 89); 21 Jun 2016 05:08:45 -0000" ], "Authentication-Results": [ "ozlabs.org; dkim=pass (1024-bit key;\n\tsecure) header.d=sourceware.org header.i=@sourceware.org\n\theader.b=YelI/R6w; dkim-atps=neutral", "sourceware.org; auth=none", "spf=none (sender IP is )\n\tsmtp.mailfrom=Yuri.Norov@caviumnetworks.com; " ], "DomainKey-Signature": "a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:from:to:cc:subject:date:message-id:in-reply-to\n\t:references:mime-version:content-type; q=dns; s=default; b=do0aW\n\tjSfmQMIwc6GGr1b29PC6AR+qNeVijcDmPfAOB99MNSmy1CzXdjUA2b0gIcmzPpWL\n\tJJ5zwDO3sCmaM4dKFNfaNmrQDc9VNZ6vt/hY8+0PL+tbKc9eluxouTITg0WKIXZx\n\toY6/Zy9W/PqrT2J9yHWoLlkOwamHYwXNnps8ps=", "DKIM-Signature": "v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:from:to:cc:subject:date:message-id:in-reply-to\n\t:references:mime-version:content-type; s=default; bh=0U46kX8G9o6\n\ta0+4V0+yv0DU3JSg=; b=YelI/R6w8fFbJQnHUjsfC4Jz0Mi9TnqBS2FJ8VOzzgF\n\tDnWm+x2SzTk83PAGtV3LFQuuzZJTKWtmUWfVFZr5WgnRMLUpf6yMKLGp+zzVH/RF\n\tk92xwWjEZVovQHWtezepVKY6Vuhz5Dq3uUybazMH5L7LDlNh4o92XSB7VN8OjDA0\n\t=", "Mailing-List": "contact libc-alpha-help@sourceware.org; run by ezmlm", "Precedence": "bulk", "List-Id": "<libc-alpha.sourceware.org>", "List-Unsubscribe": "<mailto:libc-alpha-unsubscribe-incoming=patchwork.ozlabs.org@sourceware.org>", "List-Subscribe": "<mailto:libc-alpha-subscribe@sourceware.org>", "List-Archive": "<http://sourceware.org/ml/libc-alpha/>", "List-Post": "<mailto:libc-alpha@sourceware.org>", "List-Help": "<mailto:libc-alpha-help@sourceware.org>,\n\t<http://sourceware.org/ml/#faqs>", "Sender": "libc-alpha-owner@sourceware.org", "X-Virus-Found": "No", "X-Spam-SWARE-Status": "No, score=-0.3 required=5.0 tests=AWL, BAYES_00,\n\tKAM_STOCKGEN, RCVD_IN_DNSWL_NONE,\n\tSPF_HELO_PASS autolearn=no version=3.3.2 spammy=x28,\n\tHx-languages-length:5356, 987, x29", "X-HELO": "na01-bn1-obe.outbound.protection.outlook.com", "From": "Yury Norov <ynorov@caviumnetworks.com>", "To": "<libc-alpha@sourceware.org>, <linux-kernel@vger.kernel.org>", "CC": "<arnd@arndb.de>, <catalin.marinas@arm.com>, <marcus.shawcroft@arm.com>, \n\t<philb@gnu.org>, <davem@davemloft.net>, <szabolcs.nagy@arm.com>,\n\t<maxim.kuvyrkov@linaro.org>, <joseph@codesourcery.com>,\n\t<pinskia@gmail.com>, Andrew Pinski <apinski@cavium.com>,\n\tYury Norov <ynorov@caviumnetworks.com>", "Subject": "[PATCH 04/27] [AARCH64] Add PTR_REG, PTR_LOG_SIZE,\n\tand PTR_SIZE. Use it in LDST_PCREL and LDST_GLOBAL.", "Date": "Tue, 21 Jun 2016 08:06:48 +0300", "Message-ID": "<1466485631-3532-6-git-send-email-ynorov@caviumnetworks.com>", "In-Reply-To": "<1466485631-3532-1-git-send-email-ynorov@caviumnetworks.com>", "References": "<1466485631-3532-1-git-send-email-ynorov@caviumnetworks.com>", "MIME-Version": "1.0", "Content-Type": "text/plain", "X-ClientProxiedBy": "HE1PR03CA0026.eurprd03.prod.outlook.com (10.163.170.164)\n\tTo BN4PR07MB2242.namprd07.prod.outlook.com (10.164.63.148)", "X-MS-Office365-Filtering-Correlation-Id": "ce4ea658-f924-43f3-b86d-08d3999215c8", "X-Microsoft-Exchange-Diagnostics": [ "1; BN4PR07MB2242;\n\t2:6Ewm2PkzWbUG5u3IcgR/fyqCn+DY6rVufY7XVTWp5FLckJia62/wO5KfdDV1ZqrW2/EHPvjLKQ71vnsCmWY9k9XvyxNkUsQeC9DRzrhPgFjbqVEDfJKKojwsVnLjOk+x59da/R2q7XCxMlNAbhyu44Mp0bONxQQuIjuIkbFvI/uUa3zlkaMojSBet+hdPAP3;\n\t3:zlFXiuQmVEDPKKvZqAz2J98bZ9q+4cA96vVcdfIp5bQE/1Q7dIbmQU3wd+NjLbx45XL2cfedDzUbThisrXi0d6zWCGkVZOD5Ue503G8dm+CT0ojAANKW/OjGS/CepMs/", "1; BN4PR07MB2242;\n\t25:OLpGWMcK4jxWM/IYgCbCIeReICt/CmtxA6t12GC4RX34230Unf7haMqkYah6VZJLXZY9qtBMoBYAYA8J22TxnZG4SgwzuSUf6gRft1Im6MTa0GusyTrGb7m+gATU8fMXtghN62LyZtqR3H1JtgKUlpNS6tJYC3Q2n5FrZAlJYJqCN+TSlnTscsbYh4Y3sffrKlqhGcg7gUm31Cm3lxVLkMe4xW91pUWdoAtG0jCtoIy25yLO4wLTT6wpthR8Moe/Of+w4UKUaU4W+h7pG/vm48MU4GFf96GSHpN2A1iHz3pnayjv80cuL0ZihBeSw4gRpnqJLqkU/fTKatTtLMhXKfm3p/U8Vfji1kymZzQ19kSvf+uzPLH5Z4QrfRuWJHuAl65TuIeUT5zOu7CUEUGTWaCkjQw5I/9drEujVauEbb8kITluN5WEmMbWPW4ryX6hrpGVuGJshSLIg8KEmXcuoee/RK759eymgO3wIFswBFYAuAhvKtQPVScR472JYPckwNE0Nw7uY2I5qCFozMIaiuzdJkQyIRkGbg3wvqtkDEsMIKrx358sVmcpCHCB9JIy9XNRrSxwfLQSV6QnMerWW0BGFfbThRNpchvmHB3f0l9tgxXYYTdy3pTBcNvrP3F3AnVEWD+rkMwHC9MxW2KX4V0mwweLcKNweOqKIBDcU4kmocHNHVO1V/bgW1tbKlktqBNZwQroyRNpueZiOt1t5fFPs2g5tKQFcn/pqBP6PQyMwNeJc9nZeFkyc0/8jHp+oW5RkTZhjBbr94gEHOO6NA==", "1; BN4PR07MB2242;\n\t20:KFCC1YvTKtwtXNX+qDMc4fsKC0l7Kx3Bh48ZU6I8TDKgPhGr7bO5rm3H1muD7uWRU2/Q6Zuj9o9ZulTkvraSpaQxAZ5bBq4Hp01n2b/dssBuzwVZvFhupV4m4MbBkHE74npPUqKcFcKWjAmbYCQ8MS9WPWKDsOCaCmz2cnZR+vhF2rOXHboEHTFL7r4f7KdNTxgVeP0wqvrzLOKBE1D9gREgOTBYDKmXeJ+l0I8M7P8mc75OclcvOzDfz4aiYJFR0C23KCfzCeVYHY3MiAjpxhyMSzhBdjcm2NQwrTdJf/jveA9pKMZRpYclByHTL1WjlLtWXBkhNaJX1Std3tBKLHRD7FZzaiBm607dJpcEdWFjnStpwJNuvj6MLt0DfueNyvBqCczaZe/F3jMENAlKvW8xOl7VOJK3hKCQM0FEXZTtaWwlHHeNJ4GU/cwIsEEIMSmYKXrDHw82H/Eo+DpVHwPrkyach9OvGt3rB7Rh8n3/lzmBx1zrtU3DXpq76+vlLjN3Jpc9cHWFcw9g9eoIJXgLylqgpBm9ChUZSe34LhJFv7gIsrvM9jiTkoYLom3PToKbfvFsrjlciORNUcrcYCQRJxl2oOqJXRLOtkS3iN0=", "1; BN4PR07MB2242;\n\t4:4hRsdMvmeyeLuf5/hQOnVuNNnGUbKXQuPR//Iv7uX5z5uP2HZ0VTT2lUxuABImGPCtUa9zBH7tvSYh3Ze5xuFewMFA4Ibla7bXKXB7x04iLwaoLbKbe506T5a3xnUxa9Hzi6i5AA3jDwhfwme9h8yckdF1sk5APngVJ7igUQF3BOhKBulGs8+4Wq7Es+0PaISzKtPQ0HFkgFDFWKHF9B8GCBL9XZfOFvQHbHN7NicJdO9kwcw8DHTjVZlzrECEKah7OqmgWIoCvOeGSdHsmLUv70Swj9fFsRBi42y1xnriRKCR7xcFeXOWaND7VbS4DpwZX5ec4NellTYt6TrF84vYKzfjv5E3NUs14fHpALwK7mY5GIstLDo9B+rQUVrpiD", "=?us-ascii?Q?1; BN4PR07MB2242;\n\t23:yhydlvsXHYp/GprR4hBcJe0HUs3De08lIRakI/xUD?=\n\t=?us-ascii?Q?5VBjZjLK+X3YWti1WvZtb8a1mwV0BulFTcymNnZZUhHvBxFOeQ2sOTsGJqWn?=\n\t=?us-ascii?Q?++F+PuB1ZNAVzFDAS6LsecONzwQMOH5ujcgXHUJi1rniVdfZl73voNHtgQk+?=\n\t=?us-ascii?Q?OpMpOQVVQhvhxjo9kqqmqg5zmd6FVyqqB5+dBt8G6t4mSjSnUVUx4MuctTw7?=\n\t=?us-ascii?Q?fxAIpWoMV2KFE9sm8dRUDqXAnk2fsLhEiuIkSVDqf2Ir79uTK4U3cbfNMPmP?=\n\t=?us-ascii?Q?PBklzgDOX5jB3iuzBIdl32+SjO/aVnXU/lhsmDwNROv7cTz4ANVsSgVZHyBX?=\n\t=?us-ascii?Q?fhJIs3C9Lq/+sBJiVigAtIs/Ag2NQL0EobG8S6ckai4meTHVtqPgRzJ0/P9R?=\n\t=?us-ascii?Q?iH3Qfx4F8QcDdUbQwJUwsNls/Jla93+9OYj7dqNPvgIXeWEUdxXQyyGrxPOs?=\n\t=?us-ascii?Q?pMY008tIIljCRp2oYAsQsPf+7EwWCxqh7b6Du9WYK3SvOx93Tj7Dzxa7tJNH?=\n\t=?us-ascii?Q?RLwn/l8ki94B0iIP06dVBxix8BAsYLZufQOdYDMpVKYKv7Skt1ZaeZserGv6?=\n\t=?us-ascii?Q?Mz79hbpaDqAOrx8aec4NWJVaOkF4f76K6g2KKy2K+p71j9Lfhop9LxDciMBK?=\n\t=?us-ascii?Q?nGuR6Y6cOwNqcPntTEirEDwuQBJHQ/8CFhJhlbeMyb1CYY/c5brV38IiILZV?=\n\t=?us-ascii?Q?by0ftMV3x6RsbZ4yO5kF3poKsyG1+MeqWc6zsg2kGIlBfb2eAar3QxY3IhpR?=\n\t=?us-ascii?Q?mqquxcsIG6Jq1Vel7Syebdv3y9iT8zK6EtpkSgkYg13lAfWd4krjRFET5CMZ?=\n\t=?us-ascii?Q?r3vte0XcudRujERmXjZIoFE7VPI/qOd4xYrpC1QNSYIRZnY4RuJIHvq6EdvY?=\n\t=?us-ascii?Q?+YdMBTPhVt6uqz4SFW4iujvbSJgDgWK3a71VohK90kSFtUHZJp3kejLFZApC?=\n\t=?us-ascii?Q?QY/63T1ERqRXngh7Ukr2ECvBXkAJkt3FUtEl7erC+GL7HxlczgTfA6Kbt171?=\n\t=?us-ascii?Q?cqMwGClNr55y/XkyoZ0b3+VoWYOJ5UVkDs4tIs4JzlYpT3fFpQuIs0LVSyJy?=\n\t=?us-ascii?Q?gnjMhRdLdxbMcfZgk0PFRszbdatI/CJUpGQkdD2sjUvqJOfFixM7YRM4wQWv?=\n\t=?us-ascii?Q?H5xuJJQ0Fw=3D?=", "1; BN4PR07MB2242;\n\t6:NVG0WJNfA0F6cayH/yTkdZDNc0MCRX89rX30YzkwZGK/Oik5H77qeRJ3rxhpA9g3H6B+JGfIRbYhJbd4MtitanJBZs9F20t6WVzR9FRUJjV8qpt2dKPIDvgp2sJaIv6BhA2CMnjWWdyboHULUoGX6b4JvpTlGe1RSbp5pxRFNzyEvwO3KXlylyb4wswRh1lWf2v6gwNnK9C5DhYP2Cs96Kdhsde1Mz0EkI/I+L31FmZNszsfjwSK0gDrPKz2WnAcogq3U8SKfzbB/YMIz5+FrhohUVjvKWtDWrVr5xjyQ5I=;\n\t5:pb6pO2qYS4flv4w3YLxNZpk+gc1rhUcINl7RRMZHL0nSkiW920qiBofipi2XSJJ00PqW5KTkniVofZR3sHctLKVNRrDN/v1fOvf7+Hx1/RLcNCSWOzgiGYPBdz5nofFrEm0L7oPaheEbGyCriUhcaA==;\n\t24:zcKQoCVcymTzdxZo9uzrTn2zwhgGXPRGmCOew16Zxi589jdAxOktn7DfBmyH0U5+F4VLJ9FZCqOQQ2NXwGsZu7j+VZhy0cUbs1KskWFH6OU=;\n\t7:1H9pC9gc1N0g5Ej0U5NNzqHBtZjdXiHUjiUWPJ6GjuANQ+5X32DuN9Y2qwJu8V5ZOF6W7wb03yzGCC9MldaoMFb8skcFc4UMWX+BE0ifjOhUB8liTVSRZjBVxBkOlMIv358N7jHxG/Kz1eVaLLTpx46EmjMBC/yKlvRd7YloC9XDdDgpjDw7hMcZOEZD9h7XUFHDhGzff1ZTP7/Odgkl8BzMG2gWOhBRO9a+W17u7ijeo5qDH21LgpWZurDKt135" ], "X-Microsoft-Antispam": "UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN4PR07MB2242;", "X-Microsoft-Antispam-PRVS": "<BN4PR07MB2242D7915ABD3D829AE1D499EE2B0@BN4PR07MB2242.namprd07.prod.outlook.com>", "X-Exchange-Antispam-Report-Test": "UriScan:;", "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001);\n\tSRVR:BN4PR07MB2242; BCL:0; PCL:0; RULEID:; SRVR:BN4PR07MB2242;", "X-Forefront-PRVS": "098076C36C", "X-Forefront-Antispam-Report": "SFV:NSPM;\n\tSFS:(10009020)(4630300001)(6069001)(6009001)(7916002)(199003)(189002)(19580395003)(42186005)(19580405001)(77096005)(76506005)(229853001)(5003940100001)(7736002)(586003)(3846002)(6116002)(4001430100002)(105586002)(92566002)(81156014)(107886002)(2906002)(48376002)(5001770100001)(4326007)(2950100001)(76176999)(7846002)(50986999)(66066001)(50466002)(33646002)(50226002)(47776003)(8676002)(101416001)(106356001)(36756003)(189998001)(97736004)(68736007)(81166006)(2101003);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:BN4PR07MB2242; H:localhost;\n\tFPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; ", "Received-SPF": "None (protection.outlook.com: caviumnetworks.com does not\n\tdesignate permitted sender hosts)", "SpamDiagnosticOutput": "1:99", "SpamDiagnosticMetadata": "NSPM", "X-OriginatorOrg": "caviumnetworks.com", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "21 Jun 2016 05:08:29.4869\n\t(UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "BN4PR07MB2242" }, "content": "From: Andrew Pinski <apinski@cavium.com>\n\nThis patch adds a few extra macros which are useful for ILP32 and updates\nPTR_MANGLE and PTR_DEMANGLE to use the some of the new macros.\n\n* sysdeps/aarch64/sysdep.h (PTR_REG): New macro.\n(PTR_LOG_SIZE): New macro.\n(PTR_SIZE): New macro.\n(LDST_PCREL): Use arguments as register numbers rather register names.\nUse PTR_REG for the register when loading.\n* sysdeps/unix/sysv/linux/aarch64/sysdep.h (PTR_MANGLE): Add a comment\nabout that the arguments are register numbers rather register names.\n(PTR_DEMANGLE): Likewise.\n* sysdeps/aarch64/__longjmp.S (__longjmp): Update calls to PTR_DEMANGLE.\n* sysdeps/aarch64/setjmp.S (__sigsetjmp): Update calls to PTR_MANGLE.\n\nSigned-off-by: Yury Norov <ynorov@caviumnetworks.com>\n---\n sysdeps/aarch64/__longjmp.S | 4 ++--\n sysdeps/aarch64/setjmp.S | 4 ++--\n sysdeps/aarch64/sysdep.h | 28 ++++++++++++++++++----------\n sysdeps/unix/sysv/linux/aarch64/sysdep.h | 8 ++++++--\n 4 files changed, 28 insertions(+), 16 deletions(-)", "diff": "diff --git a/sysdeps/aarch64/__longjmp.S b/sysdeps/aarch64/__longjmp.S\nindex 65116be..58332be 100644\n--- a/sysdeps/aarch64/__longjmp.S\n+++ b/sysdeps/aarch64/__longjmp.S\n@@ -53,7 +53,7 @@ ENTRY (__longjmp)\n \tldp\tx27, x28, [x0, #JB_X27<<3]\n #ifdef PTR_DEMANGLE\n \tldp\tx29, x4, [x0, #JB_X29<<3]\n-\tPTR_DEMANGLE (x30, x4, x3, x2)\n+\tPTR_DEMANGLE (30, 4, 3, 2)\n #else\n \tldp\tx29, x30, [x0, #JB_X29<<3]\n #endif\n@@ -98,7 +98,7 @@ ENTRY (__longjmp)\n \tcfi_same_value(d15)\n #ifdef PTR_DEMANGLE\n \tldr\tx4, [x0, #JB_SP<<3]\n-\tPTR_DEMANGLE (x5, x4, x3, x2)\n+\tPTR_DEMANGLE (5, 4, 3, 2)\n #else\n \tldr\tx5, [x0, #JB_SP<<3]\n #endif\ndiff --git a/sysdeps/aarch64/setjmp.S b/sysdeps/aarch64/setjmp.S\nindex 22f4368..da83f19 100644\n--- a/sysdeps/aarch64/setjmp.S\n+++ b/sysdeps/aarch64/setjmp.S\n@@ -42,7 +42,7 @@ ENTRY (__sigsetjmp)\n \tstp\tx27, x28, [x0, #JB_X27<<3]\n \n #ifdef PTR_MANGLE\n-\tPTR_MANGLE (x4, x30, x3, x2)\n+\tPTR_MANGLE (4, 30, 3, 2)\n \tstp\tx29, x4, [x0, #JB_X29<<3]\n #else\n \tstp\tx29, x30, [x0, #JB_X29<<3]\n@@ -57,7 +57,7 @@ ENTRY (__sigsetjmp)\n \tstp\td14, d15, [x0, #JB_D14<<3]\n #ifdef PTR_MANGLE\n \tmov\tx4, sp\n-\tPTR_MANGLE (x5, x4, x3, x2)\n+\tPTR_MANGLE (5, 4, 3, 2)\n \tstr\tx5, [x0, #JB_SP<<3]\n #else\n \tmov\tx2, sp\ndiff --git a/sysdeps/aarch64/sysdep.h b/sysdeps/aarch64/sysdep.h\nindex 4cb028f..f2ea821 100644\n--- a/sysdeps/aarch64/sysdep.h\n+++ b/sysdeps/aarch64/sysdep.h\n@@ -23,10 +23,16 @@\n \n #ifdef __LP64__\n #define AARCH64_R(NAME)\t\tR_AARCH64_ ## NAME\n+#define PTR_REG(n)\tx##n\n+#define PTR_LOG_SIZE\t3\n #else\n #define AARCH64_R(NAME)\t\tR_AARCH64_P32_ ## NAME\n+#define PTR_REG(n)\tw##n\n+#define PTR_LOG_SIZE\t2\n #endif\n \n+#define PTR_SIZE\t(1<<PTR_LOG_SIZE)\n+\n #ifdef\t__ASSEMBLER__\n \n /* Syntactic details of assembler. */\n@@ -87,16 +93,18 @@\n # define L(name) .L##name\n #endif\n \n-/* Load or store to/from a pc-relative EXPR into/from R, using T. */\n-#define LDST_PCREL(OP, R, T, EXPR) \\\n-\tadrp\tT, EXPR;\t \\\n-\tOP\tR, [T, #:lo12:EXPR];\\\n-\n-/* Load or store to/from a got-relative EXPR into/from R, using T. */\n-#define LDST_GLOBAL(OP, R, T, EXPR) \\\n-\tadrp\tT, :got:EXPR;\t\t\\\n-\tldr\tT, [T, #:got_lo12:EXPR];\\\n-\tOP\tR, [T];\n+/* Load or store to/from a pc-relative EXPR into/from R, using T.\n+ Note R and T are register numbers and not register names. */\n+#define LDST_PCREL(OP, R, T, EXPR)\t\t\t\\\n+\tadrp\tx##T, EXPR;\t\t\t\t\\\n+\tOP\tPTR_REG (R), [x##T, #:lo12:EXPR];\t\\\n+\n+/* Load or store to/from a got-relative EXPR into/from R, using T.\n+ Note R and T are register numbers and not register names. */\n+#define LDST_GLOBAL(OP, R, T, EXPR)\t\t\t\\\n+\tadrp\tx##T, :got:EXPR;\t\t\t\\\n+\tldr\tPTR_REG (T), [x##T, #:got_lo12:EXPR];\t\\\n+\tOP\tx##R, [x##T];\n \n /* Since C identifiers are not normally prefixed with an underscore\n on this system, the asm identifier `syscall_error' intrudes on the\ndiff --git a/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/sysdeps/unix/sysv/linux/aarch64/sysdep.h\nindex a397e50..1ffabc2 100644\n--- a/sysdeps/unix/sysv/linux/aarch64/sysdep.h\n+++ b/sysdeps/unix/sysv/linux/aarch64/sysdep.h\n@@ -250,12 +250,14 @@\n (!defined SHARED && (IS_IN (libc) \\\n \t\t\t || IS_IN (libpthread))))\n # ifdef __ASSEMBLER__\n+/* Note, dst, src, guard, and tmp are all register numbers rather than\n+ register names so they will work with both ILP32 and LP64. */\n # define PTR_MANGLE(dst, src, guard, tmp) \\\n LDST_PCREL (ldr, guard, tmp, C_SYMBOL_NAME(__pointer_chk_guard_local)); \\\n PTR_MANGLE2 (dst, src, guard)\n /* Use PTR_MANGLE2 for efficiency if guard is already loaded. */\n # define PTR_MANGLE2(dst, src, guard)\\\n- eor dst, src, guard\n+ eor x##dst, x##src, x##guard\n # define PTR_DEMANGLE(dst, src, guard, tmp)\\\n PTR_MANGLE (dst, src, guard, tmp)\n # define PTR_DEMANGLE2(dst, src, guard)\\\n@@ -268,12 +270,14 @@ extern uintptr_t __pointer_chk_guard_local attribute_relro attribute_hidden;\n # endif\n #else\n # ifdef __ASSEMBLER__\n+/* Note, dst, src, guard, and tmp are all register numbers rather than\n+ register names so they will work with both ILP32 and LP64. */\n # define PTR_MANGLE(dst, src, guard, tmp) \\\n LDST_GLOBAL (ldr, guard, tmp, C_SYMBOL_NAME(__pointer_chk_guard)); \\\n PTR_MANGLE2 (dst, src, guard)\n /* Use PTR_MANGLE2 for efficiency if guard is already loaded. */\n # define PTR_MANGLE2(dst, src, guard)\\\n- eor dst, src, guard\n+ eor x##dst, x##src, x##guard\n # define PTR_DEMANGLE(dst, src, guard, tmp)\\\n PTR_MANGLE (dst, src, guard, tmp)\n # define PTR_DEMANGLE2(dst, src, guard)\\\n", "prefixes": [ "04/27", "AARCH64" ] }