From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx08-00376f01.pphosted.com (mx08-00376f01.pphosted.com [91.207.212.86]) by sourceware.org (Postfix) with ESMTPS id BACC93858C01 for ; Wed, 23 Aug 2023 11:16:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org BACC93858C01 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=imgtec.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=imgtec.com Received: from pps.filterd (m0168888.ppops.net [127.0.0.1]) by mx08-00376f01.pphosted.com (8.17.1.22/8.17.1.22) with ESMTP id 37N6pAOT025775; Wed, 23 Aug 2023 12:16:49 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=imgtec.com; h= from:to:cc:subject:date:message-id:references:in-reply-to :content-type:content-transfer-encoding:mime-version; s= dk201812; bh=EVw//t3dSUR6ZbtS4zGqKuVFfsFoRsDjp9EeFPLuRTA=; b=ojq exdXyNemulzg3ZLwxhpZlW2nCeICEZrClRCOPaIOrnPPSn0wOxFBtwZ8GTAPh32I yQPekWTys1lQBufcVWu5i76edhcTgZoCK3ZKlTS4E/9xEyxzEHcZ+oQYVLSvdcfG nY55EyDIPr0RVLAeNOLZWPeEnJTE8fct450+YgKCYm1gthnIwn1k3tUvpyYFASbe DgGx77lU7RGsE0/oSS2OdujYNDnuUsdZ4Ks97hT/r3ya5mWq6I/K3j7TWLKCAMpr rq8Noz96VIA79zpALRCkkfIRaqxX582aeNRazEx/Xj+/0NJpizEgTIJRPfTnKvbA ZCZax/PGeNaoTg1V/rQ== Received: from hhmail05.hh.imgtec.org ([217.156.249.195]) by mx08-00376f01.pphosted.com (PPS) with ESMTPS id 3sn20grhmw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Wed, 23 Aug 2023 12:16:49 +0100 (BST) Received: from HHMAIL05.hh.imgtec.org (10.100.10.120) by HHMAIL05.hh.imgtec.org (10.100.10.120) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 23 Aug 2023 12:16:48 +0100 Received: from GBR01-CWX-obe.outbound.protection.outlook.com (104.47.85.43) by email.imgtec.com (10.100.10.121) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Wed, 23 Aug 2023 12:16:48 +0100 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q1fZD7JjW7XbP7TWjYqDqLBmW0ezxNuE86vnXzW1UuuonSFK9oxzWy5ov7RV4CO8orlYMSnlZ9ALeDZdeqpOFGsdn5WRTAlNFa4lXf/59Kmbyg9F2yoaclVoZY+Ba8e09vAndz75dqfDpjLQV8TBMR4nqd3wJU9lbaihQCWP2QDud3NvwkM+qeGmmYTwlc6r1cTpnrDi63slStChvp7anqvWAsMmTFYhaKt/aiOOxhsg5URhEw6mnPU4277Szc282z49Hkzt8+kdRNOYor/QG2RRSXZvLJXRBgdl3gDB1saePO+p3K2bwP4cSJuhDH285xA/rPP3rhKOP4Kae6QELw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=EVw//t3dSUR6ZbtS4zGqKuVFfsFoRsDjp9EeFPLuRTA=; b=mVD1mwTyKJ3abGe+Em/wlUbg7inh9CSVCV4II8UqaO70gnB8tKbi9fJYZDRA9ebnbiv69rSiKM3iFCqAdQ29JqfN/Vm2mORpK8EE46I4SwncsUYDcUHIxKBzdA3j8qETHI+UGus+ZNmNwVNMu/AC7a5DC4oYnTY7ie6b3jMhbacW8v9/xYLCKy3gyTIop+rNt1POE9thweKR+fsfXJEU0QYfBXAOGOiwuUYSAyCMUMPRTvEIvLkJnSRCmje9qVJJXBW8x43gDV+MTLfgwIbQoBZisnY25sdLF0eJ4VoRcFxE5Cthi8w/O1efzgNv6FzCgQkpCiEOBz+KFIZMtZEVMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=imgtec.com; dmarc=pass action=none header.from=imgtec.com; dkim=pass header.d=imgtec.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=IMGTecCRM.onmicrosoft.com; s=selector2-IMGTecCRM-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EVw//t3dSUR6ZbtS4zGqKuVFfsFoRsDjp9EeFPLuRTA=; b=hG4bGP2EF7l3kQu5JSN8dA4G5xv1hmU6e+zzu6OSsOLuTW9TEbu5HVavSTujGQavON7z/SO24ijdbXiUU2/ti+OgCbbQDA98XMudCbpDxpYWcyCh/Upzhh73BRu+cbNHVQSScI6nAJTmsONSnfF9l545DkMdVZ9GAyP7LVJtXSo= Received: from LO4P265MB5914.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:29f::11) by CWLP265MB2578.GBRP265.PROD.OUTLOOK.COM (2603:10a6:400:a5::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.26; Wed, 23 Aug 2023 11:16:47 +0000 Received: from LO4P265MB5914.GBRP265.PROD.OUTLOOK.COM ([fe80::50eb:29cd:53eb:ef83]) by LO4P265MB5914.GBRP265.PROD.OUTLOOK.COM ([fe80::50eb:29cd:53eb:ef83%7]) with mapi id 15.20.6699.026; Wed, 23 Aug 2023 11:16:47 +0000 From: Joseph Faulls To: "palmer@rivosinc.com" , "nelson@rivosinc.com" CC: "binutils@sourceware.org" , "Maciej W. Rozycki" Subject: Re: [PATCH] RISC-V: Do not gp relax against an ABS symbol if it is far away. Thread-Topic: [PATCH] RISC-V: Do not gp relax against an ABS symbol if it is far away. Thread-Index: AQHZ1bNOyNizWpmZ8EuCiFChkWGKfQ== Date: Wed, 23 Aug 2023 11:16:47 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: LO4P265MB5914:EE_|CWLP265MB2578:EE_ x-ms-office365-filtering-correlation-id: 499bcaaa-2e1b-4f87-f755-08dba3ca70ea x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ccjPTi5wG9lIy24qfL8K2lET9AazyFXzNBE2Pag3+K69KFMzcLfNmxZMeaVOf5qy71ZcpeHbSzB5hJG1psYo2e51WXpvwOtGLtZx546rTtBf+fUBlg4sXzTFXy+ZpEe1ofLHB/NGYoy8pIzwiqjtrRexsSNAj4lB3s4CjU2SUxHsGXfAh4XXAfVuqR8z9ETmTjBRBRXP2tZoloAqzzG/mXGKxvq9LnPKgQhtrlqJEooCzCwRvMVQlF6ixBnLVP+TF7xkeNGU6JDC5AVag3bsh+IPK2uE3941FNzrGFwMcajAEpr9ft/NN4AAXZagOkHFxEkXVuorC5hM7311vf06QPT5rT0dOklsJUnqpts/Jriq30r2CFp0sJxvzqJdGZVA+rhosSSt3A1/WFQhQKClW2zyO6eIIWjl9g7jcrYNP3VeRoyzleW6tk6TjhpuArsSHopciyf9tS/sw5NxJy17OKjYgGTPZ1PCsVjjc8s5V3shHSqqJdv1eaciJcGtCwdbIbbJ5fLFcYvnXQHtkedqQKuYZuG+JuGgilc6b5D2MhD+v6etNKgoly/qZ2g3fKSNYFWOB+EMQuHogLZ2UH9mwgRJC0kYV5ldwQZ8vppuQl7T7T5ChIFTaeC5R5+2VsDf x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LO4P265MB5914.GBRP265.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(366004)(136003)(39850400004)(396003)(186009)(451199024)(1800799009)(6506007)(7696005)(52536014)(316002)(53546011)(4326008)(8936002)(8676002)(54906003)(66476007)(66556008)(76116006)(64756008)(66946007)(66446008)(110136005)(55016003)(9686003)(41300700001)(26005)(5660300002)(71200400001)(478600001)(83380400001)(86362001)(2906002)(33656002)(38070700005)(38100700002)(122000001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?XAhWXhhTTDrXiviEGQmapJlco88rKoVhkq7VkOgxoN7BrpKFzbmPudjh0D7U?= =?us-ascii?Q?F0SG1LTGim32ksMfQgewwJA1LWK8exiEHCOHUOa2yUmq8bfA3hVUysoqGiaK?= =?us-ascii?Q?1zMMnHxiJP0EJkveXaM8GF+aMwHTlKJtAkgIWUw6UbaBrvrGIbR9Sx8gvKeK?= =?us-ascii?Q?+b+qvJl1UImxw2DI8xcwVSuNi1nK0/uthy6u4nqd0GKxuID86IPuu3CWHZB9?= =?us-ascii?Q?grUNx0CdQ8KWonHnOSgHYBhXsFivl+YAZH044FEMg9kyqpm+gnOF3zIoO4EB?= =?us-ascii?Q?S//xut0ZZjmVvVUTZwr10jKfrGwI52sBqrMfI2IJ9D6YDpwl50xrDKytLyjJ?= =?us-ascii?Q?413x1ex2CWTaeazaykFTQCFHEqqGttNpFq57fl4nMo8266yaCUjG5w+/bxNr?= =?us-ascii?Q?bDRAsKWz8apRWwuvQwGylsPM7tItSECcpKmRMR7u07wOk+q8IbB1OAggzOH/?= =?us-ascii?Q?erACYTQNyujSliRJRjR1xp9IrqV/GssyuunwoW074NSBbWX1Zd9n3jiVlb3H?= =?us-ascii?Q?cDaBFNrBxugrbPQQH+afRtkLh+PXF4dIOHsYU874rkcnMbE4g4GK7QPlsHIB?= =?us-ascii?Q?DpMEk4B2l3PBbf18LwGRkuiA5zA82cNvWxpxVAJnBQoeJ2Vch3zDhSYj5sco?= =?us-ascii?Q?T2cgOXa5tZea44tNkNvO3bi3b7vWllCQdptI4/9eHq1MQP2KbkSLd0fjTmK3?= =?us-ascii?Q?zZEkg4Zb3PDtzs9AHmyUKr06H48M9bbhknJAIm76Q1Ir1hzPPx6ETFmWmYGS?= =?us-ascii?Q?Nmp2LfJCzh3+yW2tSeftcZ09torH5mfwKDdyN0JIfXx6Li197k95/MEBeovA?= =?us-ascii?Q?x/8dpmxntPOaf1mowZdSzq+0KTVisXr+S+PtIBmGPvFXZxqoqaWtryDH+bmR?= =?us-ascii?Q?YyHU73A76Q3BfP/9VAozLkGDUL7a7p7DWi3pgG4uSAcVDSiv8IEYEidXvjJZ?= =?us-ascii?Q?B5RqOFgCfqwNMpqXGUQAANRiv9fvf8LHw8NlfyBE43Wqxg+J92pL1BFg7lH7?= =?us-ascii?Q?4q3rjKpzzGXTxrz+WYnigPou0QIcjT0wovKaBCR9frLBhLwwtIr8yUI1cNwR?= =?us-ascii?Q?H3GCBfShGX6ZW6r/DWS0atK7xDjp5hksZY1cVCv31DoxDVEthReRORhiOZt7?= =?us-ascii?Q?7zH4XH805VoTuHHri7TeVMor6J2UeJEnVu3KanvhxRRPjsAdlXgkQzm6S87f?= =?us-ascii?Q?lfUCLqdGNcbcK6uerg69GRNkjQKBxjOZRE4SWCAysrOsgUqtWMRyzWT8VOQ7?= =?us-ascii?Q?L23XcHwNkhE0n/O0HZ3Rf1hN/6FjRiXTp1Tw4uQn2HAh65wdT9taw55JdfFe?= =?us-ascii?Q?9nE9RLcFY/PriuG/vYxL+YsrDb+9r1QJhslP38VbbYscOUSdxdytl5wHKUr1?= =?us-ascii?Q?RJ3DwPwYw5Y5PGQiE8fSztvzy0O1Fq/UyF3ADjxJglGNcd4bByjxDlc2+L2m?= =?us-ascii?Q?XogXmgV4ZW+NQnI9CBMrVf7a4+wAHWDds9PhddSGJkaw089earhC1i6JBwfs?= =?us-ascii?Q?WIPkcT/wegtPJj5hxwLnBukk6x/peWYZuAxWzzHlFLJLfFNRrF+YvoUYE1OG?= =?us-ascii?Q?cYnXTXgZ6iAT00noiyY3YNYxDIP+oaWZ2+E830UK?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: LO4P265MB5914.GBRP265.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 499bcaaa-2e1b-4f87-f755-08dba3ca70ea X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Aug 2023 11:16:47.6148 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 0d5fd8bb-e8c2-4e0a-8dd5-2c264f7140fe X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ZNjXjRLuxO2EOO3MrWx49QbDT4S6eYizl8srwjLQBu99zcmltxEakezEiEfiguUOa/gOiM4eFGuhWFkSfoRpt2C4pKz7oR0l4kpDOLFOC+4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP265MB2578 X-OriginatorOrg: imgtec.com X-EXCLAIMER-MD-CONFIG: 15a78312-3e47-46eb-9010-2e54d84a9631 X-Proofpoint-ORIG-GUID: b7FszfFH8JiDFG5QXdswB4pVoYHVToLj X-Proofpoint-GUID: b7FszfFH8JiDFG5QXdswB4pVoYHVToLj X-Spam-Status: No, score=-6.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Ping - is changing all AUIPC/LW to LUI/ADDI/LW for absolute symbols the bes= t way forward? -----Original Message----- From: Joseph Faulls=20 Sent: Tuesday, August 8, 2023 11:38 AM To: Maciej W. Rozycki Cc: binutils@sourceware.org; palmer@rivosinc.com; nelson@rivosinc.com Subject: Re: [PATCH] RISC-V: Do not gp relax against an ABS symbol if it is= far away. > What's the use case for using AUIPC/LW to load an absolute symbol? =20 > Such symbols are not used in contexts where an address could=20 > alternatively be expected, so the correct sequence, and in PIC or PIE=20 > code indeed the only valid, for direct references from code is=20 > LUI/ADDI For my clarification, are you saying that the AUIPC/LW should never have be= en generated? If so, how is it possible for the compiler to know that the s= ymbol referenced will be an absolute symbol? Regardless, that's a good point, changing all AUIPC/LW to LUI/ADDI for abso= lute symbols makes sense to me. I could try and do this if it's good way fo= rward, but I would like a second opinion first! Palmer, Nelson, what are yo= ur thoughts? -----Original Message----- From: Maciej W. Rozycki Sent: Tuesday, August 8, 2023 10:49 AM To: Joseph Faulls Cc: binutils@sourceware.org; palmer@rivosinc.com; nelson@rivosinc.com Subject: Re: [PATCH] RISC-V: Do not gp relax against an ABS symbol if it is= far away. On Thu, 27 Jul 2023, Joseph Faulls wrote: > Relaxations can cause the gp to move after it has been decided to gp=20 > relax. Against an absolute symbol, the distance may change such that=20 > the offset can no longer fit in the 12-bit immediate field. What's the use case for using AUIPC/LW to load an absolute symbol? Such s= ymbols are not used in contexts where an address could alternatively be exp= ected, so the correct sequence, and in PIC or PIE code indeed the only vali= d, for direct references from code is LUI/ADDI. Since you're fiddling with= linker relaxation code here, you may well take the opportunity and relax i= t to LUI/ADDI, or ADDI alone if the value is small. There may be an issue = with RV64 objects if the value turns out outside the 32-bit range though, w= hich will be a relocation overflow. Maciej