From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 994E63846079 for ; Sat, 4 May 2024 00:22:44 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 994E63846079 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 994E63846079 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714782167; cv=pass; b=fMpi+QueJPzZzPMoaOlKOCsSktyhE+F6FnvuLUJlWPJ2fcgB0G0fQAzuETqmQlN8V5oHriTlkYPs2I72nPfkYhMFY/tSeE4r58c0N5w9sUVPUDlzQLY5OUFfLOm+EGfm1MMhsKS4yOrZTJXycQn0lVK0OHY3d92Re0+bhOQUIyA= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714782167; c=relaxed/simple; bh=eAuPwAnWQEC5gtlNRkzyz4M0HX8Wj/ieT9aI0rOnIh0=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:Subject:To:From: MIME-Version; b=OcHPr54f2nRf+DsAJaFU5oW6WeaStq8zcqFV8GvIQaLPL88OavrCuGN3L0338MuIrLBudMQANZcUcaUA7LbZhgNKjzeVHCRQwIST26gvt/Z9IE9XGTWlX1X3r3gyFzO73WUn0C5udBDn65dXOXz/Emo4dkVKygwzLBvRZbrUZ/A= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 443HBjQr020764; Sat, 4 May 2024 00:22:42 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=message-id : date : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2023-11-20; bh=ItIB7GDFeYGfDtOXziUlHtxSUFt9bkUOkE7zb88JXmQ=; b=PpvL48D7pEj5HG0vmNyFMev7UNL5YEuVrI5E1S4L/4Q3FvC5Qac9viLaLV3imy/YJoTb T3XnUIvCLvhj0yxlZe0Cueg7YUE46z09FKWvO7JsL8KAbn6fa0HppFdqYlMsyiPF/o5J FPRQZXN0WRq4jZe+QTEj2e65JhTRfTgjqFZkl49mgzinifdyqnZ/1xT/kuTMKqP3TjhS RenRtalh5yy3C365zDOuzlKPM+l+m3NT+sWb2/Paepav/7EpvjrFhihly44P514/UOph H73KECjvIuLtziJbjvpZtNpUVeKdnMS+Ts7oJezIne1HRFGxdVpb/eNxvPX5wq0qNaVh KQ== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xrr9d20he-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sat, 04 May 2024 00:22:42 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 443NaJrs039997; Sat, 4 May 2024 00:22:41 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3xrqtd878c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sat, 04 May 2024 00:22:41 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=D+hVH6CTiT2sL0n1254BHl5JHmQ83z+oGz6ulBOHZmCfmJxm1Izr4XSLPbZEFzc9F+GWGRA0xfh5kJ0Jgjy0SdbuZRHv5C6pdWWtwdTB7YzSgwrDNRege/fdsNMu6GgUHjOSNBuJkeXpTcuHMosqmHDzj4JaMcBZ82Z4AWSFJr7KXXt2ddi+3oLcvcBPFeTyA/e9hBLO/ffV9K750v3tGxYKQZIULRE1P7Dk+6WGmSaly0mxqTVxGKRnuK4GMt4BN8qliUXeqvcL8YOzffpQwdd9s05hhE/Ns4tzU5Ofp87dq49meuHSkxGweadxnWeEm8XPnl/R7Fain8FxKr8mOg== 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=ItIB7GDFeYGfDtOXziUlHtxSUFt9bkUOkE7zb88JXmQ=; b=Jzn1tXCjhzNUT4aPKX4KYliU+TAZyhcp6O53Th9GqYknU3+C0/LnHr2G+pOMLwvFJrWTuZ7dzoZhrIXmUKmogOl3CiO2i81/xkt6+xvyJSscA7IAO9gzl4K6aHF3Osll0m3cuE1t+7a9GYLL5MqPJCooP/l1DSc1YQoIpt6EaAo3oUy1SPj46FO/lafXjD69oQE6q0HD4bsfuhmYQ9W1LXoYbRMSqwkwoCr+bqj9wS+d3tgiBg6wfVpx/wMtbhoTQQ9P5J/RO2fVNNsuyGQyc37SaEUT20WmRhrGnvof03UHr5zDEyMwc3t3oXHbtNGaNT2o3gL4GRPlDFAtECQ57Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ItIB7GDFeYGfDtOXziUlHtxSUFt9bkUOkE7zb88JXmQ=; b=EeRAMASo/VG1VVG7b6xbn3OLB4DzfhGYHoNcdcOJ/wgt3f00ZaFs0T0SRR2Xa+caP+4ziC2w8p+OF5otm4MyA1dL5/vf85VM7zAXI+TGFkiR/4g3nvmqh7kpMvCZ6FmomLaqyiAVt4dh9r8fhZsC2XzPaIKa0t1Pxqmb7iCChFM= Received: from MWHPR1001MB2158.namprd10.prod.outlook.com (2603:10b6:301:2d::17) by SJ0PR10MB4639.namprd10.prod.outlook.com (2603:10b6:a03:2db::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.34; Sat, 4 May 2024 00:22:39 +0000 Received: from MWHPR1001MB2158.namprd10.prod.outlook.com ([fe80::6f0e:742a:270:889]) by MWHPR1001MB2158.namprd10.prod.outlook.com ([fe80::6f0e:742a:270:889%5]) with mapi id 15.20.7544.023; Sat, 4 May 2024 00:22:38 +0000 Message-ID: Date: Fri, 3 May 2024 17:22:36 -0700 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 15/15] gas: Validate SFrame RA tracking and fixed RA offset Content-Language: en-US To: Jens Remus , binutils@sourceware.org Cc: Andreas Krebbel References: <20240412144718.4191286-1-jremus@linux.ibm.com> <20240412144718.4191286-16-jremus@linux.ibm.com> From: Indu Bhagat In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: MW3PR05CA0020.namprd05.prod.outlook.com (2603:10b6:303:2b::25) To MWHPR1001MB2158.namprd10.prod.outlook.com (2603:10b6:301:2d::17) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWHPR1001MB2158:EE_|SJ0PR10MB4639:EE_ X-MS-Office365-Filtering-Correlation-Id: fc2ca5f3-6596-495b-5f4e-08dc6bd04e20 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|1800799015|366007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?cm1IYU5JYnVUektFRnpkd1crTm1JUjdFS2FSQ1lvaUlIa2s4VXRvbE1CMTlr?= =?utf-8?B?OFhGV3dHR0FoWjlZc2VmczRFSWF1WloxQk9YNDQ5dkl0azRtbjBqYjFhZGxj?= =?utf-8?B?UmluOVgzRSt5a0dvWGdtRFpUWThLcVYrZDR4MHJuQ1FXZUtHOWNyMXpiRFJQ?= =?utf-8?B?UmpzcU1ISjczaGlBL21PaWNUdEJNWkFXWGM1SjRaZmhmN0JFNlJ5WU9ETExF?= =?utf-8?B?VnhnbVpMcVhOcEx6ZVFpSG1sTWlvVE5yOXp5aWdSZytQa0E1cEFNRm1EMVpO?= =?utf-8?B?OTdnSVVwUkppcUNLeDNaTmRxaUNDZWlJUUpkZVVtb1BOOWFuZGJ6NVdFejho?= =?utf-8?B?dVJvSnlrNU55emZRV1R5YjZ5djBZSHJpdmprKzBoV3UvdnlCRWRXVk5jalNu?= =?utf-8?B?anNVbEtvaEk4a1RrZTh5a0xZVFdRSFQ3dVBNaXZDdkZmME51Z0o0YzBpQnQ5?= =?utf-8?B?aVl5VHBGVHVGSEd0SThyN2FTTUp5OGRQSzhiVy9aRE5Gd3ZOVndJbmd0WVcv?= =?utf-8?B?WUppa2hueWJqUDZuUjk5WGsvVnRyVkwrdUFMSm5LcXFpa2FENnVWNFZpWHRG?= =?utf-8?B?R3hybWtJRnVVbHcvQU1wZVVFdzlINXh6WGJJUGJ4KzdLWUEvc1BtRk9OVzNR?= =?utf-8?B?ZldjOHFpZ2c0TGFTLytLcGNudy8xSjc0T2dQajJIUGozaTh3MDI4clpXaUtl?= =?utf-8?B?TlNzMWd2V1NqZEwrQVNyNmY5TWkwMWxrdkxyYnJiV25PTncyVHREbVZrbWFN?= =?utf-8?B?dUpaTU8yYzgrUW1xWGxTMkc1anFCR05pSFRDbklZN00waVgyVThrUDJ0cUpK?= =?utf-8?B?UFRlWHBuVmludnFJMUZDMHhMbmFVVXZScjRXSVMvMHRvS2NCVGFkaEZwRStD?= =?utf-8?B?ODVwSVkzamhrZmZPdHprekxMMWpMYTRoMkhaSTIyQkxGamZUMllGZ1BTYU1k?= =?utf-8?B?b0RUU2dNRTNtek1EbzZOelc5QnJLdmM2NmtpdURVaEFpdXB3K3NnTmpNanlw?= =?utf-8?B?NzJVbVQ1OFpFK1VFTUI1Zkl4bTFjam83NjIySlMyQUk2MVZNWHZZU3ZSa1pz?= =?utf-8?B?T3IwbzlaWWpUOWJ2czcxdFM5M2lvaGVieGR1c1ZHKzZKVklKZjFqZTB0OFZ3?= =?utf-8?B?OHdZVzgxbnp6S2dlSldnQUE1Q2d6TkhhMVBiam5iUkVPamNLY0x5RmYvY0dV?= =?utf-8?B?Q3A2eU5SQ0pQR1BxWDdvRmc0LzJUWStORFJGVDFLN0dyNjYzL2o5eUpCeDdv?= =?utf-8?B?Nm1FNWpyLzZKQi9yUEpobTVQK3FXRkRlek4yb1ZTc2w2Ry90ekpZd2tjWkJU?= =?utf-8?B?UURkYmwvY3Rjai92VzlrVG1QbFdNbEMxeTFxU2RBV0ZWNWw2YklYMkhUNmxU?= =?utf-8?B?dGRtN2xhNXpQc3ZqZFNqdEZOYlBxODVIYVlnN2RQWVlrYVh1eUdxeW9yVVc0?= =?utf-8?B?NVNsaEdxQWZaMjBLYUl3eDZaNEozaXpQOXB5ekJWcWM0RUU0cm11SjJ6RU11?= =?utf-8?B?cWJOTWVrNUFSRDlVOFo1N0tzZXlEUm8wNWRtRTBLZURwKzUyUHZvNEg3ck9K?= =?utf-8?B?WEh2Z1dlaTkwMUZTcFI3SE5GUytnUG1kQ3NLdVd1N3N3dGtWdW5QUGtVMmcw?= =?utf-8?B?eWN1Mnl4QzNsaDlRemJjWFIzUHlEWmU4aE1VdUQ2NXZnM08zQWN0bEc0WWhG?= =?utf-8?B?bTFJNk9Dd1NaRmRvZmFLZXU0Y1k5dFRJWkVkbjE4TFhkRkdCbmdmaUNRPT0=?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR1001MB2158.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(1800799015)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VDdTMU1Ydlp6OXFNR09oMTJxT0QzUU5Id0pzcmdHOTRvK0p3T0FGT2JqZ2Np?= =?utf-8?B?Y29sR3B2UzRuUlU0SndxclYzbFNoSHpSVlVLSm9KZU8rd1BBbFZnWG05WWVl?= =?utf-8?B?bTMvL0pDTktNd29mSWxBKy9IYlR4RzNIUHlpQWpEYjE5UC94amJwNmw1N1Zw?= =?utf-8?B?aFRuMHR1dDE2Z08vdHYrWjFldGExZWVaYTRBRlE4NnY2Q29CTHVYS2JzTWUy?= =?utf-8?B?clRQRENSRCtQZ2NDNW5SVjVJbWs0eVlRMGRiUlR2V0dlMGh3Y3Z3bVE4T0pm?= =?utf-8?B?OHlGSzdCUE53WnVNT3NLWXJDZkg4UjJjRW1lU3VqYTZkSUU5TlB0TUgxTkdu?= =?utf-8?B?L3FqKzlJZ3d2NTY5YnhtalZINzRRRXlpVVlJbjZaaHhaK20yL05Pdmc1SFB4?= =?utf-8?B?bDVMYTJFTEowTnBzSGp5dWV5NVBNT2Y2TzgrYmwvbXlIWExwNHAzRHFyU3F4?= =?utf-8?B?cDV6cU9WSUhTSUJpTDFIb2VjZkVCNUVhOU9PbHhsK3lxbjdyblpZMjVyYU9m?= =?utf-8?B?eDBQY20vaDJKNVdCUlBCM1lOWm5yeU9nZFp0aGRNbDFNbDR6WkhtVjdIOEtZ?= =?utf-8?B?M2l5NnBWSWEwZ1M5OU5ZSUY3Y1cvcGRCSVdzTDF4MVBKODk1elNheWN6WUVP?= =?utf-8?B?VzcwVGhLaW5yVVh5cGxBZjlSb05LNFkzakpZS1hvSmthQW8xREtZek84cXgy?= =?utf-8?B?b0UrdHI0S1VoTkZzNm5sa1ZzZXRTMkVOWFk1SEdhL2I2TWsxMElDZG10RlBx?= =?utf-8?B?b0l0dFJkdGhQQjVGRTJQY0hML2hYRTZrbXlQYlArQUsvZ0ZYbytiQ3dKZDVM?= =?utf-8?B?ZjRNUzkzLzl4bkZIZFBQNmR4RlNUcThudmFSQ0FjMFhaODBqeGNCdWV0Z3dv?= =?utf-8?B?UDVGSVBRa01ERmw4VHY3aFRXQTI0SFNLeTA3bGdzUDVIUlRFTENITG5NZHRJ?= =?utf-8?B?Z2dPYkpqeHQ3L3dxODNOZ2dHeU1jOTl5VWFBMklZandWeExtd20yZDd3ckxk?= =?utf-8?B?UmF1Q3NzdnNEUnplM09mbUl6dm1jNEtVVVR3ZE1wSHQ3eU1xZW0wRXFPR3g3?= =?utf-8?B?OVdJbHJmN0JCZlo5K0lySkhmK1VtY2NJTkJ6NGNKZzFLZjdnYk9WRE1FZFFs?= =?utf-8?B?S2VvK3E1Rk5iTEJEUk5jOUdmZXczZkVLUDFBSi8waXNNZDgrSEkzM2N3d0V2?= =?utf-8?B?U1JLdXNUbTNvbVNhSEhZOW9pZmR0aE5uOVRRdXB1S3BHZ1hxTmN4azh0a0lu?= =?utf-8?B?cng3WklRZ0NEeGZPQkJkYU03WGxDcVVKWTNXMmdyVDl2Yy95THFSWG14OXg4?= =?utf-8?B?ZkpLSjBSNVlaRStqWURTUWZ6aHRBc3cyMWZXcStkZCtJaUdQR0hXOXgwaGlk?= =?utf-8?B?NGhqa1MzLzFjUFJPeldrK0IvQmNudlpKUmNXSENTWmpaWnZTRkIvK1pUc1J6?= =?utf-8?B?b0JRc3dRbkRzaStiSm5QOFpFaCsrTWc4OW9sVmo1ZlpxQUkydFpUSEZXVDFt?= =?utf-8?B?L1Y5eWtiQUdaRks0RHZySEw1djM2a1BLRUg4dlIvUjErTlJiZHdvdm1PTlZK?= =?utf-8?B?UGloc2VUenBzZkRQM2dLL3pydUNxL3ZCUzFxeE55RW5hR1VXdk04RlMxb2Mr?= =?utf-8?B?a3J5TDkxOG1RTEMvdW10dko2WU41bWdFRGJ5NElaUGdoZENvQVhnVklDenJB?= =?utf-8?B?R0l2bmFnZDg3VmxQbzVWQVN3NTB6ZnpNZHpmQjVMeXZQYUc0Tk1XTDQwSmhx?= =?utf-8?B?L1pDWDZIanliYkdqTEpxNmk5WVdSV2NRc2hPWWF5SzFNYlI1bC9TUHMxYzlo?= =?utf-8?B?NWcrM1ZSdGZZSHRXU0JOUVA2T2RXckUzWkk4a3U2YWozMUEySjBtMHM0RVlF?= =?utf-8?B?bDZUWFg1dHpaMU9zUTNHV05ZM1ZReGZHZnJYMTBPU1hhcnEwZGlPZWt4RHUx?= =?utf-8?B?SCtpbDJ6bFJwUDc1N1FLZ1NINVJoZVkySVhhUTlkQjEyd3pjTjA0VmRORVRp?= =?utf-8?B?WVlNYnpyOXNrS3JSUjRNZktiQ0JKWXdWeFo1d291bFBpdWQrM2pHL09hbUVU?= =?utf-8?B?RmJuM0p4Q2FLNUxXdGFqdDBDb05aWWJJSDNEM3hzWnVOc016TkxxbDBCN1g2?= =?utf-8?B?TDBZbUdOUGJraUZwOFJjSE9PZElvNkg5ZmswVk5DMHZzU2JPRy8xVVNyOGcz?= =?utf-8?Q?s7mHYP17FWqNobvQ2cEnYnU=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: FqVnQ3/VODNFyZLuRq046MbcAgK8TR6QIOPteRvTrmoNKGx8qtEi+45ZpbqAl2l2t6v2Dxp6CO/PzW4j2gKZ4w2ZY9U4GsWMIGqyuDKqdqoHkxKF4DgxHCPBWHa9IbxGQoZywsdIA+gu6iUnqHFCL9/GXnLw1EHdwbTQQ9LBcx5cO/M6RjBSt4EpDhL/CopYIvQiKMcwUkAmSBmOXmS6P+RGmA9jy+lpbvuuF9k1Iqm2FCbbUCWVJNdqeWINmBst5Bq0gcKrYRhUdYthXzYHWjuh7ZPOnU998/btEh7FU2iWHxJz5djyCxRFTSJYagVuDKTM3F1EjIt6vPO8d2REfBDw+Vol/zKs/GoIIbAs5l5eC14SFX4jXUHp7NDLBlcbPNY60iwgopbW3NJoVAP7Yj4d9CsRLP2cqOzq8XAEQGq5p2N5cYZoefQ+VujIlHIFGtcaylgC10tAa+wqq1vdbq41WiyrfsztehJFiWKJxwe0rZgbIMGHjGCh1qEGa6VQ5rqyhZCn1NuJF4nFaTIbUw9sozGsLE8t/pe4bb0qySmaZniuxpnkmsP+O2RLhWCIJF7UZ48mvgzb394RFb/7Zo/0nrTU7+/OjZ5E80chRWs= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: fc2ca5f3-6596-495b-5f4e-08dc6bd04e20 X-MS-Exchange-CrossTenant-AuthSource: MWHPR1001MB2158.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 May 2024 00:22:38.8775 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: k+2r0AxEfFNjW0GFPoV1TI9DlG7oGQHUpSDxr928cYhCeVLfOEmCx26bG3T8zSUP5zajljYyQUiygziVAq7/QQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4639 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1011,Hydra:6.0.650,FMLib:17.11.176.26 definitions=2024-05-03_17,2024-05-03_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxlogscore=999 bulkscore=0 suspectscore=0 adultscore=0 phishscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2405040000 X-Proofpoint-GUID: nahWqq0ZqBH3cuPesOZFsi9S8RydOSCl X-Proofpoint-ORIG-GUID: nahWqq0ZqBH3cuPesOZFsi9S8RydOSCl X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,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: On 5/3/24 09:40, Jens Remus wrote: > Am 18.04.2024 um 22:38 schrieb Indu Bhagat: >> On 4/12/24 07:47, Jens Remus wrote: >>> If an architecture uses SFrame return-address (RA) tracking it must >>> specify the fixed RA offset as invalid. Otherwise, if an architecture >>> does not use RA tracking, it must specify a valid fixed RA offset. >>> >>> gas/ >>>     * gen-sframe.c: Validate SFrame RA tracking and fixed >>>     RA offset. >>> >>> Signed-off-by: Jens Remus >>> --- >>> >>> Notes (jremus): >>>      Changes v2 -> v3: >>>      - New patch. >>>      This could be made dependent on ENABLE_CHECKING (configure option >>>      --enable-checking). >>> >>>   gas/gen-sframe.c | 12 ++++++++++++ >>>   1 file changed, 12 insertions(+) >>> >>> diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c >>> index ca6565b0e45e..7e815f9603ef 100644 >>> --- a/gas/gen-sframe.c >>> +++ b/gas/gen-sframe.c >>> @@ -1532,6 +1532,18 @@ output_sframe (segT sframe_seg) >>>     /* Setup the version specific access functions.  */ >>>     sframe_set_version (SFRAME_VERSION_2); >>> +#ifdef SFRAME_FRE_RA_TRACKING >>> +  if (sframe_ra_tracking_p ()) >>> +    /* With RA tracking the fixed RA offset must be invalid.  */ >>> +    gas_assert (sframe_cfa_ra_offset () == >>> SFRAME_CFA_FIXED_RA_INVALID); >>> +  else >>> +    /* Without RA tracking the fixed RA offset may not be invalid.  */ >>> +    gas_assert (sframe_cfa_ra_offset () != >>> SFRAME_CFA_FIXED_RA_INVALID); >>> +#else >>> +  /* Without RA tracking the fixed RA offset may not be invalid.  */ >>> +  gas_assert (sframe_cfa_ra_offset () != SFRAME_CFA_FIXED_RA_INVALID); >>> +#endif >>> + >> >> I am not sure if the detailed checks are worth it here (simply because >> of code patterns that follow). > > I agree, provided the checks are performed elsewhere as you suggest. > > My intention was to have checks that assist with getting SFrame support > for another architecture implemented correctly, without having to chase > subtle issues. > >> >> We use the sframe_cfa_ra_offset () function later and only in >> output_sframe_internal () (shown below).  How about we simply put an >> assert there (and get rid of the proposed thunk above): >> >> #ifdef sframe_ra_tracking_p >>    if (!sframe_ra_tracking_p ()) > > See below. > >>      { >>        fixed_ra_offset = sframe_cfa_ra_offset (); >>        gas_assert (fixed_ra_offset != SFRAME_CFA_FIXED_RA_INVALID); > > That is clever and accounts for one potential implementation issue! > >>      } >> #endif >>    out_one (fixed_ra_offset); >> >> fixed_ra_offset is initialized to SFRAME_CFA_FIXED_RA_INVALID in >> output_sframe_internal (). > > Above logic requires sframe_ra_tracking_p to be defined by an > architecture that is not using RA tracking. Not defining > sframe_ra_tracking_p would result in fixed_ra_offset being unexpectedly > initialized to SFRAME_CFA_FIXED_RA_INVALID instead of being set to > sframe_cfa_ra_offset(). > > All checks but this do test SFRAME_FRE_RA_TRACKING first, which ensures > both sframe_ra_tracking_p and SFRAME_CFA_RA_REG are defined, and then > the predicate sframe_ra_tracking_p to determine whether RA tracking is > used. > If SFRAME_FRE_RA_TRACKING is defined and sframe_ra_tracking_p returns > true, then RA tracking is used. > Likewise, if SFRAME_FRE_RA_TRACKING is not defined or if > sframe_ra_tracking_p returns false (evaluating lazily) RA tracking is > not used. > > What about making the following change to make all RA tracking tests > consistent depend on SFRAME_FRE_RA_TRACKING? > > #ifdef SFRAME_FRE_RA_TRACKING >   if (!sframe_ra_tracking_p ()) > #endif >     { >       fixed_ra_offset = sframe_cfa_ra_offset (); >       /* Without RA tracking the fixed RA offset may not be invalid.  */ >       gas_assert (fixed_ra_offset != SFRAME_CFA_FIXED_RA_INVALID); >     } >   out_one (fixed_ra_offset); > Oops, that's my bad. Guarding with SFRAME_FRE_RA_TRACKING is more appropriate. But, I think calling the sframe_cfa_ra_offset () out of SFRAME_FRE_RA_TRACKING portrays an imprecise meaning. Only backends which opt in for SFrame define these vars/functions. (The cross build will likely pass because of the way code is written, but I think you get the idea). I would do: #ifdef SFRAME_FRE_RA_TRACKING if (!sframe_ra_tracking_p ()) { fixed_ra_offset = sframe_cfa_ra_offset (); /* Without RA tracking the fixed RA offset may not be invalid. */ gas_assert (fixed_ra_offset != SFRAME_CFA_FIXED_RA_INVALID); } #endif out_one (fixed_ra_offset); > What would still not be checked is the implementation error to define > sframe_ra_tracking_p and have it return true without also defining > SFRAME_CFA_RA_REG. This would be treated as if RA tracking was not used. > > Would it therefore make sense to add the following? > > #if defined (sframe_ra_tracking_p) && !defined (SFRAME_CFA_RA_REG) >   gas_assert (!sframe_ra_tracking_p ()) > #endif > > Also when using RA tracking an architecture should implement > sframe_cfa_ra_offset to return SFRAME_CFA_FIXED_RA_INVALID. > > Would it therefore make sense to add the following? > > #ifdef SFRAME_FRE_RA_TRACKING >   if (sframe_ra_tracking_p ()) >     gas_assert (sframe_cfa_ra_offset () == SFRAME_CFA_FIXED_RA_INVALID); > #endif > All these checks are around guarding against implementation errors, opinions may vary. If you feel these add value, then it makes sense to add them. (That said, I am thinking the name sframe_cfa_ra_offset is confusing; perhaps sframe_cfa_ra_fixed_offset () is better? I will think about it and may be include this in my list of sframe-next patches.) >> >>>     /* Process all fdes and create SFrame stack trace information.  */ >>>     create_sframe_all (); >> > > Thanks and regards, > Jens