From patchwork Tue Dec 2 07:34:02 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125726 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 010F84C3184A for ; Tue, 2 Dec 2025 07:35:07 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 010F84C3184A DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764660908; bh=MU4NQBCQP9xuNXs5QBfHFz5REJJzmufV9SnNcxqYgLk=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=MYG5vllxaTa0G13G9B4tM3430A98zR910LvLtkPFnOyRwgibq/QebNs8Mx65ZhCHf kDqhPeUXX+FMppclZ/4EumawK+967IPBk56MOzRVlROvXXWmmKwmEXtku6CjU7V11M 1k1Cr6dsrkFgh5Wz7MlYBwWfW2QmZROI+cDOgoYo= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id BD8364BB3BB8 for ; Tue, 2 Dec 2025 07:34:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org BD8364BB3BB8 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org BD8364BB3BB8 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660869; cv=pass; b=DBXRVfk067mBJt4JRqKEL/LN1Wsh6q5Agiyz2P/rwmf8Qoroo4Lq7jP2u5LsgiBE+W8wAm3SOkxqtqtKduhEvcP/eFwlgWGSO1d10oe+VdGIyF/wkRJ0iruXe2L3+09aHBWTyjIcpVrCPaakA6BKJGuP78zQpYPuOXRHEH6zz5o= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660869; c=relaxed/simple; bh=8oHUOSNDjPJ1Jd44tAXhZs4OYrNyIyMnY3cXaLObhMo=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=K2JKAeyAkhQ6ih4ch80r4M1hDkj6NeEhtmpcdk4eU3S2ZwCv38Lz/e20MYiPJCqJi47yjAtvt5rBbnOJLsv2BC0ty95T6qhuGF9Vr7uKl7S8T9oEp2xT+202WbBUsQ4ig1EIxQ8avZhLCRpAn98J2O+5ReUA8QQrRcRnbEAcoYo= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BD8364BB3BB8 Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NP7A3251655 for ; Tue, 2 Dec 2025 07:34:27 GMT Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as7wna8m0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:27 +0000 (GMT) Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B26Nu9B016425 for ; Tue, 2 Dec 2025 07:34:27 GMT Received: from bl0pr03cu003.outbound.protection.outlook.com (mail-eastusazon11012033.outbound.protection.outlook.com [52.101.53.33]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq98sqhm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KUjeq/NVyZ6PkK283Srs+8pRgnKkzfuqJb05f8FX0VVKgaooNhmriflE0asWVwYI2FIGgd0LpcjWM9WVR8n2KPpKHprfkd03j/+Mr4isnZ/1jABaPo7+AsQZXKCOZmd87aRF8IUwENjPop3JRcU08m6Egf2j7ZPU0PNw5zHSbYPcjKJF/XE5GnySH+t6NMbYedJgYxt7ESmlp0Qjvmr1RBjWJljaR7UCZKPF25Zcr3/0jHw0jcUeYelBmDyAtkPY6RNfIyBsGSbyFbaiT2F2Rw+SezUM38Xo4vhhWh8n9SviDLrLEWtxgiswoNpqxskDshZAdEm6NQxcr9yhpjWfWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=MU4NQBCQP9xuNXs5QBfHFz5REJJzmufV9SnNcxqYgLk=; b=CizaBUDEjhXgYAcHfHGUUs7PMl+StmLL3IoI7eePfIk3kTfYmTdczrpLlxSPCOpxGpfSWeXxhOCUNgeO9JZ7Oo6ZgpBTY7MPEZrbxUhhyP86WnlKQ8KoQxHHHSXrXjOgUx8ekQ1kO7IZd5jIrIFpNiVuZP2DijwzR5u2Yzyb/e0rcuSge1eVmqGY0KHUL2bWlWfasuzDDBSUiyB3xg4UW0xxccq4BHE3EYmvljKfyqSx+d8M/36Ate1ebK+5VB7taFnQVvJ9jUBcAhe3gTx9pb/evKTzKufYZz7OKn9/ZkyyhHPWT96HhVA3YXIcGUIv7VfkN1vIFG4/JwvW+nvxOg== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by SJ0PR10MB6432.namprd10.prod.outlook.com (2603:10b6:a03:486::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:22 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:22 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 01/13] Revert "gas: Don't skip SFrame FDE if .cfi_register specifies RA w/o tracking" Date: Mon, 1 Dec 2025 23:34:02 -0800 Message-ID: <20251202073414.200246-2-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0127.namprd03.prod.outlook.com (2603:10b6:303:8c::12) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|SJ0PR10MB6432:EE_ X-MS-Office365-Filtering-Correlation-Id: 85928939-8dc5-4f59-abfe-08de3175362f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|10070799003|366016|1800799024|376014; X-Microsoft-Antispam-Message-Info: O98StKJLwY6nbBu5PW6whoHeUwuSjrvv/tuCIViJ9o47WNq31XUimlX+MO7/aYliW4NQdLhVHHvZOeLd2kIJoiWrRq63L5EOcRcAHpSSXNaRHu2T3t0bEaQNPME0cqot0SDmKihUkiZg8V1idu8h3Q1AhVV5p29R81PGNOmLXd5/ALB+Rb0t/FVkNanuhbrUmegJKzNj/EWbdaUjccyXaEcPcDgXVSKZVJ3nViPvvaGD354+SEIh/b7yPTXOxzE5+lW0+/IaxTm17tVPbUQb6VnIT2CzP12l7ZTdjqjN7L//SlDIBdUZFxVMkCJyI/fkFIyLzScLbfVCs9Pk/fothjR4dZD1HCQ1bUr9UQEwdIpmeH+fvQhnYHDjdejbePSFQdn91sMfMUeXdQQZiWj8zShEzo8UOjQS1izbTmqCevTt15Ar/LylSbQPpsAatpTu618PPQlj8lYB1s8PtuUaKl64zZm6fnCq6ytWwiaDTXCC134Z9U6K+aCC0QBjI3oLTQsvvL/R2B2SssXd48IphqMDUsH8Tt0g8oBDv5Bx90s0OiGWnh+9+7KTAorXULJc8EAAPQklFvkMGt3uU3FLYStotRSpnuMKd0TnuwlHs+m5EnHoJBLwyzRX1Cf46pfhIA/GquPQL/YvsX28C+MOgYgODfH915K+gboyC/Eh4hxFOnZnypz9maPnYtYyFB/r1EjeahiQYnh4EOV1Rgy3Ln2PVbETQcy7dCoRiXtcrhi2N3bAk9AKyeKtWnSm5Z2PaKsQ0UfRgm++HDC+BZmGEofYX/LdM5U/y2XYgiiGV9TmAn7orzbht++Exa6uVj7R5dUaOAcHA9tBUFPMWK4yDl8Y6BTTeX4EFszXTz5sGgRXqezlo8MQjxobT0qyaNa8QmmX58L8VKTZIF3CwBsAom/bJyrDO1D3Qmr9icZ3sh6fH5x2GaHMxrL1FnWnarWTS4nQJ0JUDwXk4/q8zNJkBpal+D2n1Vmt/igGKzTIQizdVInY6t0AijKNgN2fC7vOvvqvD+LmnX3OyUXjpC5Ed1OWTwFewm8bPFFOPJK4zl3ETbC7HeNhZNMFV2VELKdHoTeaZxrkmConr+cmQZT+t3QPAEneKMubd7rDWD457jcqa9hQVNLQb0xz13oGD6Px+NJJm/feZVQexUZCRGKNokazo9UdOubhAWtHA+a68zLoi+MqbFUAluRMRomY/4LkhXX2pXZbPyFQjMW6+KIsXWsHxeIn1nnhu8fw+CJz4I6fguJebcqOoxalNGXyHEAm+HE+rx/XpmrsNaYlX3dyD+Sv5ZSve7/MndoUuWbDDQLQL1VqCmXflaF2MRi+h14B/OgwMO0Vsj6Q5b7m9vF4iSi9HERrteuurx76gf83f5ToVHrD/LTIyNV75w0PYItYLRqyPAyxZKlCKcW4nTmXmHT4j/qmXJtV07z30W/oXw1ojjPaa64Pi0YTvVzbTa3q X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(10070799003)(366016)(1800799024)(376014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: L+vzyFBBPkcH4uhuFH4a+9J/iSv2zG+RxZ0leV/jUtpae6QMIyd7/3bNKMs4YqMkiqk/jBvJHAJ4x4ckUv0VJ4yQHzH95cgtiMO5ySjPgT1sC0lJqawYYELL+LFlPTC1OPuy4iPZp9ED+e1brRERYFySDjgt8c3sOGmChy2vXyxFWMgAoRx10WalRoEr0hN1YgouXMkmNIHicCV76zOs32NuD0f3c8GEvfAwsTqYKUoKD9yzBVDlKVbI8vfsKQntX+uAPMoAq5KjLVFKWDPyOOi8vxrBjuyKwcz9MdyXLXRmHuyKKUxE+2t7gY8n3pmxTJlqv4Bqw9jW6lTmh9jIUb4ZY9RuMrThoUl8rPft9Z3cigOMRFHxIGlm6xeJq+mBcpf4OUzbCBSKkGZd1+WjTIC7uYivrynwIl/tU2vh/A7uOTpWlI/3utEteR1Awb0JsQ8u+UbTe925xQuwnTksDD1zz07FPtzNsth40rTT246Rl/QMO6g/p/9iIyEf/QQmajbW4OrWlJb0BwHngvwzOZ8oAMWyHH4kB3gEZIh9V4iHyfUwOVgusvx7LaJycU171ZOa1uDkkUVl62wnDMYpeuGe8AcyGkDq8UFvxyRJU4sWbrlLfYg+eAsfJRyVwY3idC+oVRePj7opD85+XYDIahEIQhYPlzyAs/GAQCQLyOlg1FnHkaj5N1kg8CDfFBZlf9GtVsN9sbh2qAXnVleeXKiJYMP+mHDFrO4N9Rt99/KrLN56ZVgpBNbmEj/1H8LXTpNRpsrbv9U2oWqRozx4A/MvQdF2VyEqZdo98Y0mo76fzogT9ebR+BzPjENowJQbf+obs7YtcRmmJZMnvtKK9VrNlcubmbs7R7fnA/PkM1YeYHjvLjCslUnFMdDSYy0fCrbEJkY/vQEY6caPJKcBSp9WbLm8BUV0hZ5187dABoN3cI/4LdBbJvb/FxZs2NV/ObmWfvfibdQVDEyuQWF2gT/uayeGU84oV3SG4qTLtaFGufSU9q0HUavvhKZyBBD+aOZDhrmYoKJ+CJhSl6aDm3P+Nu8eDTbiX+EsvfVQ6WF9xS1nQjNyJIZwIyju/8R9ea9pGmx6gNtJK1GmMnjmAjIOrxEB/UmHLv7mIq1Easw93nWPrGQcA6/KpHJEMhVXfRqdyuskw8H+CUuK0ER5uBZAkVUzUIx1CpPBRCe9SUZ8R5cCO7xnLPyuYXqPgznZ+byrZPtYC0sH0wxFhjOPP/eoHv0hIhULEghIj/leIUF6lkV0SsZPjKA9VxGXw8PISDrP4TlKcex48OWa2ZfS4MyI3QLKNuaZHhOxjqGO/n58XAosoU/BYbUQJvy+petaMfpwIOJwWBqe2DI/h4QTBLFN3oV9p2RHEHifI7lqLdmnZW2XFEkXg1iR1AnfHMUmmAsghLuj349uRUBz344pW714mI4UmgNilb6EVn1n8NOXTegl7I4hdShM37qvhyN8uyuT4NPu5vjktsyqSQRtp9NtY1obweD/HpEvSFYC3GNv+qZBL9uy/gLopkBOBqSjajnGGX4LW3iP5tmzK+wkG5C6JCKArgX12guxO+ormLuUxNU4HP1BOMUpA5VIhZml7Z/hTOoQGC7ulsyknWPQTbt5530ZsufAeS9lj30aDNo= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Sw7rI41R6AjwsYG/xGaOj0okZxzhvH9Xe0NCCM8sT/TBM/EVuK2IiBKpc+BB14ueWrOwOavQNmm0mFMDsx/+hMR+vWcRIrE/UWIu4gHvvVYnapI1X5v5k+a0KulNNMXcdto8AHclb92dobKIYqudxkt9DEOAD0e4p4J5/Quri1Tl01uuRMf7Efmgkp4ToN+OO66vwFuzOkWmWlny2mJpNd7Whuq49HByVEywaAm7RQ77da+b2JyN4RDb+0mkbfusNKZbqgUc1s67/oTkuC5mqJmyb3KyinT1yAU7IZGil7Ov/Y2DNjatbd/WKaLadjWi/0RmMc5xIeH6lxNPsAbJFXWkLT+6JnDxhmSMqxMM2aOfK53Gph72QH1sKEQnOdEaV6b6K3pI25OmUnd6sH2YVymS1ed1XaMtXV8JGwHWousTFwk8TJ2Kvy4hhNw2sxmP7R2dh3lyFqTc/U65XA11/teoKBBKYwnR92KuFSBxrYYCa+Mb4oJEe+v5fkoL4lnwKUbVXeZodMuQllKOG+j9ovgXk/UeJJepWIKiIasfCn8gQ9qOP5/wCE4V9p+sjnZDpgG0IoVMJEFocB5bgx6hONzmAF9HhCP5tNYBFo6rtxw= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 85928939-8dc5-4f59-abfe-08de3175362f X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:22.4188 (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: ULWU81N9qjxOqO7teyf9Ky//Ym0KBQ+WC/7mzO5cGM5LP1ub8K0DAbkwB78cEVtB1ap/CZLRC6b62hadjf6/ng== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB6432 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 malwarescore=0 mlxscore=0 bulkscore=0 suspectscore=0 phishscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Proofpoint-GUID: G5X7FLJIWfOtDTx2_H1B8ECU3hl4kprV X-Proofpoint-ORIG-GUID: G5X7FLJIWfOtDTx2_H1B8ECU3hl4kprV X-Authority-Analysis: v=2.4 cv=SbX6t/Ru c=1 sm=1 tr=0 ts=692e9683 cx=c_pps a=OOZaFjgC48PWsiFpTAqLcw==:117 a=OOZaFjgC48PWsiFpTAqLcw==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=jvJCYfzqN42abbCS_JwA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfX9oFnbHjuOQPi YBnnqsCOH0GZS5ATErRNvW1H5MOx7RAhhDG8VQPh9S0K96USsVT8eHaS6OdXL/Lrli/Oel2qVba BWPmRKMTbWRqk+/PcIPOqjgYomHXt5YuX3W5nK0Eok0lNH6joEojLIrEULP8irPsyr0235UOaoy 8NExLSO1l/tZ2ZbMDZ7EErrJdIvEYJR6qmqeFgithjAHA3stkOJOZ5S/VkBlQkqsFeNgKmfxH1x 8KJYm6Q6V4HH5xWsIxuYqBXjSbXXe11noInywPeWK7iEspr9L97v1LeImkWj/lLA6gPuDIts2/h 956UaSep/QWsr88imTXk5r9LS05aA0KA7rN77pBGw2U4nJ2dUAyJnDe3JCK/GeBlHjVo70ADHD4 jPR+j2VmR0FUo09E091KqAiAjxFLxA== X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org This reverts commit df174a6b760ac5c66ee62ecb872c760ae21fd4cd. Even for ABI/arch without RA tracking, there may be instances where user may specify '.cfi_register RA, reg'. This needs to be caught, skipping this from SFrame generation may not be correct. This may be done in certain hand-written asm sequences where the user needs to manipulate the return to a certain function. A later commit will add a testcase for documentation purposes. --- gas/gen-sframe.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c index 0d6edd362cb..eead58b00f6 100644 --- a/gas/gen-sframe.c +++ b/gas/gen-sframe.c @@ -1281,7 +1281,7 @@ sframe_xlate_do_register (struct sframe_xlate_ctx *xlate_ctx, instruction can be safely skipped without sacrificing the asynchronicity of stack trace information. */ if (cfi_insn->u.rr.reg1 == SFRAME_CFA_FP_REG - || (sframe_ra_tracking_p () && cfi_insn->u.rr.reg1 == SFRAME_CFA_RA_REG) + || cfi_insn->u.rr.reg1 == SFRAME_CFA_RA_REG /* Ignore SP reg, as it can be recovered from the CFA tracking info. */ ) { From patchwork Tue Dec 2 07:34:03 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125727 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A4F184BB3BC5 for ; Tue, 2 Dec 2025 07:35:08 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A4F184BB3BC5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764660908; bh=Y+tFwpEvASfzpdiiqLhUcQ96IVk515HuvT327ByQ39k=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=L9HokfSFywp+seXZPyd4MITyyou1H2BXS7xSEIF1g+uylV514TH2nhnS3S3eSo4R4 +rvF2/IEOQU8g3zIhVxSNvWbvpLSJrOyQhBxr0BPIm9mmXtM6bwSsZC1Cbkba2CN5Y bivUvRwYXCqONJIhdScj4kFWf+2wAPJepw1KUphk= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 465B54BB3BBC for ; Tue, 2 Dec 2025 07:34:29 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 465B54BB3BBC ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 465B54BB3BBC ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660869; cv=pass; b=HezvhStRK9OX0Q1Q3xantWLZGiD8O8AmvGHFFzozY5TmZm+5ANAdeYg9QD4mKss4hu3xG04aV7cK3x5gKGuy7owdASFTm4fDkc3O1CisHEaq8Xzwg4aq/YhgEUA3nyq1U4PJpLPYypaylYyVjSvRkzHB7au3fUu0htcHXCio+ss= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660869; c=relaxed/simple; bh=IfjN1Jj9bOri35F+kCcIVrP+6WYGZSI5ulRYvvxieyE=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=ocLGFjTKyL8vEKsxjdoSNmdHuBkMc1WOw8KbAhy9r5yVLKU6AMGGclqN0pZRzdql1KoHqZ47LMRxQGKXlK7HlYjtMSrkcqg+6TwYQ3EOrCsoq7LTyjCFiQ1LUmcZVeHTGMMNDnWOT58zt5GalS1ygF/1ohD4rZ6W6x7w51TOZzY= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 465B54BB3BBC Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NOCP3288515 for ; Tue, 2 Dec 2025 07:34:28 GMT Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as7f22a77-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:28 +0000 (GMT) Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B26Nu9C016425 for ; Tue, 2 Dec 2025 07:34:27 GMT Received: from bl0pr03cu003.outbound.protection.outlook.com (mail-eastusazon11012033.outbound.protection.outlook.com [52.101.53.33]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq98sqhm-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=j2eWGrHZRRESiwvmWSLLzzPb9GUY9beAml9YpmrjCGHw/arWiMMaMDMOjplEL+Pk4NXLD1a8t7abS4dHKaEgfvwr626HgC+z0b8hGcP2daIo3EMG7r5JR3KoFYftk2248WRn32yRljwCbfKIu6NqG1hPlTNi44+RHFT//9SHuUQ7qO3afwOFWXtytJkKr26yNoBiTDhWDHEnQSJDnbvAga3VQYtvCsfZzqXKC/JIYREKb348PGktrRsg/hc+WispWFpRXNam82qAxT+P0oe7KUHqvFzcsflk9ecYXeT2PVQ7e5i/zdWTvdabVg1LoLWWmMT2TzIniu7AB4s8BZN9fw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=Y+tFwpEvASfzpdiiqLhUcQ96IVk515HuvT327ByQ39k=; b=Bx0LHquoVvnol7pn5ykvn1Ig940qGNgGkjktyEBZ6pgi5gt2OJdh7vVijrYNSNJhB3SBosy45QT7BBRvuGCS/ZzSZjcuw7FGD6vk4rIoly1T35TqcMt7jaB4XgsCZZhwwzQe46WOp6EqBaV5nIpTotze1lmgxN1iX+lNn7Yx36QSekqFJQu/JGiiQ5B9bj8eoG7iyWdI0zZlimsE0Q0XQhgfOt3bIDIUIx2pIv2kwG2GvACMZPclEp6JtBsq+YszMFw3UmOBeBr6dP9Y4+h05+uTT5kmA3imCUhmmaWxhDuAYSNhmKyjyFp6Q6hOrWi7Edp+gqgDcVwMFomHsiZGtw== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by SJ0PR10MB6432.namprd10.prod.outlook.com (2603:10b6:a03:486::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:25 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:25 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 02/13] gas: sframe: testsuite: add testcase for .cfi_register RA Date: Mon, 1 Dec 2025 23:34:03 -0800 Message-ID: <20251202073414.200246-3-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0064.namprd03.prod.outlook.com (2603:10b6:303:b6::9) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|SJ0PR10MB6432:EE_ X-MS-Office365-Filtering-Correlation-Id: b4454de0-374d-4c1d-add7-08de317537cb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|10070799003|366016|1800799024|376014; X-Microsoft-Antispam-Message-Info: YeLq6n100HR0vdCPkSW6ujGzUlf5TLgDkrO7JhZsAG0/bDMoYtKHyIaMukbw8lra93qrE2j0CB9C1JeVOuIUSXtQUbiVRFNjOEWACg6mOMvIRiT08Xbjv78fzVRBBseXokJ7VMoZB4LapnNDBMBQSzFypPw/oh78h3aRgiEXRZcI87bCbZbKP1Xd2e8t3YTiLCt3yaRluWQ3/vM6Y+FxPcoiRYre1UlY6TIu/lgdV4JOjPge4UYoucejw8eeSRFDluNcL7alflbOOVWlWpnpqnQ9uH6OaZbaKyAr0sRwTPTRq28q2uhdjI5yPM84O/Xs3XIMiAfCjIYhg7syWacOoyfzJj+uLQap5sz2shYdb1avarhlXvshlVahBO+Th3BNMWo4IMwnr7krQSeJpUs8fbYpA9k+z25jfmJ75YKjh1rkUZAmuDdgWIPx51fAoNg44AjXRWCv0I6Y8J/G55HLpPTL8ptKTls+yLntu4yLDZJ12bgXXVTBS/vnBpbTUHhhgoVVV/IBVfip+UmB6+R+ntBeE34QZnwttvvtw9jO8bS7gQoN7ZVmePmgMfrMvDirDkMNEuq2NjbZF93KwmDJhmdFUzwVpPYhMYdsdRtFCWXT1eccn/vPXQT/AFocfu5i7MM4ZWB1dYYhaZTeigbEas/g9xwp5xz1wAWZwFrYF309KfUBeD5fMIgDipjtLQSYA9H0rpv/3W8b4p2+024k1+Pgsmhw2S8lHAYHZPHTVhH0+AHQKgY/Yt+ISL0YWacYkr27nHzWv5MooBQfB+27ssblh+x25giYCuPQ26uYOfl2GjhHCTOOibtRlScxqHTTEIEvLUCCI9qSqWeUX5/nTThSPs6G07rufhAAxHkdURALk+J8kLe7GZxKOXa+MTrwIg8lz5/1XjIxGwR1w9qy+cbbn9OkQa8OqiSF/X7hcEYaXbnCmgVR77Mzj1mpvLW/Dp2PReX26UYx5Lic5xtGxNtoFaUdjXwg2hqcIctYlNK0qvxJxJF1CUvecVDK1SZ+shMik1nlrBncaLNvGPFrCRhrYfbQn4MHC8710BFtC+BemEvUm/tnU3baiTYHAhb4tQGxNAN1BASDCvE/yjtU09GmSeoAwtDLmo5jVriHQjFf0lEeCiAUbenciwiMR58RTAZVa+YS6pGfCZer9nWLbiyjs+h49pPvkoX95is20kuh0nSVZea4q5WSxGZM3KfQZDwdC1PgBpx8ruHElKnLQ7w2Fc/FvOEN5u0Zasq3oz995Nurq7YT9NytFiRbA5qElSlxwtNNJttm6d6kqt+Q49PFB0eyphOzeNjZuWw3wVIG4VLOGT0dMbHyFkx4IsZE7gwXV/TBjeVC9I8zYmuzNFsr7/n3XOWMGWRk8Kpd5KkpB4KN3pLmleZ93pAZarMPupE9KbKkxyukre+SELxI5PyEgZ4u0jkRJOXmrsNxul/iFwjriL3DhCfUydl2td/x X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(10070799003)(366016)(1800799024)(376014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 7jVih5OsOomwrctNFEv5TPF/Yhw/Qi79KyF0lCoiGM95+sX3hJ6PkPGk5hd+GoSoOjCGGAc1ua3wzQq6uWz3enpRNJkSoO8sanR7rkqg+xIw+V53WipWmPJtnH5LRq9TGh6i7Ey8LMfagYu95eJQn63t7FQDxp7wjPOyiCHwqnJMHIvSyeP+SE1jrZPkLcJTxhJ8GTtyWt+oLMt3XMR5u+Lj4a7fP0YaxEEZEYVcnge+kWMgT/yCcuHO6aDBY1mNH9wZy8ChZCWhf7D+BhTTLV31iktpZimS4M0vjj4weUf+wGOmbQn9fRgAa8IIgS+v7lIJ+k2ktGmhXg2opva2nBW1nl95kpcKYvdJot8y6863d2h1GymzYwgOzlaB1M371VgPvedOcrd59GzTkp0w4VuZFatKeSEBIL3h0OvBfGVDzkX5fBx9wrTDQjpVaBg8hmcS6NtA/VO3sQaaF9EkvQcqwxaDxlb1xTf2dVZaoPQTsFD0+HcdIjUO3XkypS4Y1pwXEa+FgL0yghBptcpQWrLwVpMRR045l9L7v8Y7sNC0PKz5tn9oVnsB2A5toKLB+6crR0qj6rwFnNOpxQcWr+8pu8yFIKKXAKcRSgGnonmKvNEO8gbZuq6lLWUnupDtCrOYgNZhaFzbDc1RYDbs+0RvRWbcr8KtQXBjmbIbYUroY2w8WKeQrQELkTpZLK6oR8PsHEEetEZ74Y6tP627Gcriee9fNVU7+vK/eJOcjCZbyxoWhpDm90vee7QQJwV7JJmfRlQU110HOhaqR1AcgqM7gKhQE9hLtHNZ9k9C/qNlg6nMHpfOtJ0l7LRClvQWARCMGn2ZDmm6e7ue8EX99A6U6PmoT59xMMh8bPxUIz7Gggnrk98lBH0C1KauqbCTpAG4L/Na8DQlxPC6WgUaiEMx0iZOvv9H62BEjIJ98WhcDyFqQbTyBY6hPGEeUjuOH/RRCUvvIUu8oCIetvhHkQUWWtI0jbbssjjZr2P2o1PtvLgyqkNFLXOBhbofbyOXQR5R8Wb/NMQDbYyayUyp7NxxB9rZUdnU0/7yHp1i1xVsT4BjcnQx5EvhARov1Qvv63tuu1OkRiQhQAneOJUGaRYvm1S4m6CIg4ymnQWMb4oFx9RMfFXZ9uIhYOf42RYTdYFCktJJzN0afyCd95n6KGtHJ15MbtToQlcM6AgmkQB9OH3ymXYL5gRau2ZqeNgjKQdMctkhUnE5VczAz2wcowoIZgIDad1soxuKEzslUbBI3qO2oFya58S3uGmoG+mEJEeccUyGX96e9r5FbaaT6gKmSB01JfYKy+Zea4avs8vLSC3z0N+PBRSxcfv61fLkhcT4uKEmylS/sVaG5nfdUwvfKw9e9e/f8E1L3ngozJI81s2Yd86a6wNT7I3qHRFvn2g8rHSzvKRr4KUtDqOd1YnhD4TGLllG9RfbD+VZ6NcKHn2mrGFURfJ3xupgGS2myRKTBprJhFFQvXE0ObqDF7Fntz2avEFVRUHT0C62WZ9qV7GyTd3V4fs/RsvgVtMEAsMuGstgY7YlI+bi+Vm0MMMCZS2dBLKYSiwUiM8POkCb2gf+CvzfSL5uooMQuw9aLwvDIwqVFkaIyjx43MdTAPuVQ4bb5ivFXvi2NaYtfAg= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: iaT7Om8SN0PO2yudJ4sR+oq5XC5p23qS57qjCbE1R8hEDP1cYQ9vz7vwx8+AP5iB37Mis+i1K/lW9IRDQTCyXmwlGMz2goYxnesN8n6g1g0UApJQVbyMw2pazlfb3c9E1claerwBB4Hy3p2uU6kp3ISklK51mCe1L02ZygdBa8EGpelGvAEmWTMk0thw3vFHaOSHXwUPA6GoAR4QSsjSRcKRpaAllhxppPGBUvvIIrqCrgcGcIKxVoFGYJ6/YwBq1gSZJG9K4PfiYcLHmWmU5RK3fuQb+Q+QYZ3EesA4tpLBk9MbwISjScFkvI7VptpQRF1CMFoHy6JC0o8mVTsFLL91uYIFm7/M9+2YJEdmLJzzROwyNg31+HT/6R2fiFYhiroXdkfaCHPFPZCYf4kpXXaJGEZh1yfXEuaeqOCiP8mlei8KeH6F0+4vCF8ysiLhTbXear0dl2XhpTBQ3gB95CQAPZbt9s6k/GAKB1roP4mVtJ/c53nesBqLthQYX5lxGioJ5XcDeOhrVSMzEPuDo7WDf87Jg4VA508Lm035Lmue7YrXQFRBa9IuS7Pi6oPqB/v7JXhGb3nMQmDA/eAdZC53poe6+0HhZf/xXhoTDCI= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b4454de0-374d-4c1d-add7-08de317537cb X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:25.1066 (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: dQNzO66xLZq9/V6s7CDvDSxo+WWnwmyDiF6e5zW3B6aylwTYQaVsgSrGxRBarIQnRBf0NH7L2nZxv5o25RB0rA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB6432 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 malwarescore=0 mlxscore=0 bulkscore=0 suspectscore=0 phishscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Authority-Analysis: v=2.4 cv=QMplhwLL c=1 sm=1 tr=0 ts=692e9684 cx=c_pps a=OOZaFjgC48PWsiFpTAqLcw==:117 a=OOZaFjgC48PWsiFpTAqLcw==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=WSWoJARTRNVb4FSWNpkA:9 X-Proofpoint-ORIG-GUID: TFpM4goJJ7m_IMnLVGttm-xxdYTkYQcC X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfXxqGEEKRV+QwC f0Nl9IQNjwBZ4N0NpDs/4EmDtcD97laUC7mOLY0OxJhh/QesXas/xCGyos2hVhy4Yd8tSWNiGBv 1y4ia7FTV9DqLXAfdN4gOUz2v+mUizdZj5uy2Wl94pnu5wGPFwJfAfiQwZuHeWr8x2c7o5tz32i b5moabX/OF09WN3a4jasu54WZ/CxUidd+7nZFq2WB0wCEupjJHG+xhD8pP/84H5Q9J4cBgANj4o pdKe+YNDy+dqBcextqiPOOqa/W5GC6b0yT5Ii4Znaausfxuxf2dBH0IfdXnBeXBK++rwJ1a7+oR FhiiJwmKcZTg3sftP2yhwfVupIADXrcb4Z/qjoSJr0NWWnAIUzu2wFMPUmWeA96v1bgP+CLjKvX liLXbxzA4efeEyZiSr2L6FaE3A0N+A== X-Proofpoint-GUID: TFpM4goJJ7m_IMnLVGttm-xxdYTkYQcC X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org gas/testsuite/ * gas/cfi-sframe/cfi-sframe.exp: New test. * gas/cfi-sframe/cfi-sframe-x86_64-empty-5.d: New test. * gas/cfi-sframe/cfi-sframe-x86_64-empty-5.s: New test. --- .../gas/cfi-sframe/cfi-sframe-x86_64-empty-5.d | 17 +++++++++++++++++ .../gas/cfi-sframe/cfi-sframe-x86_64-empty-5.s | 11 +++++++++++ gas/testsuite/gas/cfi-sframe/cfi-sframe.exp | 1 + 3 files changed, 29 insertions(+) create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.s diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.d new file mode 100644 index 00000000000..ce1fd3861cf --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.d @@ -0,0 +1,17 @@ +#as: --gsframe +#warning: RA register 16 in \.cfi\_register +#objdump: --sframe=.sframe +#name: DW_CFA_register with RA register +#... +Contents of the SFrame section .sframe: + + Header : + + Version: SFRAME_VERSION_2 + Flags: SFRAME_F_FDE_FUNC_START_PCREL +#? CFA fixed FP offset: \-?\d+ +#? CFA fixed RA offset: \-?\d+ + Num FDEs: 0 + Num FREs: 0 + +#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.s new file mode 100644 index 00000000000..9a7bc317040 --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.s @@ -0,0 +1,11 @@ +# Testcase to ensure .cfi_register for RA is not treated as safe to skip. +# Even for ABIs which do not track RA, an explicit manouver of RA like so +# cannot be represented. The expectation is that such a pattern is caught and +# SFrame FDE is skipped. Such a sequence may be used in longjump implementation +# on x86_64, for instance. + .cfi_startproc + .long 0 + .cfi_def_cfa_offset 16 + .cfi_register 16, 9 + .long 0 + .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp b/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp index 96d34bfc17a..b60e4f8d68f 100644 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp @@ -66,6 +66,7 @@ if { [istarget "x86_64-*-*"] && [gas_sframe_check] } then { run_dump_test "cfi-sframe-x86_64-empty-2" run_dump_test "cfi-sframe-x86_64-empty-3" run_dump_test "cfi-sframe-x86_64-empty-4" + run_dump_test "cfi-sframe-x86_64-empty-5" run_dump_test "cfi-sframe-x86_64-empty-pr33277" run_dump_test "cfi-sframe-x86_64-ra-undefined-1" set ASFLAGS "$old_ASFLAGS" From patchwork Tue Dec 2 07:34:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125730 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id E09C94BB58DB for ; Tue, 2 Dec 2025 07:36:35 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E09C94BB58DB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764660995; bh=DAHhxsM8Q/ALPbyLxb7i6foRQou6xwIRLv3W9OuCs2U=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=wvt1CdkLIaSIuChWxmaH5HmEwkZZejgNsTtlDUpc/zsfuJUc2GpYstyY14UaqAqeb qsNGCCTqCNtMINJp6gtiiBxdsNOxt5MUvC3mzFBtsETNWJb8kRqiVz/NBNVdzWWxBR S2yif3wn2nX1WdFs9+GnkSTY1FhPGm4Uh3L/rNSU= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id F26824BB3BD0 for ; Tue, 2 Dec 2025 07:34:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F26824BB3BD0 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org F26824BB3BD0 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660875; cv=pass; b=UjeA9bk1yeoNLlmJ/ul4Zz01uqB1TVG5AFy2LVUas1EeI1ag3GIpzOYM6b0mVVKQs4tPd5JZpv1wtUwqV0GKk5vZfYTNm9fgz3bWlcbJxFEqDUy0pbbWU/TGpq6GZv56hoeYOWBJkpd3Nry8h6yoOHNsmykIQUwFvvbgcamI1aM= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660875; c=relaxed/simple; bh=NKeUbvQgz/NqoN0HMhRLJ7e8sfOpo9drw00UgVdEppw=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=sOFn40APGm7xo89Yf1HCikeGO0g6xTJUaYBjoOKbEBq3a/tm+EH1j2yu3B3UycU5sWSeeCq3xJTY4Wjq7wxOqxO0Q3iD9irTH+weZfGm6IYxkOPR9RKS64j/PSc+qHXVxw3JQBI6iyX7sBdiKwBH4paNB8gUt3A/aYqKn7Yu59Y= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org F26824BB3BD0 Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NK403372660 for ; Tue, 2 Dec 2025 07:34:34 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as6v3abd7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:33 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B260LLv035406 for ; Tue, 2 Dec 2025 07:34:32 GMT Received: from sa9pr02cu001.outbound.protection.outlook.com (mail-southcentralusazon11013018.outbound.protection.outlook.com [40.93.196.18]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq9k1qs6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xLhFH8fOggy1KOlLvYZ2tvVCrTrMEAAB0m/tavdn/9qpVRbVyyHBAexj8GAieXLge1n+XBOm2Q5U11zMGaZoh/Md8/rZjUX00HF9l/nNIcifYdWP9MmBxV+HUEjzbWOJGAvuGomz/tthc3sd4mnXJRMwGQHUJbI0P4JeGx0vqnMpBmcByOcGJj7NIj8m1FZ5+wFNvbvpAj39XNKZ1B0w2C+8u9Hl9URyIGZIF0dudzplJhEDgWJ8cJEQjcWm9izKWgz47XZGhQ9INa8AU5ccNSxbAl66ylvyXsBjATlQo7qpqUSw004JvE4rliH1YBVx7CcIDwTCK/OhQIYyrcqyRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=DAHhxsM8Q/ALPbyLxb7i6foRQou6xwIRLv3W9OuCs2U=; b=t6AgVJksdGzXggoRKmamnPPdAjsqMD/cb8mfpBIBul9WV2aEBG573GN7DFDn9Qzz7J748+tIfQ68taXnJVBXOCU1568GMEBDWuJ5342w1hRDtzaSuP8QD1kPjQ+e6+MtKnzljJb5yBKUEcYObhel6O1IAfExoeCor1AFRnG7HqjRcJ4VoeNg32JdgfFEuCtDrf3HN6vKqyCh2Ipoz8hTPNyrPU29e2EoeO+eEylwHvCoU6gjmR7NNTk+kfUgha9l6kF5/blHdJXbGNi+2JcNtu0T6cPnjyT32QpFRiw1czTs4VM+gllpSDWI09Iyog0PoK12BLdZJxzEC5WIAjDmcA== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:28 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:27 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 03/13] gas: sframe: ignore .cfi_offset for RA selectively Date: Mon, 1 Dec 2025 23:34:04 -0800 Message-ID: <20251202073414.200246-4-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0066.namprd03.prod.outlook.com (2603:10b6:303:b6::11) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b57550d-d2ea-4510-0640-08de3175396d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: SWgp0qPkijumktlepbe9CKThLGjxx3Q0CiFbEk2eseyxdj0R9Ym3iFByKIjvana1/7y0f3XbnDbq3flM4/aQrQ8/vWtAhuOrVyLe0x02vHP/kwQFlj5PTCRKHy4p9LefqGmP+/09v56woiYJAxGqcj1lecC/Cw+Aj0joq2O8PpM3YwBmbjWdeNGY6NpRHb9ttWlhXjOeP8vXex62gAUXBiA3Wo3bXmnH1Jl/jD7yEK7nJZjCFjHeybHecqJ1U18Yf8uY+DkuZ4F3VO68s8Cj+knsSb//3Tkx5gK+xzCwFa2+nPYBpS38kKRYYbScjmfxwUXFLKGTdzRLTfooa2NyS265oam+LWqUoYKj0i5nmnvSrHK5cdRjvDv9Pe+39CZTvUWSEnLDzSL+haKK1irr2uiOQaWbyiwmP0HH/5x9sEUbx0RuFOg3Tui3yBnBhxGPG1svd6EgOIsq4H+wusYRd94teVTUhip8KyFXF+YzkvSjbHa4pYcgEizhCR/sot7sUrp9CDNx/NPIL7WcSYC38/Er3KL24b7Wf78UZtHnZbRm6jxfjxw+QAG+w7d12PmuxUmq1cIH4HFHYJGzgMHIuBRV5uIk6cTcqkCka3GWFYXzyhypJ3iIJ/dzrUzhhBc65RFJMDeZjRqd8oKRPkB8/ofiqLdabs+x0QSMcpksUyI32R8an9gHd6CABCBzZ3iP/wHk3M5oBfDya59gPehEN1zKmaEyTTahKk0wT3sHmTnemmbxzNYiSNEsgAZtTdh/JodtDCbWhtlpbpVOytSHpm97E47apSrAMbh0fCNbkcGno//H7hL5QU1THvF4NATI+1g5ZVy6zbL7/KrAUoT/+eLwVx0UcpRBy1LLBuFjiY5JxqZzcQapEEaotdUTm83iP3j5zQccZcIhhNgX7bWmV/eZTwVhT964YjsISEO4t2Myi1X+GoY2WfM1NP6so/c5QN/aqc3tKmxdRzJDO2bAq8VTR3JD8Nhx8q42kSlQcOjzshPngdGm5vN+BIc9vo9QI9sYGybH/SKl+CY22GmRPx3bjEOfBa+AdfbSAyC+H1oUkiSrr+iq6bvVh6hd8oy3vpj36o0FmGmd4Qm2VYEmCsRgujNnP0S23QXKhTOXzaayb6QT5Rq9nrIVInoJUuKvSkCdAqWzyD9ms8t8upVhtF2PqFsAUEhDoLJvhARe8CodXjX5lTlaDsKhQRWn9HpBXxm3j6zQiIs4MdpFJZqII3yFg1aWxEqTixaGeOCN+qhdfk2G5X85IQW4XIHvrj6i53Hc13r/j6WfrX2+9u2U/tg9IyaHAV4zBWmdErJHR2m+JjvTy0wYqrMqI6tEnm8qlWNLI1x/T+qtTDYuoySznLTlI+zvBsfGts/H0BElD73ZLNkV+3jcRJC1PoTg6BFyFDGHAYpKjX7UfGTKzX9iQNb+HA2D+pvARApLuBx4ex/9rEueT3AZ63oEXHM28J7w X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: /9Kt2JaI5vDPS0I4KdYHJV6uoFtA/r0jNMF6S7k3BqT44lp1z81BLkrWoGXF9q/2EbtwMvXwqiVn5yifVWZbub78cAn/GtWM7Sy6Q0XKWYOFuKHQjgCJtSmEYDRI7Kdp8P+Q43fNn2RVIopreVTTpfbUiZSIbLX9i8xNqrX/4XkLi3329kkOsozvdp8KxztTDHctb6rsgAouA/9BLwknDULF2pYGYiXXIMLy6xAmJV0+6Gj8wtX7LOEE35TuSrXi44Lp0nkWa5PrXP5QgvDi7pDF7TBZxPo6PR3MFsz7buxnDUmJdIO4RREcscvIzgm6jBWVHFTSpY7j+f4jUHXwdjwZ4okgf9sAc/3x3Vm6EeeEV/BE4xGdx+WbYLfp6Jli4AWKBkC/KY7fdoPIkQ1nXj5YcirSMD2H2Wfi1MGhTj+FZCS3zzO65o99BH5Y36CZ2qUX47dpTQuRlSwjylnpCVhrQbRF+6jgiHlSpJhQLDqMETik1yppsg1Ru5fJsQnQPK8iA9E5xFNBQJrVikfoE/Tr8to/QgqzLpRzywX72xcmsAM7PBqn9TQkpoYl+sAVIF75VgY2tGNAq3vwDfDZG6G3ZWt7J5rAtu/ks/zQrXiASqEpggAVFQNeQw2b3UsahZM3K66mA1hlxVtOUYvwzxvGMho01A7lts6mRILPtIN3mJj5NtqmnMJgQAqxCTRZbOZNpXXXk9o964WdLFz/8pgaroynXj3FgUClc/iyJzK8wPWdtI+tM34x46TuRWBSRB0DV3SW9Kfcfp521j+KqEVDZVYcWeSA3/d7iOOAcpXgjtqD0YFUiGeHm9XYS5ykaHq3F3WXuBkxBrwwK1kb7NcKHBHdHz3UqHcNIXbNIm8MDE8nldtlwZjydQcb9v58H1Jazu6Cwgub0T0OB6HdiZH2JNiT1Z9qqoIXimDlxsjJZjoUBJ3DQ3HgXnX3WJb3Hci1ASekCHWWs1gmJqGA38Xh3UQ477ENd7Xwb8mUAH95b5MANoHgB0iYfo2Lqk7tSyHq6x607xg5Tg9TUWJcjBQK8sZ35WTs3fNJXA6V+7zvq8bgI4K0Gwy4oQFYFN53zasfF3Ya9InRR5rqv5/ETPocDwJI6GLzhYTGoQA4kACzw9Ok2AFTPNrXMiIHr2tl+mLhx0Gl/AH8fytugJPnggMgyBimTTaUwH2mT45xLreNCZKHSf+JVv7jtT/fNrbHEUN8GO0CP++TlOOILH/sNs0/StJUeGiJa9kR81PIT6MDNh2pVqnqz5lsj38V9gvgRTeEyZ0ceP3ahuuGSfrPwNOGQLgTx/NLlrJQCbIiRSuB+4Y7dB/ITgPRt1uC0xuPdLTM2eVW86H752fq0kHM5XwSP0jfTaewBtK1btFglxR32SCIspnoQtnhVALl63Nm56b/CfY54zrktfAIorBkEgawZ5u6ZVvcN5sU9BjysB8M63JkSrvyBTB7G0VneU2VX4Z0slkB0zOMuZCk/pumDs4fagAnX1QJn1NBN+fQ7JhBa4bt7r8bPTwgeGh2l+pWIGSCSWlVO46+n0kf6I50LVOfBs+J0tOlkS3ie8PdRlRe6rZ76i2FWYw4krI/c+4alt4Dg5EsOrrywD94+ZhqFR+uQId7ePd8ygckcsKQUDc= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: DS0Vi1Yp5I8pfRQXNlFhE7azjRAXnTNQP/WZ1TOZ8pkDBXiCaepIOAgI5CT6UJAE/FPwFIfsefEK5/y1ilfyhQBUWbio5My51WejDMhh5pSUSgBcP5m/dVFZOizYuUjw4/zgvkCDfIWlzkDdQ4dxw3dR3BUXadnzeKT7P1rhY46SFT7OKGpw6xgrah0kRM7CYBHQVpeWRkDQzzEpblSds9YGiwohJ91kdFWiNnCgiuEyG5MMtz5PUfE0ecFevLFRAgGwR9kgbqOK6vvsiD1eDdhHrWQqy5XnSi+r4VzGnBZMWjzsull90yTgAo9J9mk31y3MVrglnDUNPyy90Y8hvQ6r6wjgEs39jLr3kJoDvvIMwznb/riVi8ce3FalqAzpWCJh+90EvvP5TLFO0AKf13aFNoF07hOnrZjjHeUdbYoMK0YwNwq2RYYJ6RC+Nr/JQJq1usrhU1bmLXHx/bIoCgriyGG+QW3IFdZBYxqOHCsxfnNSuX1J13Toub9eyb8y45U47Nbj1nB0FLaS+QZZElBPTdRpAe8n9glo0Yvr7anmMhwGgl4TBeyj+Wcs2NEIAYWyea8jtkAhOvGTtfxBfjz3qbSP+tJg8bSWJdoYrj4= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3b57550d-d2ea-4510-0640-08de3175396d X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:27.9372 (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: HpCXGrgVobrhB29UdZBO43IO65/aW1NKP5mmckyO8gQbJiBYYf2xgePXh+FfAi9Kt1gTfy4z7Ehr/i/F16ey1g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 phishscore=0 suspectscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfX3jQPVEV80Jkc DxeZxyw/+u1AVgGg1fdksrLQ+N0Bg4nFoSs4fp1N3DJ/3eBEMo1m/lBIaHbH6ATCBrxTshwyUSY feRZTLWFaVTrFk+HOEAoiTpivujDtU/nqT/LiRtzqbzVbnVpP8+H0aXrb7OCHgBPD/E1rJ3EfQM tjIV55LYzR6VDx3m7G+skb+RHXOAI+Cu5YjT6vrbg0m0qoaaP85UKyYD+FhARJoGJFlxByYzP/s yw/50S4rUXBZX/eYZnLiYX1ZwngRSQOkXzG2gFjxhPn2y1EP3wlCFm/GBxS5vMTJlRA1JDgFplz Un6QnAOHbTS6L3cSFD9q5H2dOob0khhfWbjUpLFOQNkR68EM+3k6LUMGXRXWzK4P/8dhpAiTjmM 4AucuPxFU1b6AosZDD8+NwWzvWn1LANGDRXs5lzVQj0HJ1AKlIo= X-Authority-Analysis: v=2.4 cv=fqjRpV4f c=1 sm=1 tr=0 ts=692e9689 b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=iHlBgp9X5xcHgIPW4REA:9 cc=ntf awl=host:13642 X-Proofpoint-GUID: Pn762IMbZesUkMezQvaKRRvzF0SIybpg X-Proofpoint-ORIG-GUID: Pn762IMbZesUkMezQvaKRRvzF0SIybpg X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org For ABIs not tracking RA (e.g., AMD64), the return address is expected to be in a specific location (usually a fixed offset from CFA on stack). Explicit manourvering to a different offset may be non-representable in SFrame, and should not be simply ignored. Although such patterns are not usually seen in the wild, it is more correct to catch them if at all they manifest. gas/ * gen-sframe.c (sframe_xlate_do_offset): Do not ignore .cfi_offset for RA all the time. --- gas/gen-sframe.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c index eead58b00f6..f39b4f495b4 100644 --- a/gas/gen-sframe.c +++ b/gas/gen-sframe.c @@ -1179,8 +1179,19 @@ sframe_xlate_do_offset (struct sframe_xlate_ctx *xlate_ctx, being interpreted. This FRE eventually gets linked in into the list of FREs for the specific function. */ struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre; - gas_assert (cur_fre); + + /* For ABIs not tracking RA, the return address is expected to be in a + specific location. Explicit manourvering to a different offset (than the + default offset) is non-representable in SFrame. */ + if (!sframe_ra_tracking_p () && cfi_insn->u.ri.reg == SFRAME_CFA_RA_REG + && cfi_insn->u.ri.offset != sframe_cfa_ra_offset ()) + { + as_warn (_("no SFrame FDE emitted; %s register %u in .cfi_offset"), + sframe_register_name (cfi_insn->u.ri.reg), cfi_insn->u.ri.reg); + return SFRAME_XLATE_ERR_NOTREPRESENTED; /* Not represented. */ + } + /* Change the rule for the register indicated by the register number to be the specified offset. */ /* Ignore SP reg, as it can be recovered from the CFA tracking info. */ From patchwork Tue Dec 2 07:34:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125728 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id D47DB4BB3BC8 for ; Tue, 2 Dec 2025 07:35:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D47DB4BB3BC8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764660914; bh=bzHF32RadlOMi7SfaadCI5F63NfkRDJqPzVJACKWyGA=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=QDoEqBmkQMPI3gg46XhsYnoIMCXBj2Ye9d2HiGTRzAJw0w51bi8+zQmIVyGK5/EmJ t0uJa8EJVWwEcwZQiBhSoaYG52uy5m9Qq800+AGNEFCZEA03shjLpSPmFH/r9TV8HA Q8ieI1/7sJmvm9yrt41KzjbOApLn1Cw5sSX3sEnw= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 3A9F54BB5883 for ; Tue, 2 Dec 2025 07:34:35 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3A9F54BB5883 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 3A9F54BB5883 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660875; cv=pass; b=QF8IOed8cX7/E4VAsw8p+CUsfPRKW/O26S5LPbTa5K8GeJHVCOkKDHRc14SihUlmmRZXTfeqDasPxKTl3pc25IlCNUHyErMbQSsPbxvVrwct3Fi+y7FOdPb0S55S1ughwUhf+VMYYRkbbfBs9xvuLvMybyQgvDGgSO7TrhxWzA8= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660875; c=relaxed/simple; bh=Fc1018Fq9PxlzWOj/MlZoxIw9Mu5yxBk+46LwWOs06o=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=ivGLh20s7TVPfs+YZX1qUENaAzRpOLkmaPrHQCll8HhIJA9qu05JSoIQ7WTeg0CILzw7JSx5aq0DmwJfrqWcvqzpRMDtxj0Hej9CPgBfGUvhUaMNoAtUwB4FrwkTDl0iCQGcIWJMNLtF+sQROHjEfMuSZypBiB/J8TM71jDDwjA= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3A9F54BB5883 Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NKeY3294435 for ; Tue, 2 Dec 2025 07:34:34 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as7cp29w2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:34 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B260LLw035406 for ; Tue, 2 Dec 2025 07:34:32 GMT Received: from sa9pr02cu001.outbound.protection.outlook.com (mail-southcentralusazon11013018.outbound.protection.outlook.com [40.93.196.18]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq9k1qs6-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=B6uFXuWoYOULcdb5gPSovwlmaWkcqRkLNMJfdWozidj3G757Blg/f5Z4KOuOWZVNnL2nJb6P2ZwKEfX9oQm/euxLrQ+91xyJXnbghieN4HZRUDYdWJlJx202ISP/1mWLzhThr+snwFNNYGFA0FCWjZl37z1Ic4OpfR+TV/2vyXN/rOJ0w0D+R6VBZ8eDIMk6vven8y/QRoAaQ5a2EuUcSpCMBuDLYpuI58h1tqT23THmbbolwdWACREmMWbWB4qv+emHigFa83vPk/SaO0GZgzLEMXbuZcnTSbJLzNIVcTGz0N0SqXTtsS8WVYC/6AAVhrVF1BJaEogJRSXlXW0Tiw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=bzHF32RadlOMi7SfaadCI5F63NfkRDJqPzVJACKWyGA=; b=uD7X7H55T9KHnLIJI09oqJnqpMh5qX6i7dJUXDUd5PIm+DwLXzDJI1WUn03Es7LpQUB8urWK97uHz3sAMO2OncOZXLjLiKrC0wQt3r9j+e+SSPL9UFKLKUXpIQwhrqVppO0BSqJpZpBWAWvIZ92jSZI45i4r+PUfCzLAn3wAEDxW3A8dxKAlmUSmgtSZfFRUxwV50t6knJY7N3wJ3PJzdFZDc/Ii5By2JnHqStsSRcv+leu4vq+x+BUa1wFAXqjH2wBDRgU0PWHdRk1f6x+8d1lmgKy7cBF0z3TS5bqTSSHxsG1Yyjn6QIIM/ogbwGD8zq2nEQKHQDROP8sZw/ygYQ== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:30 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:30 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 04/13] include: gas: bfd: sframe: clean the abstraction Date: Mon, 1 Dec 2025 23:34:05 -0800 Message-ID: <20251202073414.200246-5-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0232.namprd03.prod.outlook.com (2603:10b6:303:b9::27) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: c413eca7-30c5-4a1c-8fc7-08de31753b08 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: nvHZVyHuw+lr5Cw7jFW6BEa3jUslzSB6FpwWbJ2CwgYDZtXH3DOQa1Zvzju9ePDQY327i/B3UUyp25d3u36P26Y48QucEAl3zYjbJtN4/E9bV+MOKp+zqtwrTVy81EMBVwQq5wcx9RA6if4V8Mci2J034tk99HjIlRxoBliQTjrisE3TC12H2goivtkoC9nwlRR+C1kylO0roOZFaUJ78Xi7nPCiPe1h93O1XMVu1lAdEmBaQC/5JH6iK17hPZvvtVnND/7wdvOzKcC0nsAk8gweqnuUGqwvjbJfl9OcI76dXUNE+HkLOmgBCELPyybpMl9NHrlG8UHmNYmPNazb4ZwJULdRrCW3rVaPqJ3MaBcWQEh9QFGcuN/Re1MmHCNzTQOFo11B4b0gw/rPBaqFQFkzGG/oOSIHQmKyA4psgHXT1qjKW8TxXHOtOWCZ2RR1L8/EXNYoCGT2+kgmMOSidC6SEnX12Efud3caV/tyz8Irb1/wnhX6xO6ECdkYTsK9OEbrhVVYnYzQeg+/3InpofNgssFO+M5SQpH+p+npO0KFTFdEycrL+EpcXhgkCB2/yiHLMDhzBLqEOi/pYHpR9VS69tlvkJMyfzA85Z5UmK2RIgfOH/VLdCO6GsY84UbMmEOxsImP6x+7ouVU1hC5Syjf8+ZxHXmKzi9GFyCD+zXx3xtVLvSgyfiM1u0UFVfZSbRXkXp+zQj3DcZbFI3VUxztve8Sa3qWtnB+lmgrHp2VDmiH3xCfjCRqvVYmMQaiVZ+WAd6BFefiCLNuywezXAL5M0LcKwoKTEVOs+gwUJHfyY/6kkscx0N+xQYvkULv5swCJ8pl8iyIQf8QkN62zDiPDalf+MtdI3bkaV4VKCMBb8trSX6QYUlMYx+X6QxCTVneMF7CYKlNqcmrtzaX4Y+oG6ExLxw946j6el9s3cH0Cf1pm5volt6eEhogAmxFxLLggN7CSWqbqr30mHxDyJ+TI63oTJ+IKJor3c5pSLm1NzHeaRxBCgJdBSkYQW4SfTHIiX7QuIKAtJBCtYEum88lWW7mTtLcHcvHBz2SzwAwhEZfStdrTlCmRtd/5M99z6eMqwD0uxSWfdQCuIQRU8kV3FBAB2B/0fZgvLcbvpepCkUR0xLVpLYgvlhZROJUJE8gktEAmZSuRzaAYxwviHvyLPynaDWOyuimSPaPHfUc2E23zpgbp2d0AWljgJ0Fqxs5ZOGbRgY8Ypx/E43bp9G75ROZNucaj+Ut0N65ss4dO6OrxvIvebJpDJtoAtxPXYgW6fwazBqqolgUt3Tao/GC0GFYV/iZJ7G1NJx7ZsKRCMnZY4cHgqOUcdniR6gGwNuTgSHftIRs+oJg8BXZ+4iqRfQex1mu6qY7q4YHUrpGAVR3lzArllhft4cOxIOS8sUSLXrfW2Ba700WN1N3NbmJtyKRpoqh47mjUuHxYFDJ+1RQDqoL5UfQReiKbDta X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: W2l8qGtSfsNhiNbpbBtfDRUeiuvoIb0qiuYarimSEzH86OHNSOsX4Gkjj0xqEjuxprv+q0orIt/si4xliQsNaC+h0X7OVj75GhjSMBFXuVYCOXUkE2TvM88VwGOO6awHGzXAzhxc79wFnNA5Dg6O/CRJ/E9PQ78T+UbK25APvGchBegwiVHAKHdPvLbwyUiIhf46CrifJ/ggi7qgLUMJBFGVOXkY4SSyu6pxW2CdZutBNrGKrNEGxBettb7iaTvt1IWpF1Ipb5knG4aFUiDypqW7xAAcImIC/riPP/4DOa2QOsiT4FLuQ1+WvdWURzLkQjDNrUl4ZCFP9YQcGj41ge2yXKHOO2zzdmD80ScoEChpr88vD+RAFxC22+qmiQatR/jKpvBuC0BARTHjNI0xkg/2Vt5Jvv/eT3xf7ESDVMpF72BO1kxcayTEMt3GWlTL2gJRi69zM+wWq2gRFKHm4EknAvTeOL/C6dCbaIhJhLpgxMi9XZmwZvWBQnhNCIItByu2cQAUMXOfL3hZvJS3w8bYt3ouegXL6Rl/H6/lV4VJub992N+jDyzm2w8WZdfDxWOfO22hzkb1Wj6quWLY0/++9l1XPobgCLZA3ztmQegoBtWJOir7HycPT+ibmENgCnxaL/T6d2Vnza9PSgdqc/7qHYJg/29DptpFC81wHe93qDn5MBZGUfHDGWp7+DVQSIK8d2trLKdO67cr6asXwrNU7c0T460Rmn+jG1XicZTijsw/3TKp6yo07SUWNlkEQ+LbBcVrbX3s5QFCJEyUldBn0wcXTUJbKUW2AfFLCew/jB8iX8Wb+gIcaBXNfQgrtuH10AyPKwzP2ZrN0MJnfi/oD0XJPFM1f43EZqKt0teqb1B69M+jJc/2/BcUgQwAeKO2MJBIHPQw3wxGvL8ohfcDFA/CRZ0JWy1XP7/q7/P0uH6EXQCaHt1vm67t8+BEnCNfd+iVqJ2qs01VBK5t9qCZP0T7CjW0S1vlkxx9dzofzXk+IuaEbB/6/voRgXonh/YAr79e67rQ1ZQ8Ap9LfxEzxeWkVRaj05byKzfx1fS9ATeqBk22gRtkwLZuvBptxKQoLx/oXfmrl/pP1iq6yfLVekEiJQFLvEBKJyzl3LfQR3hpaOJ26MZZQgMli/ZtmOx3Gp+FZ/n2I3XaVahb0DTFKLDK9WXtq2FoS8+KspIPPgqYBB5DpwUkNK4Qgv22TTSqIJ7AQPNzqRNQHtrVuRspBItRfR0g/o41HmsLQXdTQqXofZzsvw3BBZ6amkc9D1Yyh/RuTpXZGKlR3c/w97sPYXf23RxSs2zT2ndB9XS75Jw/CDir7NvH911pyv/Y/vYYC8MW8z01NtDQwnxcwlB7V+NvlicFBI6fObrPpcM6Y6tiZsZoKjgkJYqrEHoMGoiYoMBwcENo6a/xmTpqrjHkGirP+ryw2uLbbi0dPKJEnpM8H9vO0iR4vCcdH5xHLdUBEP4/LiHJ1RyNEcobz1HBEq5eKsNVDxtjf7GqG63nIBAlJ7rSmPnGG3Zw8NA7nWapU59XO2Ny0wkjbrhwbU1t45bk7wBeumpTsyXLqNWFppAVxdCmAWfoMCD/NN0Hx148vUDWN5/i4aVswAAUpIkTJeI3IIKWXiFYTq3ATKk= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wJvYlQFDIId9mCiEA8kvVszAthd58EGhfSZ4wEF/d3H2aRrvuJZNnOIO8oh+NSK6hLnlRPfR9+DVsKsJ3ftyYMFjMj2Df64BWLS1A+PB1vnOTTEjQHIDgZ/3I9HFwTdXczVxqCwEm4WicoUsUXa4Ebu7co2IpWCRE5DM8b3vwOxj/dGRsTZ7mERuZhQ93Cslq3uyN1LPssGteDop5Iuxsh7yZQdB3Cs5nfFd97o+AZsQEZxztRO4x6/v3f0BgGleNFct2tOkpmchiM4JvJ97aZPXB7EzoitdffaUgjZVJWP8CiQUsr8XbYw2KWPUw+KDZnHeTeLWumXLb2RfQ5x1KvmYn3H8HOJlHIeRPM3zRAf9O9doswdRsCdSfxgwNaJds88EQWsk5/GqFrrNQKKX7U2XwZrR5eqIcROdtgq8g39BOSPUnJowRRDTZv7uzLQuzXofvsbdo2OExd3avug6ituexAVPJ7gu2/0EVqhejefMZDNniSJjbFbdIUws6OYhe/67IxgJtrw2Ln0N++vMTF4kAVkOMrEGugwTx+zyw3yioq4FC5ZEvaEY2m15nZyyIIkJoBpYIy8Hp+MKa7QrsXJPMwanElr19eJKTmnePTI= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c413eca7-30c5-4a1c-8fc7-08de31753b08 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:30.5660 (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: umwTdcgZeaKDqID0N7Z9F9hhELVy3wC35c2udmJZ/iXhNTUtySwohWsrixerSOHt6ZVBZ+ghP1OVseOyDUS3KQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=860 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 phishscore=0 suspectscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Authority-Analysis: v=2.4 cv=ZfgQ98VA c=1 sm=1 tr=0 ts=692e968a b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=ha5YO-LhmGgHhED_EPEA:9 cc=ntf awl=host:13642 X-Proofpoint-ORIG-GUID: CBXpW2S8bkV35DKuLPVjcqG6C0yOCyvl X-Proofpoint-GUID: CBXpW2S8bkV35DKuLPVjcqG6C0yOCyvl X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfX+/XhUqwMuAM3 XF6z2EBTIiUrFdrepdot228HUO3V9NLE/4k24wYPY21xCwiYn3PFc5POK5D4iu5uHmt93szhqbz +H4KR1+yGEmB2fJOiO0wLpqmd+AfFkbberuA49vFWT3MzeP10gud2vuHVIs98nQyjPEiyiS6y84 8MkPHQJisLCOtrTq22u/NtVPRXvzlnFSn4tYcLfZDbfCm04+qH764v0KangN6keJI8Ilv7Jmoic f6sIMt0KPr4xgBZgrbuwMYdvypiz9eNmj7QD9ZduE4R1ktrfSi04wqHx6RtoQckPCoDYpwGlr16 ZSWDMbU+Do6U9wcPZYCwU/TFr2/47GRHASNMTagS9qgKQGsdqZjxstV956x8h15epU4YxfzjCgn xqFi5Z0MQuqC/FdnMS1zL/c3kY614tJ/JoWI12y96UIO2AWTOwg= X-Spam-Status: No, score=-12.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org ... between specification and implmentation. Move to definition in the implementation (gas/ld/libsframe) and not the specification (include/sframe.h). At this time the implementation in gas and ld generate the sections in the latest SFrame version only. bfd/ * elf-sframe.c: Add definition here. gas/ * gen-sframe.c: Likewise. libsframe/ * sframe.c: Likewise. include/ * sframe.h: Remove the definition. --- bfd/elf-sframe.c | 2 ++ gas/gen-sframe.c | 3 +++ include/sframe.h | 2 -- libsframe/sframe.c | 2 ++ 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/bfd/elf-sframe.c b/bfd/elf-sframe.c index 8e4cfdd73d3..37ad0b5b6e8 100644 --- a/bfd/elf-sframe.c +++ b/bfd/elf-sframe.c @@ -25,6 +25,8 @@ #include "sframe-api.h" #include "sframe-internal.h" +typedef sframe_func_desc_entry_v2 sframe_func_desc_entry; + /* Return TRUE if the function has been marked for deletion during the linking process. */ diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c index f39b4f495b4..a845c20a54e 100644 --- a/gas/gen-sframe.c +++ b/gas/gen-sframe.c @@ -54,6 +54,9 @@ # define SFRAME_FRE_TYPE_SELECTION_OPT 1 #endif +/* gas emits SFrame Version 2 only at this time. */ +typedef sframe_func_desc_entry_v2 sframe_func_desc_entry; + /* List of SFrame FDE entries. */ static struct sframe_func_entry *all_sframe_fdes = NULL; diff --git a/include/sframe.h b/include/sframe.h index 44000413dce..d2a3c8390bf 100644 --- a/include/sframe.h +++ b/include/sframe.h @@ -212,8 +212,6 @@ typedef struct sframe_func_desc_entry_v2 uint16_t sfde_func_padding2; } ATTRIBUTE_PACKED sframe_func_desc_entry_v2; -typedef sframe_func_desc_entry_v2 sframe_func_desc_entry; - /* Macros to compose and decompose function info in FDE. */ /* Note: Set PAC auth key to SFRAME_AARCH64_PAUTH_KEY_A by default. */ diff --git a/libsframe/sframe.c b/libsframe/sframe.c index 0dcc782b1f6..66810f93f35 100644 --- a/libsframe/sframe.c +++ b/libsframe/sframe.c @@ -26,6 +26,8 @@ #include "sframe-impl.h" #include "swap.h" +typedef sframe_func_desc_entry_v2 sframe_func_desc_entry; + struct sf_fde_tbl { unsigned int count; From patchwork Tue Dec 2 07:34:06 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125732 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 33B044D108CB for ; Tue, 2 Dec 2025 07:36:44 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 33B044D108CB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764661004; bh=zmW2jbLTflbXseZ9JXMB/u5ucAuGKyCDYiGPs3KH/7M=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=q+dOnw424yrtPlT+PSTL2ojCzbjOWBLcyFx9xQ6qE697ubznzlK9cpuZA/5L3wbWP mGX4zNLhjjn47tXbIlPu+DL4G9BaylJPmSZg/uNZa8NxbuWD8zxj2JCZtN3wxqZPGe JM/FuOcPfVBuD7JhNmWaDZSsZfy1pbH/jezXy5IM= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 36BC44BB3BCB for ; Tue, 2 Dec 2025 07:34:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 36BC44BB3BCB ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 36BC44BB3BCB ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660878; cv=pass; b=j47EuNHr9XOkFCyx4o1sUzGMp4bqXtgqakzSp+OXpSMLpx8QQUddfFQclWIFfvH2O9JwLvldtGIjWrYa0KGZjQqWpPt5fxIVZ8eLpoMB2Zdk/+6kkEE7dZOk4S89cOZG0W3A51LSLWa+ulv0c+Gl37o1u6OQcDFegOTdT0QGfqA= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660878; c=relaxed/simple; bh=Rd+Edk9ehK7h/ijbg9juYeKUlQKszDQ5GysJfLacC9g=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=nK7DXXzN6kKiXxttvpoiRMgWNmTesPoan+/4oFdXM1XQ/8w8kgFTcI7FuoI5rLRYZAFNDuL8Ffz/qyvz8sXY9uvnj4LwDzGdYFtss1LrV8Ot9LMT9MH580StLsThJKS1jMXIVArd3cc7sMXSLJvCjiuwHPsnQFo7k4LcQRIe3E8= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 36BC44BB3BCB Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NGtf3288204 for ; Tue, 2 Dec 2025 07:34:37 GMT Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as7f22a7m-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:36 +0000 (GMT) Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B260Poh015045 for ; Tue, 2 Dec 2025 07:34:36 GMT Received: from bl2pr02cu003.outbound.protection.outlook.com (mail-eastusazon11011006.outbound.protection.outlook.com [52.101.52.6]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq991awg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:36 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=eF0kSPOTcWLUPA1eT/yUaxvqIpZcNp0/F0gKSDJPdFAWXtzjP44q/Ew4Y2SFB6kOL/3PUF7QhO7McdXk5nPtvUEL2N3tcbG021ry1h3SeFutmAz3jVq3Q/IqsqQFsA74Y4lsttusa08tJn+ic+YmslhJQRI65Htz1qKgIH4W+LHM5se2J131bWUUwPkFGWiBCW9GUPw5LbeGKNqI0bKUs637mIElQDXyTEbNvpm45TF1T9uOlstzg43DO8HC0EXIMq4dxgd05rTOHv9dNH8cXovUhOdkhdlMvmSmC42d3RVHTmVs28KEQ16yF1Fv0FFQAJQlG+BvFPO6PnTZ0SfQqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=zmW2jbLTflbXseZ9JXMB/u5ucAuGKyCDYiGPs3KH/7M=; b=kRKqEFn5TfKeTuQasTuF+Ioh9Wv9hQbvjzf+TZt0Faf3MsU0FpbQvN58Xp7i1oUo7SR/7pc/XAyAfJWj+et58DooUhRSkgwCWdo7ZrVyeXVAg0jq11/CbLW4eukAZTF5xTZLLh7D/vlTPzpHcQu7mV9IG0xfOPFydLx297LKK00taQ+p4LDJm9EjbwmtlgxuHU9AuaCIcw0l+1bR4L7ihjqVDEeoSO5srgFNxFs5EjolTodY2yt7lblpHaEf+uXXd+Tx1dRoTTX7xEKfwPJBy+/iEomkpkv+S1oR/tcrFm730ccwf8ryD1WPQZO21JgKuxMUq3h39cDi2EGWlMcpdw== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:33 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:33 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 05/13] libsframe: implement an internal-only SFrame FDE representation Date: Mon, 1 Dec 2025 23:34:06 -0800 Message-ID: <20251202073414.200246-6-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0038.namprd03.prod.outlook.com (2603:10b6:303:8e::13) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: 7c891997-92f5-4d33-538b-08de31753cb1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: iOX/QpPXpUiu1RO0NH+tAYO6a1PSAeS4yn3DjuYj9O+F1g6j6HFQox6a59vmn4uNsHurDDqoGbQR/3zdZtkzEyp1/51OfKLKh0VKrrGETPPrDiVwOnPdZnxCY0nThVyJsR/FlXKIVrnZg8y0up1S5m2meqL8dPDyf9feTAIRqFxpaewG5MeR386wlGME7b8Dg6/Jtp4FRS3rfQSnN97Y7Ri5QK3bBbvAiCbEoKCUZ0XKXfpMbcetlvkgeeQldBh/qW45BUof9LKfWptKli/fjxN25SDGtFqvt23TGXJpJbl5wIs7r2bu7tGBXydUTK2fjZ2lWTAxKPzA0FdnLanJtEWcOOc33hS3Q5OWwHQvF3Nmm7mLvAKWYXUtZwn8MCZFEvSlr/aRhb3QBWKLbB7b/1q7IayK5oKkdrx7OMHssDAtnRW/gaJ61EWfYgbKOBJcdA7EVWNG2noienCGetUkS7NB9qpNmGSNmSY7aK2VMcnrpn/NHnoIj7A1trBCMvuNiaIwakpl9oIZuG23jtGA8WCA/j6GgvAK4BI3ZexeoQmHJSV0kyBeQk+Wbs6qHFEn6cYe3brxmuCFWKX38uc0uAJfHifFAO53wiDS1MCZGmcJIQawsRQzda/6NXHLoc2xkZWGGeiMMFRieZjx7B/6jtLu9QX3y4XIp8mdvbaZbCKi1Hi8PhLD9x0zKHgNE1lG4qcgrU+uK/qqzo9kM8m2yZffz0qtc5onN9bAdRSsw8AOuwSUkAN3kgD0juPzcZFU/uY8TLLS9L7TykJQEaBUduLTx4o2PGVwIwlQzfnJMEGzIl1S7aZUW78u79LUYTXqOFZ3lUDvogGbEkP5aVoih/Qcmfi3hqUwUG0qiy0vZT0kXuInjI+EZpPOXUv1exMq35K4stpKqmXKAU1Cqbgb9UIr5Ltl9fN8ghs4eTFwk0FoHVhaGQ+EsGgYlVzekoYEt4ItcY6IuxDCsFiLEgmsde0XVMaQfbpOaBgjzkCnHze1np0cJTIoJCsIHwhC5TgB+Px0hZCJ0mv8AZ04odiYR1PPPWOhFoheho8zcnsurG692hdZ5gS3s3pLK1Zg98LF81Zi1Lf5sVm3f9bct9l4RUJMrD7rBJSNcuaiDcjY3MI1xFBZMn6vh5xtg25TjdXBsqzorEquE5s7H9sL1jolBZ3792Rb1sx9NZJktCWtjWUsRgNWq/2YdZ+z8yomq2Cihu2hARolaSaAQFYLcfzBZsAA6qZiC54GtSacwwtjhD5xf04yIFBYid19ikBRAjvfwHgWQ830FpoIcRKV/vHgX8lM9eGmu9+/3ehGpEWJCw9ANMxTE3UU5Vwkth2qPS3yMPG2TTGYyPD0b8n3VFKXztg1Bb5pwpv+Z8nhEHB2wht3E56ebndoxjstSBDFwPThcoqmfGbkKz3BZE3pLCmnv+pGfIIWjEizinVnby5UvK/jisDbyCVZ0U3zD3M58hWp X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: pzBIDHUzUVoO0z/6TLAAJJhw77VZd2GOpl2NX8z0X/4g6pcwKRmwzBJ5BDxZ+WzYs8WxlMZSI42XCenBZhR20tBU5z5JVEBkY7O8MdVRzRLJHKP2420Kp5cOeuaqEmMTZdAxi3sPnI94mrlydmY/v2dFsGHirgsWNU4OV2ywBGcywxxJbP74Coas64XL+5FUjWjPhaQNQ050ZEqh+1z1OEPA66cuPgPfb0wf7WUtpHvKf95FfLgJV2vHuBRJifRgHJ2etMwBdcV7IVXRgrFWNoKIcyVshBYFacaUHWXldHf4vKMXkPqShvVEMxP/D/Q/BZtOmMIi81qpwUPcXXSXLHi3Jsi24zKdt2K55ISWSECFfIR/h1p1y2S5gbr9BMKxr2jSpHQvVWDBCZSkQoVrrLZ0uVuw45aUd/IjpWFHMfEiP3pU8C1TOPf2deT4gQqsvgYB0YtzOSbz/hE43duW8E6OjdL/hkNdCnrUyS/4dPAM8uBrFDW1DwLplmi91uh8GAEruDEtXQynKNpeKoWPCTtgz77tJdjRkz8oVKbUnb0WxKv9ah7r5IwjZ3X34MOuc6Y1aVJem++aKt8eQ2f6dp0fNylPaIz1+mbDUsOjFey1IzX5st7ToMgIYUjxN7P9aa6/P368dUZoEKtLNY70aORFT1gSWk+W1lqwHEp3lr47Xitp1qcpjYMYjL1+RZ5qVioHkdQ+0zvHN3ycVzrndIGQPyAF61OR/9naWLZufQmB3LRX6Nl4xszKqwiLcZfn10ig5GWMoDSlUxRPrvGXaxJb2BhtpBTgfGKFrFNwHbYeVCs6byRP3NEVnJLQB/yGvDaDvUHxVkVFf4pusNDQdVcVWeMpvUX31F0wvVbio3e4+/0765rYzh7ZZJ/jA3W0J2eDVoDpGG2ELWMUSwwyb+o+xH239o6JY74gog6HRD0cA7tGjTmNmnl+nCHg+BsEGJWqTYxkW0LbfaPw8SHPz2GFm6H+EnmNAJIXtjdHd5Diofo7i9s3Y1BgFyKOIDcT8ByQhzoZiWYbhmVdcMPHwYUfjpsZq4a65TNMyswGCmD1NbBd2Lkq0qljjn4gWUfbpob/ZndZSS4q65yWMGTbnI2TcCsVOibbvL1RZzT5VQ8k76t+xTWPPfHI/qVDdoxGgxd0y6cLpRlcMMjiaNdavmJXV4PtKRddpkFxWfDSNrl2gJ51589R3x/7JSRQKDFzBeCW1EbpVaTnqQJg5wJzQ5cNGRnQTaKzeHSmU2L/7HHe5B/FiA7kftaeHqRU4S3qZo84YgGyRnQpTGq1Ka3FMMuojYRAZ+mv7hQN4Mt8HwZ4skbe9NkcgzGE1nrS7LDqJpxfYS15xXMpRtHXupOEo45dHLqEV32tj542TocGErk1ekATQbEG4EPmoZAw00FfInJ76kgzookr8wd8++sM4Jds2BQKkV8o8NJKWSLeegsLZqtcrrO1eCLJfJ2xOEJ77VHCubt8kT+1HNHrbgZSXqAib+Y/65Zu8TKph3HZJ6JUFRhdxWN+BA7ZijsjQfAcMq4KUBKSYYeAyYVGKbl61/hLUCYfl/3gWc1lFiwwiTvBWLISLRvaEy5O5kGp3+R7rQKesA7tQeV6oLOEQOUl+Q2+x+UH1QnGYJir5m6y8cQ= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: DZhJCuPOFEs3DIoNVIQaczJpERLnExRUxWr25PaZf4T1/Cfx1SuV+lW+89D8Pfr41c1X+Ben+dqUthzvP5gzwa26V4hHho2yYAar+SZbI2mrV4xw3Cgx4vIA7N1G+t4CzYhmeAHCItZh4Z0jLCoKIdCum/FRRiTbcojkmhcEM8J+/Y2eCpgQDGcuqMhSJIeWu0Aoal1k1E5O5LzcWKuJlY0yIdgTpe68eXAoRtvSNf8bc24Pqs0PQLSnX/go18d0Zsqugpewae2JEip2ittRPuS5qqRU7ts1YgYydaLpb3Qe/HRo4mpYu/EwGKvaocgcCoPdj3BNiRNs3rveZmKphhS5nJtgJMQlNwPaYHlvxJTSukNs+6Ox3wopR6TWPssnM0Dj7G+xqlMNYLiWmeol4RahIaApV4wF8xPWWo1as0n0CXqACuljTmP+HQlFbTalVFNzzn5cffcCxJYfn8XHamfH8/qefOPJ1ckYcPSF3l5pI+pWSeBYxAKba0A2YsxwONeWIpDg+rLVUzKEajusHRXc3HsN4lil/8ys537NfohRQW+DHSBrgTGw4hFpaoUXMTYfYA35UVzaUb9dBLsYiCVK8ML4OmB26ufST4YWzoQ= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7c891997-92f5-4d33-538b-08de31753cb1 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:33.3899 (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: v2dJ+nZYiCAGmTKiSrgnaqlBCZTsWU7fjO7ztO3reGmtL3ycLvG6UedY5zeutLGcndS2XJA6vIm40SJom/Nehg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 bulkscore=0 adultscore=0 mlxscore=0 suspectscore=0 phishscore=0 mlxlogscore=999 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Authority-Analysis: v=2.4 cv=QMplhwLL c=1 sm=1 tr=0 ts=692e968d b=1 cx=c_pps a=WeWmnZmh0fydH62SvGsd2A==:117 a=WeWmnZmh0fydH62SvGsd2A==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Nrxp9qeLMwvYmPhVcNAA:9 X-Proofpoint-ORIG-GUID: z01tJ4kfjtV71AeDLJWcA3sDlti2n0SA X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfX0glfGf0hMFPf jZE/k6wYsGka5XZdNLzIbEj++9pqFQHix1knjWhkXBIMYRE8tcxL4cLGOdjnsjPl3piZpNOI2Xu KGRdze1UdbTgQ6ftnm31O+wpth5/K1qQYsLCM17qAWBNLygQ9r5gtnHZASk0NPGV2cyGGoXZI/d dfY/O1Q5kC1aH7VZ1yw2d/TfJPQ/kAxQ3+7n+U3TdBkb3POvq5PHioQ7N5GdupN4KkR2XkN8iep R/10GF+3e7h1yft/OPf+j+rGqZeckuBp1W/yLjDL0TNVXH8VtAIILsXqyif5JOrKRyLc3G80DS0 mSvmsSVQtV4vaGmdsRd76D6OSjoMavNYTC2nnJfo6nG6K6pU+PF0pu2axVTjjwBBD9rAZ4iIkRw R9vUM0p9cOuLGmG0nZ5gzQbwiq8cmw== X-Proofpoint-GUID: z01tJ4kfjtV71AeDLJWcA3sDlti2n0SA X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Up until now, libsframe has used the same SFrame FDE representation as the on-disk representation (sframe_func_desc_entry). The choice made by the author of the libary, back when it was first contributed, perhaps sufficed the needs then. But looking forward, we need to be able to allow reading and dumping out of not just sections with version SFRAME_VERSION_2 but also future supported versions. Note that libsframe did not expose the SFrame FDE representation in any public APIs; doing so is not recommended. For the path forward, create an internal-only SFrame FDE representation (sframe_func_desc_entry_int). libsframe now keeps all in-memory FDEs of type sframe_func_desc_entry_int. Doing so means instead of memcpy, we need to resort to member-by-member mapping. This can be seen in sframe_fde_tbl_init (read time) and the new function sframe_encoder_write_fde (write time). Other than that, replace out the previous direct interaction with on-disk format when: - flipping SFrame contents before decoding them in sframe_decode. - flipping SFrame contents before writing them out in sframe_encode. --- libsframe/sframe.c | 209 +++++++++++++++++++++++++++------------------ 1 file changed, 125 insertions(+), 84 deletions(-) diff --git a/libsframe/sframe.c b/libsframe/sframe.c index 66810f93f35..8c4159e27b5 100644 --- a/libsframe/sframe.c +++ b/libsframe/sframe.c @@ -26,13 +26,22 @@ #include "sframe-impl.h" #include "swap.h" -typedef sframe_func_desc_entry_v2 sframe_func_desc_entry; +/* Representation of SFrame FDE internal to libsframe. */ +typedef struct sframe_func_desc_entry_int +{ + int64_t func_start_addr; + uint32_t func_size; + uint32_t func_start_fre_off; + uint32_t func_num_fres; + uint8_t func_info; + uint8_t func_rep_size; +} ATTRIBUTE_PACKED sframe_func_desc_entry_int; struct sf_fde_tbl { unsigned int count; unsigned int alloced; - sframe_func_desc_entry entry[1]; + sframe_func_desc_entry_int entry[1]; }; struct sf_fre_tbl @@ -106,13 +115,13 @@ sframe_ret_set_errno (int *errp, int error) } /* Allocate space for NUM_FDES number of SFrame FDEs of type - sframe_func_desc_entry. This is version-unaware because this pertains to - libsframe's internal in-memory representation of SFrame FDE. */ + sframe_func_desc_entry_int. This is version-unaware because this pertains + to libsframe's internal in-memory representation of SFrame FDE. */ static int sframe_fde_tbl_alloc (sf_fde_tbl **fde_tbl, unsigned int num_fdes) { - size_t fidx_size = num_fdes * sizeof (sframe_func_desc_entry); + size_t fidx_size = num_fdes * sizeof (sframe_func_desc_entry_int); size_t fd_tbl_sz = (sizeof (sf_fde_tbl) + fidx_size); *fde_tbl = malloc (fd_tbl_sz); @@ -130,12 +139,21 @@ static int sframe_fde_tbl_init (sf_fde_tbl *fde_tbl, const char *fde_buf, size_t *fidx_size, unsigned int num_fdes, uint8_t ver) { - /* sframe_func_desc_entry is the same type as the latest SFrame FDE V2 - definition (currently sframe_func_desc_entry_v2). */ + sframe_func_desc_entry_v2 *fdep = NULL; + if (ver == SFRAME_VERSION_2 && SFRAME_VERSION == SFRAME_VERSION_2) { - *fidx_size = num_fdes * sizeof (sframe_func_desc_entry_v2); - memcpy (fde_tbl->entry, fde_buf, *fidx_size); + *fidx_size = num_fdes * sizeof (sframe_func_desc_entry_int); + for (unsigned int i = 0; i < num_fdes; i++) + { + fdep = (sframe_func_desc_entry_v2 *)fde_buf + i; + fde_tbl->entry[i].func_start_addr = fdep->sfde_func_start_address; + fde_tbl->entry[i].func_size = fdep->sfde_func_size; + fde_tbl->entry[i].func_start_fre_off = fdep->sfde_func_start_fre_off; + fde_tbl->entry[i].func_num_fres = fdep->sfde_func_num_fres; + fde_tbl->entry[i].func_info = fdep->sfde_func_info; + fde_tbl->entry[i].func_rep_size = fdep->sfde_func_rep_size; + } fde_tbl->count = num_fdes; } /* If ver is not the latest, read buffer manually and upgrade from @@ -187,20 +205,20 @@ sframe_get_fre_ra_undefined_p (uint8_t fre_info) /* Access functions for info from function descriptor entry. */ static uint32_t -sframe_get_fre_type (sframe_func_desc_entry *fdep) +sframe_get_fre_type (sframe_func_desc_entry_int *fdep) { uint32_t fre_type = 0; if (fdep) - fre_type = SFRAME_V1_FUNC_FRE_TYPE (fdep->sfde_func_info); + fre_type = SFRAME_V1_FUNC_FRE_TYPE (fdep->func_info); return fre_type; } static uint32_t -sframe_get_fde_type (sframe_func_desc_entry *fdep) +sframe_get_fde_type (sframe_func_desc_entry_int *fdep) { uint32_t fde_type = 0; if (fdep) - fde_type = SFRAME_V1_FUNC_FDE_TYPE (fdep->sfde_func_info); + fde_type = SFRAME_V1_FUNC_FDE_TYPE (fdep->func_info); return fde_type; } @@ -436,11 +454,11 @@ sframe_fre_entry_size (sframe_frame_row_entry *frep, uint32_t fre_type) /* Get the function descriptor entry at index FUNC_IDX in the decoder context CTX. */ -static sframe_func_desc_entry * +static sframe_func_desc_entry_int * sframe_decoder_get_funcdesc_at_index (sframe_decoder_ctx *ctx, uint32_t func_idx) { - sframe_func_desc_entry *fdep; + sframe_func_desc_entry_int *fdep; uint32_t num_fdes; int err; @@ -473,8 +491,8 @@ sframe_decoder_get_secrel_func_start_addr (sframe_decoder_ctx *dctx, if (err) return 0; - const sframe_func_desc_entry *fdep = &dctx->sfd_funcdesc->entry[func_idx]; - int32_t func_start_addr = fdep->sfde_func_start_address; + const sframe_func_desc_entry_int *fdep = &dctx->sfd_funcdesc->entry[func_idx]; + int32_t func_start_addr = fdep->func_start_addr; return func_start_addr + offsetof_fde_in_sec; } @@ -488,7 +506,7 @@ sframe_fre_check_range_p (sframe_decoder_ctx *dctx, uint32_t func_idx, uint32_t start_ip_offset, uint32_t end_ip_offset, int32_t pc) { - sframe_func_desc_entry *fdep; + sframe_func_desc_entry_int *fdep; int32_t func_start_addr; uint8_t rep_block_size; uint32_t fde_type; @@ -499,7 +517,7 @@ sframe_fre_check_range_p (sframe_decoder_ctx *dctx, uint32_t func_idx, func_start_addr = sframe_decoder_get_secrel_func_start_addr (dctx, func_idx); fde_type = sframe_get_fde_type (fdep); mask_p = (fde_type == SFRAME_FDE_TYPE_PCMASK); - rep_block_size = fdep->sfde_func_rep_size; + rep_block_size = fdep->func_rep_size; if (func_start_addr > pc) return false; @@ -532,7 +550,7 @@ sframe_decode_fde (const char *buf, size_t buf_size, uint8_t ver, sframe_func_desc_entry_v2 *fdep = (sframe_func_desc_entry_v2 *) buf; *num_fres = fdep->sfde_func_num_fres; - *fre_type = sframe_get_fre_type (fdep); + *fre_type = SFRAME_V1_FUNC_FRE_TYPE (fdep->sfde_func_info); *fre_offset = fdep->sfde_func_start_fre_off; *fde_size = sizeof (sframe_func_desc_entry_v2); @@ -697,12 +715,12 @@ sframe_decoder_get_header (sframe_decoder_ctx *dctx) static int fde_func (const void *p1, const void *p2) { - const sframe_func_desc_entry *aa = p1; - const sframe_func_desc_entry *bb = p2; + const sframe_func_desc_entry_int *aa = p1; + const sframe_func_desc_entry_int *bb = p2; - if (aa->sfde_func_start_address < bb->sfde_func_start_address) + if (aa->func_start_addr < bb->func_start_addr) return -1; - else if (aa->sfde_func_start_address > bb->sfde_func_start_address) + else if (aa->func_start_addr > bb->func_start_addr) return 1; return 0; } @@ -1224,18 +1242,18 @@ sframe_decoder_get_offsetof_fde_start_addr (sframe_decoder_ctx *dctx, *errp = 0; return (sframe_decoder_get_hdr_size (dctx) - + func_idx * sizeof (sframe_func_desc_entry) - + offsetof (sframe_func_desc_entry, sfde_func_start_address)); + + func_idx * sizeof (sframe_func_desc_entry_v2) + + offsetof (sframe_func_desc_entry_v2, sfde_func_start_address)); } /* Find the function descriptor entry starting which contains the specified address ADDR. */ -static sframe_func_desc_entry * +static sframe_func_desc_entry_int * sframe_get_funcdesc_with_addr_internal (sframe_decoder_ctx *ctx, int32_t addr, int *errp, uint32_t *func_idx) { - sframe_func_desc_entry *fdp; + sframe_func_desc_entry_int *fdp; int low, high; if (ctx == NULL) @@ -1251,19 +1269,19 @@ sframe_get_funcdesc_with_addr_internal (sframe_decoder_ctx *ctx, int32_t addr, return sframe_ret_set_errno (errp, SFRAME_ERR_FDE_NOTSORTED); /* Do the binary search. */ - fdp = (sframe_func_desc_entry *) ctx->sfd_funcdesc->entry; + fdp = (sframe_func_desc_entry_int *) ctx->sfd_funcdesc->entry; low = 0; high = dhp->sfh_num_fdes - 1; while (low <= high) { int mid = low + (high - low) / 2; - /* Given sfde_func_start_address <= addr, - addr - sfde_func_start_address must be positive. */ + /* Given func_start_addr <= addr, + addr - func_start_addr must be positive. */ if (sframe_decoder_get_secrel_func_start_addr (ctx, mid) <= addr && ((uint32_t)(addr - sframe_decoder_get_secrel_func_start_addr (ctx, mid)) - < fdp[mid].sfde_func_size)) + < fdp[mid].func_size)) { *func_idx = mid; return fdp + mid; @@ -1282,7 +1300,7 @@ sframe_get_funcdesc_with_addr_internal (sframe_decoder_ctx *ctx, int32_t addr, is the starting location for the FRE. */ static uint32_t -sframe_fre_get_end_ip_offset (sframe_func_desc_entry *fdep, unsigned int i, +sframe_fre_get_end_ip_offset (sframe_func_desc_entry_int *fdep, unsigned int i, const char *fres) { uint32_t end_ip_offset; @@ -1291,7 +1309,7 @@ sframe_fre_get_end_ip_offset (sframe_func_desc_entry *fdep, unsigned int i, fre_type = sframe_get_fre_type (fdep); /* Get the start address of the next FRE in sequence. */ - if (i < fdep->sfde_func_num_fres - 1) + if (i < fdep->func_num_fres - 1) { sframe_decode_fre_start_address (fres, &end_ip_offset, fre_type); end_ip_offset -= 1; @@ -1299,7 +1317,7 @@ sframe_fre_get_end_ip_offset (sframe_func_desc_entry *fdep, unsigned int i, else /* The end IP offset for the FRE needs to be deduced from the function size. */ - end_ip_offset = fdep->sfde_func_size - 1; + end_ip_offset = fdep->func_size - 1; return end_ip_offset; } @@ -1312,7 +1330,7 @@ sframe_find_fre (sframe_decoder_ctx *ctx, int32_t pc, sframe_frame_row_entry *frep) { sframe_frame_row_entry cur_fre; - sframe_func_desc_entry *fdep; + sframe_func_desc_entry_int *fdep; uint32_t func_idx; uint32_t fre_type, i; int32_t func_start_addr; @@ -1331,10 +1349,10 @@ sframe_find_fre (sframe_decoder_ctx *ctx, int32_t pc, fre_type = sframe_get_fre_type (fdep); - fres = ctx->sfd_fres + fdep->sfde_func_start_fre_off; + fres = ctx->sfd_fres + fdep->func_start_fre_off; func_start_addr = sframe_decoder_get_secrel_func_start_addr (ctx, func_idx); - for (i = 0; i < fdep->sfde_func_num_fres; i++) + for (i = 0; i < fdep->func_num_fres; i++) { err = sframe_decode_fre (fres, &cur_fre, fre_type, &size); if (err) @@ -1386,7 +1404,7 @@ sframe_decoder_get_funcdesc (sframe_decoder_ctx *ctx, int32_t *func_start_address, unsigned char *func_info) { - sframe_func_desc_entry *fdp; + sframe_func_desc_entry_int *fdp; int err = 0; if (ctx == NULL || func_start_address == NULL || num_fres == NULL @@ -1398,10 +1416,10 @@ sframe_decoder_get_funcdesc (sframe_decoder_ctx *ctx, if (fdp == NULL) return sframe_set_errno (&err, SFRAME_ERR_FDE_NOTFOUND); - *num_fres = fdp->sfde_func_num_fres; - *func_start_address = fdp->sfde_func_start_address; - *func_size = fdp->sfde_func_size; - *func_info = fdp->sfde_func_info; + *num_fres = fdp->func_num_fres; + *func_start_address = fdp->func_start_addr; + *func_size = fdp->func_size; + *func_info = fdp->func_info; return 0; } @@ -1415,7 +1433,7 @@ sframe_decoder_get_funcdesc_v2 (sframe_decoder_ctx *dctx, unsigned char *func_info, uint8_t *rep_block_size) { - sframe_func_desc_entry *fdp; + sframe_func_desc_entry_int *fdp; int err = 0; if (dctx == NULL || func_start_address == NULL @@ -1428,11 +1446,11 @@ sframe_decoder_get_funcdesc_v2 (sframe_decoder_ctx *dctx, if (fdp == NULL) return sframe_set_errno (&err, SFRAME_ERR_FDE_NOTFOUND); - *num_fres = fdp->sfde_func_num_fres; - *func_start_address = fdp->sfde_func_start_address; - *func_size = fdp->sfde_func_size; - *func_info = fdp->sfde_func_info; - *rep_block_size = fdp->sfde_func_rep_size; + *num_fres = fdp->func_num_fres; + *func_start_address = (int32_t) fdp->func_start_addr; + *func_size = fdp->func_size; + *func_info = fdp->func_info; + *rep_block_size = fdp->func_rep_size; return 0; } @@ -1446,7 +1464,7 @@ sframe_decoder_get_fre (sframe_decoder_ctx *ctx, unsigned int fre_idx, sframe_frame_row_entry *fre) { - sframe_func_desc_entry *fdep; + sframe_func_desc_entry_int *fdep; sframe_frame_row_entry ifre; const char *fres; uint32_t i; @@ -1465,8 +1483,8 @@ sframe_decoder_get_fre (sframe_decoder_ctx *ctx, fre_type = sframe_get_fre_type (fdep); /* Now scan the FRE entries. */ - fres = ctx->sfd_fres + fdep->sfde_func_start_fre_off; - for (i = 0; i < fdep->sfde_func_num_fres; i++) + fres = ctx->sfd_fres + fdep->func_start_fre_off; + for (i = 0; i < fdep->func_num_fres; i++) { /* Decode the FRE at the current position. Return it if valid. */ err = sframe_decode_fre (fres, &ifre, fre_type, &esz); @@ -1476,11 +1494,11 @@ sframe_decoder_get_fre (sframe_decoder_ctx *ctx, return sframe_set_errno (&err, SFRAME_ERR_FRE_INVAL); /* Although a stricter sanity check on fre_start_addr like: - if (fdep->sfde_func_size) - sframe_assert (frep->fre_start_addr < fdep->sfde_func_size); + if (fdep->func_size) + sframe_assert (frep->fre_start_addr < fdep->func_size); is more suitable, some code has been seen to not abide by it. See PR libsframe/33131. */ - sframe_assert (ifre.fre_start_addr <= fdep->sfde_func_size); + sframe_assert (ifre.fre_start_addr <= fdep->func_size); sframe_frame_row_entry_copy (fre, &ifre); @@ -1507,11 +1525,11 @@ sframe_encoder_get_header (sframe_encoder_ctx *ectx) return hp; } -static sframe_func_desc_entry * +static sframe_func_desc_entry_int * sframe_encoder_get_funcdesc_at_index (sframe_encoder_ctx *ectx, uint32_t func_idx) { - sframe_func_desc_entry *fde = NULL; + sframe_func_desc_entry_int *fde = NULL; if (func_idx < sframe_encoder_get_num_fidx (ectx)) { sf_fde_tbl *func_tbl = ectx->sfe_funcdesc; @@ -1661,8 +1679,8 @@ sframe_encoder_get_offsetof_fde_start_addr (sframe_encoder_ctx *ectx, *errp = 0; return (sframe_encoder_get_hdr_size (ectx) - + func_idx * sizeof (sframe_func_desc_entry) - + offsetof (sframe_func_desc_entry, sfde_func_start_address)); + + func_idx * sizeof (sframe_func_desc_entry_v2) + + offsetof (sframe_func_desc_entry_v2, sfde_func_start_address)); } /* Add an SFrame FRE to function at FUNC_IDX'th function descriptor entry in @@ -1674,7 +1692,7 @@ sframe_encoder_add_fre (sframe_encoder_ctx *ectx, sframe_frame_row_entry *frep) { sframe_header *ehp; - sframe_func_desc_entry *fdep; + sframe_func_desc_entry_int *fdep; sframe_frame_row_entry *ectx_frep; size_t offsets_sz, esz; uint32_t fre_type; @@ -1732,11 +1750,11 @@ sframe_encoder_add_fre (sframe_encoder_ctx *ectx, ectx_frep->fre_info = frep->fre_info; /* Although a stricter sanity check on fre_start_addr like: - if (fdep->sfde_func_size) - sframe_assert (frep->fre_start_addr < fdep->sfde_func_size); + if (fdep->func_size) + sframe_assert (frep->fre_start_addr < fdep->func_size); is more suitable, some code has been seen to not abide by it. See PR libsframe/33131. */ - sframe_assert (frep->fre_start_addr <= fdep->sfde_func_size); + sframe_assert (frep->fre_start_addr <= fdep->func_size); /* frep has already been sanity check'd. Get offsets size. */ offsets_sz = sframe_fre_offset_bytes_size (frep->fre_info); @@ -1752,7 +1770,7 @@ sframe_encoder_add_fre (sframe_encoder_ctx *ectx, ehp->sfh_num_fres = fre_tbl->count; /* Update the value of the number of FREs for the function. */ - fdep->sfde_func_num_fres++; + fdep->func_num_fres++; return 0; @@ -1789,7 +1807,7 @@ sframe_encoder_add_funcdesc (sframe_encoder_ctx *ectx, if (fd_info == NULL) { fd_tbl_sz = (sizeof (sf_fde_tbl) - + (number_of_entries * sizeof (sframe_func_desc_entry))); + + (number_of_entries * sizeof (sframe_func_desc_entry_int))); fd_info = malloc (fd_tbl_sz); if (fd_info == NULL) { @@ -1803,7 +1821,7 @@ sframe_encoder_add_funcdesc (sframe_encoder_ctx *ectx, { fd_tbl_sz = (sizeof (sf_fde_tbl) + ((fd_info->alloced + number_of_entries) - * sizeof (sframe_func_desc_entry))); + * sizeof (sframe_func_desc_entry_int))); fd_info = realloc (fd_info, fd_tbl_sz); if (fd_info == NULL) { @@ -1812,16 +1830,15 @@ sframe_encoder_add_funcdesc (sframe_encoder_ctx *ectx, } memset (&fd_info->entry[fd_info->alloced], 0, - number_of_entries * sizeof (sframe_func_desc_entry)); + number_of_entries * sizeof (sframe_func_desc_entry_int)); fd_info->alloced += number_of_entries; } - fd_info->entry[fd_info->count].sfde_func_start_address = start_addr; + fd_info->entry[fd_info->count].func_start_addr = start_addr; /* Num FREs is updated as FREs are added for the function later via sframe_encoder_add_fre. */ - fd_info->entry[fd_info->count].sfde_func_size = func_size; - fd_info->entry[fd_info->count].sfde_func_start_fre_off - = ectx->sfe_fre_nbytes; + fd_info->entry[fd_info->count].func_size = func_size; + fd_info->entry[fd_info->count].func_start_fre_off = ectx->sfe_fre_nbytes; #if 0 // Linker optimization test code cleanup later ibhagat TODO FIXME uint32_t fre_type = sframe_calc_fre_type (func_size); @@ -1829,7 +1846,7 @@ sframe_encoder_add_funcdesc (sframe_encoder_ctx *ectx, fd_info->entry[fd_info->count].sfde_func_info = sframe_fde_func_info (fre_type); #endif - fd_info->entry[fd_info->count].sfde_func_info = func_info; + fd_info->entry[fd_info->count].func_info = func_info; fd_info->count++; ectx->sfe_funcdesc = fd_info; ehp->sfh_num_fdes++; @@ -1867,7 +1884,7 @@ sframe_encoder_add_funcdesc_v2 (sframe_encoder_ctx *ectx, return SFRAME_ERR; fd_info = ectx->sfe_funcdesc; - fd_info->entry[fd_info->count-1].sfde_func_rep_size = rep_block_size; + fd_info->entry[fd_info->count-1].func_rep_size = rep_block_size; return 0; } @@ -1887,14 +1904,14 @@ sframe_sort_funcdesc (sframe_encoder_ctx *ectx) FIXME - qsort_r may be more optimal. */ for (unsigned int i = 0; i < fd_info->count; i++) - fd_info->entry[i].sfde_func_start_address + fd_info->entry[i].func_start_addr += sframe_encoder_get_offsetof_fde_start_addr (ectx, i, NULL); qsort (fd_info->entry, fd_info->count, - sizeof (sframe_func_desc_entry), fde_func); + sizeof (sframe_func_desc_entry_int), fde_func); for (unsigned int i = 0; i < fd_info->count; i++) - fd_info->entry[i].sfde_func_start_address + fd_info->entry[i].func_start_addr -= sframe_encoder_get_offsetof_fde_start_addr (ectx, i, NULL); /* Update preamble's flags. */ @@ -1984,6 +2001,26 @@ sframe_encoder_write_fre (char *contents, sframe_frame_row_entry *frep, return 0; } +static int +sframe_encoder_write_fde (const sframe_header *sfhp ATTRIBUTE_UNUSED, + char *contents, sframe_func_desc_entry_int *fde, + size_t *fde_write_size) +{ + sframe_func_desc_entry_v2 *fdep = (sframe_func_desc_entry_v2 *)contents; + + fdep->sfde_func_start_address = (int32_t)fde->func_start_addr; + fdep->sfde_func_size = fde->func_size; + fdep->sfde_func_start_fre_off = fde->func_start_fre_off; + fdep->sfde_func_num_fres = fde->func_num_fres; + fdep->sfde_func_info = fde->func_info; + fdep->sfde_func_rep_size = fde->func_rep_size; + fdep->sfde_func_padding2 = 0; + + *fde_write_size = sizeof (sframe_func_desc_entry_v2); + + return 0; +} + /* Serialize the core contents of the SFrame section and write out to the output buffer held in the encoder context ECTX. Return SFRAME_ERR if failure. */ @@ -1994,7 +2031,7 @@ sframe_encoder_write_sframe (sframe_encoder_ctx *ectx) char *contents; size_t buf_size; size_t hdr_size; - size_t all_fdes_size; + size_t fde_write_size, all_fdes_size; size_t fre_size; size_t esz = 0; sframe_header *ehp; @@ -2002,7 +2039,7 @@ sframe_encoder_write_sframe (sframe_encoder_ctx *ectx) sf_fre_tbl *fr_info; uint32_t i, num_fdes; uint32_t j, num_fres; - sframe_func_desc_entry *fdep; + sframe_func_desc_entry_int *fdep; sframe_frame_row_entry *frep; uint32_t fre_type; @@ -2011,7 +2048,7 @@ sframe_encoder_write_sframe (sframe_encoder_ctx *ectx) contents = ectx->sfe_data; buf_size = ectx->sfe_data_size; num_fdes = sframe_encoder_get_num_fidx (ectx); - all_fdes_size = num_fdes * sizeof (sframe_func_desc_entry); + all_fdes_size = num_fdes * sizeof (sframe_func_desc_entry_v2); ehp = sframe_encoder_get_header (ectx); hdr_size = sframe_get_hdr_size (ehp); @@ -2043,11 +2080,11 @@ sframe_encoder_write_sframe (sframe_encoder_ctx *ectx) { fdep = &fd_info->entry[i]; fre_type = sframe_get_fre_type (fdep); - num_fres = fdep->sfde_func_num_fres; + num_fres = fdep->func_num_fres; /* For FDEs without any FREs, set sfde_func_start_fre_off to zero. */ if (num_fres == 0) - fdep->sfde_func_start_fre_off = 0; + fdep->func_start_fre_off = 0; if (num_fres > 0 && fr_info == NULL) return sframe_set_errno (&err, SFRAME_ERR_FRE_INVAL); @@ -2085,8 +2122,12 @@ sframe_encoder_write_sframe (sframe_encoder_ctx *ectx) contents += hdr_size; /* Write out the FDE table sorted on funtion start address. */ - memcpy (contents, fd_info->entry, all_fdes_size); - contents += all_fdes_size; + for (i = 0; i < num_fdes; i++) + { + sframe_encoder_write_fde (ehp, contents, &fd_info->entry[i], + &fde_write_size); + contents += fde_write_size; + } return 0; } @@ -2113,7 +2154,7 @@ sframe_encoder_write (sframe_encoder_ctx *ectx, ehp = sframe_encoder_get_header (ectx); hdrsize = sframe_get_hdr_size (ehp); - fsz = sframe_encoder_get_num_fidx (ectx) * sizeof (sframe_func_desc_entry); + fsz = sframe_encoder_get_num_fidx (ectx) * sizeof (sframe_func_desc_entry_v2); fresz = ectx->sfe_fre_nbytes; /* Encoder writes out data in the latest SFrame format version. */ From patchwork Tue Dec 2 07:34:07 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125734 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 91E0E4C31829 for ; Tue, 2 Dec 2025 07:38:13 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 91E0E4C31829 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764661093; bh=1T9uvWo9TpGMvYX4BOCLw7xcCABblAgU/64vioAf3OA=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=vpZrqJWYHVbHHSgyGOoa+tHx8RhhiS2IGcZdxMRu2n1p3xX3q4KnEYHHf7PKJu533 J4rBhFP4YuoycHkjj/sJjYA46S2fq53OB1v45oHDbfVeqiwMWlpA78yVWjhVs4hJwZ cPXPm3jvGUL2f+ZVyt3RjD1/LDD0rXyKwQDG4qMM= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 1604B4BB58E8 for ; Tue, 2 Dec 2025 07:34:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1604B4BB58E8 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 1604B4BB58E8 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660880; cv=pass; b=pbF5JqYi/8063p4KjIHFrQ4B7Ludi66PKqlFMUrQ33VqBrAOigGGu8vkx0f4u5X2zNtwjtZaFfAZ3Lhos3eOuSg1oWVjwWnFUBIrxvCydDWUBvUpw67FF7pCs24pGO1eMszzO3WhGI2E7QiVrCDipQ56uQXg+SWXqOWgukvetYY= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660880; c=relaxed/simple; bh=Zxzikb3xSGtaUFnfnlp6IPBvYbA+SfgeBsFtSlW9Mc0=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=bdJj1FYv2JaM6425cidux/aZ2tIIdnF/tuiyMFkK5AFXzNlIT5S9iERBiOe9JSMLPpuL4v8WmVC/BTHYsAdoLzinglhQ4Od9ZHX/vrr3IjzJ8F0G/mCIHsS4dAHBo9mEyeavuAEw4Q7gxXDZk46ioJb/oMcck989GYtuWRKrLug= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1604B4BB58E8 Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NEEi3306681 for ; Tue, 2 Dec 2025 07:34:39 GMT Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as7u7t8h5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:39 +0000 (GMT) Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B260MZc011894 for ; Tue, 2 Dec 2025 07:34:38 GMT Received: from bl2pr02cu003.outbound.protection.outlook.com (mail-eastusazon11011028.outbound.protection.outlook.com [52.101.52.28]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq9k1h7d-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=FNp0M2CkAUzqSSIeZYUFuS+k2OjSlZnxE4heKu74ApXUeRy2hEHu/HW2h9i12Ae9O8KKOs+5dKCpf9NCfQYMOiGymmXusbLJCrXwVV0yyEYU/w8SvHXOUbBxlhx31pIoGSYdNgS+7xWP6Lufdmg9moC0IRyA3LHWegQl4sgysBdNOIGaJyRyq8dOSyDVJaC3nkOXXBsXK2fFYD7mMNxdJVOXVnhhHQnIC6iseAEdFVC4NawVrptxR9JYyuRYqn7+rYIZ5rcWz+T7bWlzrqYQAJkY3524sjyVCFIL4/vIjMm5qF/0IbOUeVSo+Hp5rPeEtaUASw1If7GNfnjYiwe5AQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=1T9uvWo9TpGMvYX4BOCLw7xcCABblAgU/64vioAf3OA=; b=FcVSPTWBTtV70e4oB7Uhm3K1FfBmAA9C3NLfl0hetDcg/F3frrIq5YPelE58PZGVvt4dFBNlSmbpjhF1CWKbYN7HD3KXu65/gOAHVUx9oMS99SLhCHC4mf3ZZuIHjLXwvoA5gzv+JkM64BFyaRGvuseZm+irGkgM3dfarZJkPSn+VzJ6tEi/5/7sDxYWE3hdgT0JGqHLxGPLdV3VCABL+ZU5N+8++Bupkr8sCgTNU7ZUTZLCHf5iLhq0MRrC/rumDZY4XyD+TUDZj2+TrEzHicCnWByM+uPWHVJAdcsSEBO6MlL9A5HwjMHsXPPOQD7FRgDfS4BPSvCPi52mw6WP7A== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:36 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:36 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 06/13] include: sframe: add SFRAME_V2_ prefixed macro names Date: Mon, 1 Dec 2025 23:34:07 -0800 Message-ID: <20251202073414.200246-7-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR04CA0149.namprd04.prod.outlook.com (2603:10b6:303:84::34) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: 0becac9d-c28a-4b07-e601-08de31753e56 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: mnLQNaCTZBoBVziCNHhcIWwTCafe+vc7wTw9NQQQakpaE8oX72qG/p5DVGjnK1P75TNawgFmmOSkyMlGi6dI6oSNYeS0WPaspRWt5ispF5zYgKM/YIzMa8EVvAPQnKdI/Nh+avT0fYeji/ayhhbcxPpo9HpAKlMKmZ4UkRWL6c+2VnWGEnVeD1fDxB2WVig9Sl6iBWr2tUaBOPtVVm1Z1lxPf+4ODH+lNn44ON2hXS1xqoI/bfr7DqBWZ9GP9ur/1XYxWgjWR6z/v1O3cKOxgYXQlPw6nkkXNCRxiue0rF8fVZ+hFTYREJP9Q86Klq9wJpsY2FEsL76Exa6gHguPrVIeOeFQGMaMi9KXPyiUXpb4MKVrJamh+zttUcfbOvkqXzzlYplfQymQk43lsUmsBvUNSykS9mDlWUtXtPNEjZHAfQavY0HzaPr3mFuEdu4x8Y9tBZeubP/4hxGqMEn0yzIMlFuQ6JhlTGe08aUfju988MqTuJI/WeHVXXm9KePDhUvnQPaDjTHbK7ASoyCN11SbaDOXOvzXfxF7MmCnk6FrzmT+YnMzLFOP8yBd98fnWMxGqmReOWIowM5hY4igl3aAHb1aD2KVWxXk5UTU+Z4H4T4jO8gVbq8ZwOGMakagL8KaqaS6WjxT4aV44qL8ecdxwvJZquJagCNsnS0JyEf9ldV/mXLDywP3TtcscQgAF28rsMhOv+LU6D0sAd4oxontYiCkx8kqklOEqebwvOynNgTTfupb4vB9bhWlWirilb4HzgyOkIsPLPUjGcgaoQgRQgfayQ5eIQYzQZXh2i9Rg54mvhfGhu37vOUUwA6p7KyJm226Op3SotCMOaNltCpLxJErrPw5KcMyU99dBBXiUfRDZ4/JY0qHnRtQO+YW03JOlx3pUHXPrv0exrJrCYyjIvoexnAxXABfqSaFI6zAaD2s8wd8I+9xWUmaqsLhENv7hSljZI3R0qaAM0HralHQURGfHXurTlo8XAWL2TgneXK8m4VNLGV/3YfhPlpaSbBOrskpeC34W8DcJXGfnOJZluX4o3SEp57f4KduwxzCdmBovcsfrJFN9K1ked2akC35uuiXsPLGV0JAyZP8BaF05tBhnLE8Fl1CHyR/ZdpZ0KBYGzYvZ4rzU54bZpym5VcgwoMl1apPd/4YZqU0Q9esRQ5Cg+HfiEFAkFyQ6d0leTZwLPpz54BThyauqr0IQJYf9QjtpFmf7WjXrKATj+KJ3FOq9uyY79WBK102VMdXYqBQcMeyWX/O+8YH4nt7xQdxdD2nBhrUkWxcFwn5sWn+X2w4nabYZuDcaI9kp9KnqHKkaU7/mkha2VQLhWamcj1HhH0AjRBAIE+0xpBxfPjXsaxQ2wHpvS4FrtOJB9NIlXprsjtl6/WGwjbUbDFubBLcgmSueci6HrT0herI+lE3sPZj3fqfFu8dRQEXCRuJOfnej4MSdNzrr6xzrDBT X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: s1zAVGAT5d5+Mszo4woRxae+DfoHg9ah14gZ43cV1Fbyz8vtfQbXxjfUBjD9lUxu/hd6WMcDgDKz//HRj1WmMRvGHjFLKme3rFzdk2DmFRprlDMugx3ZnSBdsDc8k667k9E6cbmph71XLK6AzGuYSQR6aihXA7N1UwB8+ot4OIbYs8v2TVMJwLD05gbhfytrB9RCLaGiekas8URxInNpts9bFZkqlUHcasJpf6QBsER3/weqLtep3CO57ix1K+ujScbOyNUKDzNjaowQuBKkAUS430U5X6Wsoo+hQxyII5VHW/ah83c6QNlQ8V5tsP9RqebeYIq60ggBfOE2YJcJuSawIGeFY2993NHpbPd7Uch0TXf/N2O5R3azaOLf9edJqODS4sHtg3+T4w16epbxCoIYMX1lg9IVdVIDrkN9tAUSmPTWFmqOg0nH9lqvJMWEf0xQNpZyUDgWyk1DLiqrQKjM/298Am9xw3UOd8IpdtK0qxdDdkxKRNkwXtZVjwMNhX+DLf+VhFAXHXAHzz/eSxLCHqoohiWjEkyoP14mbKzmU/L9Plc24Rs0zYWINO/XXZcqoc4m9OSUvbALil3ZOlc/mAhxjbCqz6ZDpl6nuJyTKjXm0u55K2emFJ0GZvOHFOgdX+99WJxZ0p1VIei3q0MbuYm1xMS+GOQ4tM3JVVrcdjCZFS9RvyrjiYIEyYW3Iq2x+jtCW7wijxhaV90KPyqc1MtHCSTmIeWSCX1ArWimpOZTnpirJ65f3MDUZVQa5Gz6tAXFgI0w4gqsi7QBfHgzMASYSndGwg2cW0/hs0UFE0prUJQiLEhmZ0ZbHGzIhllW3Od4QwZdKu7b89pk4w6DAN9q64xkLhYQI76Bw2vN0Wgxtw+yJvjX4jL//RDSOCV/BQJvg7QxrLNPGg/asNVgCrMSz51cXoxj5Gai0VWohh81zGzV8VUouWa+svAlma87z5GLG8VRUUPDdMass5iRcN1mwLW+SiIDeRNp1mbRhBBCWB442rSoyeJgFkeP20dBQhp8OUCFZVigJctqpP+807JqKmq6+faKBTe5cyUJyXi6lgPbr1o9hh1wl1yHbA8WOl3JfhybGitf7Uqw2jqN6UJxMdgAzezlHXabQ+ZkY+8ih0vcYCsc9MjagSuJ3N7OAL5S7jy41zQ2JYDydxZ7jhTDaIDGQzyFiJpJrfg/F5xMrPUsxwXpAl+Xb6LwsFKoZ7/Xwvx6ik3yYJmR/0PVtX+8OHK2mj9+CjucWXFsTmThyX+mIV4ekkrQkpQfDUX1w47SgL6o52C+Kx99TVnbDQ/8KXXLU15uhJSVuKshSsWj367+ibqGodiqiicXCD8nvdJGSgVe8Fo6OILWwqkArYBRVp4Xuj2gs9N+glSEQHjrxLXLOkSV6xUVdWk0ssptKxCU2FgbnRUUWBax6GDm3KQ7AvZ5CTajEO4KaIdIDCSiZ5+GRo9/mTJfMmqDvmrbKAHVAeUEC1iDdb8WDH/7xryQoyBvO4K+ZrwwiYv8B7ARtlmEkP91zc5tILMU6BHCo+9P+bi4f/5+y2xPOy6OmmBquhUtN3d1ZWLXjkye0rZlpunUsHuL53yDTrOBvUIfSSr19FfgWI65Cgq0IZ0Ec81HWHMCkBUYhKMIZRE= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0JYN3fpqLb+59+wqawm+uXYEZ1HAS5d6JXmqlRxdDTRV/gw8XHbbuzLIhOQ6h+7vnKk+Jnq77E2ukEH4yJ5sSyPUDcnPP/lwCo6ABAjreuzhxRV3KwbvxxyvmKKTPK6up/hL5FkFLWqiMHygSdG7iJBaC7GlEZwebNziPGAyu4gRNS4KJi659QC0/dULjkRng0Z8iXlUrH3P+0g+M2LJ9uJ3c6ebqANItru4lPJTLhBvCBoSr3NG5hN9MCMCt/g7Romqe2WSindtbeGLPS7K/IWIm2khhKSQfrEsU5IkJ60iHXs4pzXvtL893vgPZsma+5LtxxqbKvk/FqTDgw10+wOeacE1inVr3PiBvKpr5wzXOGGid3G9Ja/YpFQuUKdzqxyevwpo//rJ6o9SZ6L6uLLc0419476hUSlV1vCWESkom4UdL5AW+ScPLdPTnwXKSPRQjgQ1celGFRwmlib1uDz17ZT0uce5NkwSWY8eLmT6S6p3rgucNX+YaijuSV02/00PEPDsBx5XZ4x+kOfMVobNEfSKAPRXOKrxzTmBwciomx9G7HxPnjcAAoLOcKnT1BnP/Yr75M6+JAmCrCO/6ATZZ6Idc+UuupMmbhJOl+I= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0becac9d-c28a-4b07-e601-08de31753e56 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:36.1115 (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: jO57U/iqGicnR4oS7Kd9SZn4c8YZPujrDMDB+ZzLXjCCJcnvGPnCcAzuKwcKcO+bNWTlzFfkco7xJaxdZ98/cw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 phishscore=0 adultscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 bulkscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Authority-Analysis: v=2.4 cv=Rfqdyltv c=1 sm=1 tr=0 ts=692e968f b=1 cx=c_pps a=qoll8+KPOyaMroiJ2sR5sw==:117 a=qoll8+KPOyaMroiJ2sR5sw==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=6CTWUNqs8QPUYf_t8yUA:9 cc=ntf awl=host:12099 X-Proofpoint-GUID: qS5SMXiO2Md5QmAoe1hK0TeUt6qlKTDU X-Proofpoint-ORIG-GUID: qS5SMXiO2Md5QmAoe1hK0TeUt6qlKTDU X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfXxot+R/qbeA49 DyM9T9xeRjYhhqXS1D2SA1LolP+g6BhseNRSIm0oSRwl+lh8e8OGXw9F4kqKtDznE4vkh/1Mwz2 zpis5EHJaYrJHmXX8tVWQKYnSRfZeQH1t4fhrz4PCZ6Dg0tfkYrpQVI0FQMYEheIE/vE//mfHXi jEj179AFSZvYiiq+XmY/XENbRfmBfHgInoq4vwiiKN8gIoTCjQ9cmRYm28z/GDyCAWAwscqJfvf VVGulabI9C29xXB6/NMu8E5bH+YNFPKlwhelkJ1sH0ozMnWaMp5G9JMNn570tAe/0RcNhmGvVeQ 6sNQ4LDpb0oPBRnwj6jrzSma/A8iA0u3G0m/tDMWjo3SGrdCYS1HU8hdjq7o08MB/yZRd100dqU Inwqx7MULTgZWFXreZVJZUiEvQI/q20WsgAnbGHVjddqnicOpzQ= X-Spam-Status: No, score=-12.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Such a change for readability only. SFrame V1 is now obsolete, and with newer versions like V3 or later, its likely better to have macro names reflect the applicable version. include/ * sframe.h (SFRAME_V2_FUNC_INFO): New definition. (SFRAME_V2_FUNC_FRE_TYPE): Likewise. (SFRAME_V2_FUNC_FDE_TYPE): Likewise. (SFRAME_V2_FUNC_PAUTH_KEY): Likewise. (SFRAME_V2_FUNC_INFO_UPDATE_PAUTH_KEY): Likewise. --- include/sframe.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/sframe.h b/include/sframe.h index d2a3c8390bf..d90440330cd 100644 --- a/include/sframe.h +++ b/include/sframe.h @@ -227,6 +227,18 @@ typedef struct sframe_func_desc_entry_v2 #define SFRAME_V1_FUNC_INFO_UPDATE_PAUTH_KEY(pauth_key, fde_info) \ ((((pauth_key) & 0x1) << 5) | ((fde_info) & 0xdf)) +/* SFrame V2 has similar SFrame FDE representation as SFrame V1. */ + +#define SFRAME_V2_FUNC_INFO(fde_type, fre_enc_type) \ + (SFRAME_V1_FUNC_INFO (fde_type, fre_enc_type)) + +#define SFRAME_V2_FUNC_FRE_TYPE(data) (SFRAME_V1_FUNC_FRE_TYPE (data)) +#define SFRAME_V2_FUNC_FDE_TYPE(data) (SFRAME_V1_FUNC_FDE_TYPE (data)) +#define SFRAME_V2_FUNC_PAUTH_KEY(data) (SFRAME_V1_FUNC_PAUTH_KEY (data)) + +#define SFRAME_V2_FUNC_INFO_UPDATE_PAUTH_KEY(pauth_key, fde_info) \ + SFRAME_V1_FUNC_INFO_UPDATE_PAUTH_KEY (pauth_key, fde_info) + /* Size of stack frame offsets in an SFrame Frame Row Entry. A single SFrame FRE has all offsets of the same size. Offset size may vary across frame row entries. */ From patchwork Tue Dec 2 07:34:08 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125736 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 1EFB64CCCA19 for ; Tue, 2 Dec 2025 07:39:40 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1EFB64CCCA19 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764661180; bh=RO3EYwKkEvCO7issV5sB30TNyxjfxInP+oAJqg1KIyw=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=qrC/McA7ZGIsaZLjYvX4UG5rbmYRap32Tzq6iwfPpj/3i098TIQ4pwLT9/MuSORuO UqKesgTGXUzYC++uWuhbgo2Tkw+C5LaziHanCMHQOOjfmkAUsS9w5ietkvdL2Nm/vi JKpOzPduT9CnLZf7AQ8sW7cGVq+EworMjdy0onKg= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 5EA1E4BB5890 for ; Tue, 2 Dec 2025 07:34:44 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5EA1E4BB5890 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 5EA1E4BB5890 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660884; cv=pass; b=nYcC9cjOzb9U3tZH3zGankalc/QKqQMkgQf0Q6CQyzbIpzZrpxzHwDSP1JyoRfRmF5zEssSvsG1JXcn1D5XgQql7KYlGR1LKFGajKOXUMaFrqpx4QHZpmD0L5Ou5L07dS7nSLvBGGcx1HyjC4djX1P46ifBz+gY0GKa/TMcvt/M= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660884; c=relaxed/simple; bh=OWd0DuzVJHm9kmRztzQKZg72zr8h7V9K7lpSCqHuHWw=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=EAjcSLruRizfvSBAVQmE1/y84d+z31QbqdxXeaTEwLGvf6kS8G4tEKzgsreR2YbcdXrfy0xtj4CneZu1HL7LT6dpDM9/hYwnnQ3W4N10O12iRAVqhUgpFpdwYQjl88wOOpchmbB4Xk35XlGvybGHCUHZM4plT/K5zeOVOXa2V34= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5EA1E4BB5890 Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NeY33294794 for ; Tue, 2 Dec 2025 07:34:43 GMT Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as7cp29we-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:43 +0000 (GMT) Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B25aWRW016429 for ; Tue, 2 Dec 2025 07:34:42 GMT Received: from byapr05cu005.outbound.protection.outlook.com (mail-westusazon11010012.outbound.protection.outlook.com [52.101.85.12]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq98sqq0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:42 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=wMdEjJg5eWTLANBNwNDCylTUsb7RfHmxBOVO1dT7BNZw7EHGJ5driI0w/wSQnEwfcvD+mfTGyw4Z/WcGuczzlHucez4whhPH1UsUbjGVVrrIhjO2YQSPh1w2+ae3E4j/CCZPPNZu0WkWQqxw8HfUAZopgvcGP24Zuz8p4YJ5/A3OSKuqp7vCo0Ca860mGIFZTCEma14T9dvW43fsyPIGUGvBx2QsSNFMU9WID2UWBxYAB29RZXflZeIEbZEwGBBAI+kQEqFXWk3DZfG5lxi1O9STN1sZftrN2W7U8WeFpt7OfKi/bqfX6Cd5S7BNdFFxg3xIiVhDCTunSfwbg+Guuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=RO3EYwKkEvCO7issV5sB30TNyxjfxInP+oAJqg1KIyw=; b=FR15Rl5YOikSja+bLLMZX7YJsY2NujGHIo8ReFymcn8ZCrj3vY7YXGTR5PCZfPRYvRcn6tXinFalB5qvf1EP3IBfRA40JjEBk87AWFBeHduRa5fOea6WfBWQaP2KK3oZ+5Y40Lt0CeyaB/eMBRVguFAo6r+CrL7EvLGmj88FYBoYxbHOuCPkfttEFt2tsGq3R06XgY/P5EqGZaLTOAlgkDVI2a3kG+m+UKOomP3i7umHB63h2X6bQ61Gj6+iZmwzyyUCaItbg9Q60Bl7tlTVGN2rtokWZUoPyIQGgWFl+eNS/L8BaK+1ZBgRrONqBbCBqfPT2v77KGxpz7TxIdjwzw== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:39 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:38 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 07/13] gas: libsframe: use SFRAME_V2_* macro where available Date: Mon, 1 Dec 2025 23:34:08 -0800 Message-ID: <20251202073414.200246-8-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR04CA0140.namprd04.prod.outlook.com (2603:10b6:303:84::25) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: 2d0447db-f9d2-4770-0a64-08de31754000 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: VCx+GBcMfiD4Oejfp7cipHR4PM6tO6M1louuzD2lCyQaNFdHfUPOrRBbsPUE4RNYJnBji58dm2zWtcTxQzdOo8jkRIE7LkuL8iZbte0NQ6YGVNOoeWq8nO+trdfcZe1VbVMfmT4xVfOvAPPnzLGUNIhgdHC9K/nlvQzLIGPBhDl0F6Bh3dz5zm4Knjq1Z7XeibdmxT+dgi03ZBBaeK5UhxhqvdpgXmqjY0yk/N4aEldMxnottZjjh6TeGtyNVDgouaGNJb+C2hpFMBatOITjZvLuWi8JTV02tXYHoW13MgMvhc6Y0BEiOi5IC63OhxpucyTkkwsfCu3f/4eknlw61c35axoihriVbZcI/6oZXBmFbnOWxdcHXUCtwVRW1qZj3lvU/rSW61uT2o1LK039pZ7ue6kaNmvhSBbxcuMmtkbpwHFPCJyTOsasc9R8eWAmjysmhWvEodX/brCaofJZ1QlR3XBdbMfOLQAlwja3bNckuDWSZ8PSl6l46rMaVYCzoX6sEdnDKuWc/loDkRGfKHwTcY7eWNPllcu1nTg/kONt4jvON4IhkTxmrjF5LItk9/Slm745iMei2AB0Ug44dZsGO1dH4ycM/5eD5KXmtaHhtU2Q4mHyYKUJ0FO2qhvE0Bq9VcgTGTVOH2mpDWzr12eheghWue6C1LUPJPTGW2UC9fjgSP8Nbm0UswRrf/3WykKSkdS0oXiZ032TbVczEwoElaFpUV8/h4sWjOWUOOPw1WG9/YXdFQBynPJKDesvktIRdy2/nlmSR1ILtxKOWcK3tF4se8RO2BnHY8sYgU6DtwUovAW41Ul5J0vWrPd+LrAiuasVKvBXgR3K3G/ozekQSPgvsGDs77hpxLANYETMgOjN0Eev9tXGSW2uuLVOBl+bmcLs426Ml+2BdfN6iSQAGpUtHWL55stXbk18ElITzPP1+7yDANJi7byey8iIH+6td8nVpzA/sXFbbh9SfZNJH4O4P+/3VSr9EFIhH1d1b8QCp5VhjncbdIvpJgEQqFtZv7uck1vlbgvWCzVh8bKu2Y8s81MgBmUPRDwUQGUXSn86t52jnBVYIw+93HckvxeY9fBlyRIJ0GA/iJA0fnooNVvCjLPDH2j+xvKYg6zr96Kjk/P4sUURcZGq+iZlP498riy/gTmhJ2vRQQyCTrnKL5JsnOvxCpGIhJEgFeAvuY8LKeZ5o/GjF617mt5D580TmlqOiOK7mlzxEDMq5BdIQ5rwoVDiHkSqRNI8WvvQNaorg1LG6YGlNkPKmoFqTxe2q18t1HYAM8Tv9qkqSLsHg+vGJ/SsJXhWnZ0lCT4W7es8ktQJXLXLVLARjwchaKheE5j4BeNnsP6V2LFsdpw1LqK0iabv7RfGa2lsa5/EXIlpi63kSk+ISCb+7Kzh2SZ4fKw/u8gxN8z6TsbJMK3+sGCMhm+7F8t25wlTfgwTZeOVfQKrNQ4ZCb/TBipt X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: wtCQCiSNA2Zn7FgKIBF7ldEr6XU3o0zGrIvGaipJAiTsKV+yilS67QRdEnLvijeN7ToPiSSubWUgWKs2NCX1uPfWMP8mVZr6Zs1Gkr/6TH/7mc2sQ13cYALoX4EnUoa2fJ6vzEGK/qynZtmT5oGExvDfj0ersZPg/7Kre6mziWHWCqmIU1hhz3NZhMcVxAGGy00inGmULXxXf49FtDIu4BwUxaDbNU5ST2WmCMZT/ePP+nmPqPjKUCejOHZv3/O8uopsAx+Gj5iKUmph2ySWhOGqSTNw8if/gUrennd2D1KxsCqdjyHZBIji+1+3iH36UrqdkkHyNXQFqe88KT66dQa6M/F5CvaA4sJ9JeCJRdLVyv9bDZpSeag8Q32sID6ILp2oBS4ehnExCC5wc7MfvIt+HYSCu5MbHbyfIRxxdsF6pjYubhdiVhh3sjcUxQzJ3wujGGcdHhs6nnQ7nyR1F3SuSCS4DwEOGJjjtBiOOh78TiQR4s7D9HehvISzFPGHx1/fHBbZdDGHWGdcs3nutYtCTZQIOVHkf7uh5xHd/MNu/13Lqc+1xNKCscPB/eoQiV0pJpNB2sfln0bZ7NF6/zDD+jr33F3uPYM+8yn2oPHtbiYAIEOS2zRl2nRUY82YzbxhU4FWe1wfZyEMueT5Prc39KM7qYIjLuK36Vp2KOusY6HRLPmOWychBjOmloefEB4pQUm0CwjQCKzcXDgn8/AsS9uVS9W94oSAQ5B/TwVPA+COft2mmDbVobkUCp5dgdo9HtTcTEF+OmuAgc48LKqDuiT7kMNkZSv5BgfE0Po84Mg3R4Pn9Z6lz7Al5zK+RsB2AhfVE48qoXEXBC9DhawrKsZBGSfw19a7/tnpYs1qbiHZqxSzl5T2xLYgFuJRJ6k7UEMlfUZzZRkxUvqvRGczSmZBagy6uijLVvsMUqwBJD97YuieCpaJvDJmBRvzDi3vJ9MpkOUUvkit+gvQkcM0HnyQ0QFAgp3P5i7wgnpmNeALpwemje2tJDk2au/jPoisyu+TesIBT9L+aiXhkJ4JpLKvOtvL1IEBDoZycD2I2xPVqMMP/EVW/O5tpGLqgTzap2xq5uIcds16R6C47sXZ5tLP+z+vNxeR7VPci8AQmJ1EJuFrZ9YFRxmZtQ3O4BaaJ0spVEpmTgQWPO1qg3elRLyaHAX08EwkhoqN0P5MV8EEgdUm9b4zSFFHnmEmZR6f6iTSiFEQ9i7EdkHv7sogH/zRUW0lwrf6Q3DXMAnFEZ+7phkliwKOELINUtx82nnR1zqvcrUzKobHeGEBrPrYT8LJAxC49AmzgaYyI62iFURy3jZQU47tBj7zR4cvPOxnjkwIS9ZpvqCOruRmGktGIyShDJdnDlNkt5pS/kKGpcRlICSjjduhUxsBKU6Zlbx/GDRgE6LQ60eLeq8d7ODOrfOKMhAwRQVnzJXfb5xV4ECILdoLuTWd5+0y9EnVBeo58u9U3VdEAoEPpldhc47wVSMiQFKtYgOLyrUGjnU6AjQ6ybdf/tO4tiuQGyasMui+7ESm1t0EBtkhRmYu4fUcOrgsPFW0OSdfw45sFAe7nHaMIYuT1CfY2ra/bpk5VkxNNfWiiRe5/TVB/P0AhRdkBFaEUCFCKx15lidnqmk= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: CIYA60yYsSNTZviyA4lTfTqYDBmXAgGvKvUo8ELnK8TLnkPGlM/RoSAGb14MEi9+ydWuXw8E/+3F/CBUgsVDy7xL/pD/tTfPO0e0pCHexrdzxna6iOs+OBUoql/ZfaHQI1UsUBG3OhJBjtnGN7DY4Mk4PK05z+YkUC61UGCYrTMWzDsbGM6P6NyCeKctQKsoib8IXPhz+ngXQ/Z34gizWpSksUOkoo9MXjxSy2LKFD9Z3TY+rxXyAS97w0ssjWTGKrhtr1NWr0vjQHwft53735STLBvIy3TijlmhwX00SqrprpIofQQpqO0+phz7UcAE3N73ZT2B0viN9MnkMKe/a+GkFSKqj9/IcF9KS1H/FmS5wx2hMhh0t1NgUJ7MjFbLyLYeaqlqFwjV+QcNXqjtcQJNCaM+IszLq4UStecahJQeF51SCJlF8FwSeL5KbNZFWkzg0uFiILpIrd9CIpVvyU+KqXoqqMuIfmw9hUdW/QPI7Ptm7QjIrtV7zw+Ul7JqQPD61xEAZiKXzOErzkArnT6XziXTnV2e6LclyQOf/LZBM55gyTOGQhM5LoJSyNJuR9JlM9KSU7y5VBjlD6dwlClQ58H/oWCG5b8mLEijmvo= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2d0447db-f9d2-4770-0a64-08de31754000 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:38.9024 (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: MRl/gMjoXwX9kXz2LY06LgIx6C8XajjtFRsSnOvFPLj3C9EpWjuY5BlCLmLfoMMgkvrrn4p02zk9I4+QIPWNGA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 malwarescore=0 mlxscore=0 bulkscore=0 suspectscore=0 phishscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Authority-Analysis: v=2.4 cv=ZfgQ98VA c=1 sm=1 tr=0 ts=692e9693 cx=c_pps a=OOZaFjgC48PWsiFpTAqLcw==:117 a=OOZaFjgC48PWsiFpTAqLcw==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=pU1U15aHlzP5GH1fD6MA:9 X-Proofpoint-ORIG-GUID: PSQ5dofT4BRDU0aP1_bFw7ZmifmX8Qih X-Proofpoint-GUID: PSQ5dofT4BRDU0aP1_bFw7ZmifmX8Qih X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfX6NGBbw5VXDgx Haiq9ozlR4HIQuGXYmko1VOR2OGv1jYG3+oOhgSyFvabwuPRpEVzdX3HUw12+KTd+GAtXMmNujH 77fDUyYXYFGAITakktCjHHcyIXZTYWGne0lfAa03maWpFFSsB/Zz3wKz+zDQL10bnwaEXX3dmnM bbrB0xgycfYRxWB1ILmOyGmhMlB/8M5w9dEKIWE54xmJCpZWbVcUa4ncInvLWK9RH09ySvGNBh2 qk1DREEbpxkn87WCVc3difKyYHxq1/xco1lYOiCPunaD+8Rc8xc8KcPlMU80TXmR4sPIx3+KU6Z ReBriIvhtOa0OW2UKc82n7SKKNoT4KeRZL/bTmzVm2V1nvgvyLCDIAiG6jcMRtQq/5pH7Atiq2N sTZxuoQLqYjopjfuFR1vHdqygbbiyA== X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org No functional change. gas/ * sframe-opt.c (sframe_convert_frag): Use SFRAME_V2_ prefixed macro instead. libsframe/ * sframe-dump.c (dump_sframe_func_with_fres): Likewise. * sframe.c (sframe_get_fre_type): Likewise. (sframe_get_fde_type): Likewise. (sframe_fde_create_func_info): Likewise. --- gas/sframe-opt.c | 8 ++++---- libsframe/sframe-dump.c | 4 ++-- libsframe/sframe.c | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/gas/sframe-opt.c b/gas/sframe-opt.c index 65520734828..690617fab44 100644 --- a/gas/sframe-opt.c +++ b/gas/sframe-opt.c @@ -116,8 +116,8 @@ sframe_convert_frag (fragS *frag) the fre_type. */ dataS = exp->X_add_symbol; rest_of_data = (symbol_get_value_expression(dataS))->X_add_number; - fde_type = SFRAME_V1_FUNC_FDE_TYPE (rest_of_data); - pauth_key = SFRAME_V1_FUNC_PAUTH_KEY (rest_of_data); + fde_type = SFRAME_V2_FUNC_FDE_TYPE (rest_of_data); + pauth_key = SFRAME_V2_FUNC_PAUTH_KEY (rest_of_data); gas_assert (fde_type == SFRAME_FDE_TYPE_PCINC); /* Calculate the applicable fre_type. */ @@ -131,8 +131,8 @@ sframe_convert_frag (fragS *frag) fre_type = SFRAME_FRE_TYPE_ADDR4; /* Create the new function info. */ - value = SFRAME_V1_FUNC_INFO (fde_type, fre_type); - value = SFRAME_V1_FUNC_INFO_UPDATE_PAUTH_KEY (pauth_key, value); + value = SFRAME_V2_FUNC_INFO (fde_type, fre_type); + value = SFRAME_V2_FUNC_INFO_UPDATE_PAUTH_KEY (pauth_key, value); frag->fr_literal[frag->fr_fix] = value; } diff --git a/libsframe/sframe-dump.c b/libsframe/sframe-dump.c index a1a67e98fe6..dc856cd1356 100644 --- a/libsframe/sframe-dump.c +++ b/libsframe/sframe-dump.c @@ -156,7 +156,7 @@ dump_sframe_func_with_fres (sframe_decoder_ctx *sfd_ctx, /* Mark FDEs with [m] where the FRE start address is interpreted as a mask. */ - int fde_type_addrmask_p = (SFRAME_V1_FUNC_FDE_TYPE (func_info) + int fde_type_addrmask_p = (SFRAME_V2_FUNC_FDE_TYPE (func_info) == SFRAME_FDE_TYPE_PCMASK); const char *fde_type_marker = (fde_type_addrmask_p ? "[m]" : " "); @@ -167,7 +167,7 @@ dump_sframe_func_with_fres (sframe_decoder_ctx *sfd_ctx, func_size); if (is_sframe_abi_arch_aarch64 (sfd_ctx) - && (SFRAME_V1_FUNC_PAUTH_KEY (func_info) == SFRAME_AARCH64_PAUTH_KEY_B)) + && (SFRAME_V2_FUNC_PAUTH_KEY (func_info) == SFRAME_AARCH64_PAUTH_KEY_B)) printf (", pauth = B key"); char temp[100]; diff --git a/libsframe/sframe.c b/libsframe/sframe.c index 8c4159e27b5..16fc3a3f11b 100644 --- a/libsframe/sframe.c +++ b/libsframe/sframe.c @@ -209,7 +209,7 @@ sframe_get_fre_type (sframe_func_desc_entry_int *fdep) { uint32_t fre_type = 0; if (fdep) - fre_type = SFRAME_V1_FUNC_FRE_TYPE (fdep->func_info); + fre_type = SFRAME_V2_FUNC_FRE_TYPE (fdep->func_info); return fre_type; } @@ -218,7 +218,7 @@ sframe_get_fde_type (sframe_func_desc_entry_int *fdep) { uint32_t fde_type = 0; if (fdep) - fde_type = SFRAME_V1_FUNC_FDE_TYPE (fdep->func_info); + fde_type = SFRAME_V2_FUNC_FDE_TYPE (fdep->func_info); return fde_type; } @@ -806,7 +806,7 @@ sframe_fde_create_func_info (uint32_t fre_type, || fre_type == SFRAME_FRE_TYPE_ADDR4); sframe_assert (fde_type == SFRAME_FDE_TYPE_PCINC || fde_type == SFRAME_FDE_TYPE_PCMASK); - func_info = SFRAME_V1_FUNC_INFO (fde_type, fre_type); + func_info = SFRAME_V2_FUNC_INFO (fde_type, fre_type); return func_info; } From patchwork Tue Dec 2 07:34:09 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125735 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id BEB5E4D8D1F3 for ; Tue, 2 Dec 2025 07:38:26 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BEB5E4D8D1F3 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764661106; bh=srVwLMxRxd+J8DJ+AfG20pmuhIIQ0u0MWlZBlvfyeD0=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=LGDauBm3JUCinc85/TAk1TeVf93Bfa1f8YrVTPYcXhjV39D6M4By3dBfZn28v/0f/ DM2KKEuyx4h/PQSuVIbpNt18b1dChcvskFlyMCcw4muNdP7ib6ZJ/8Z36u6aesOpN8 UO5lLMCBGpwiNctxBtQTOSbkYaaBWMooTuEuc840= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id EB8914BB3BC9 for ; Tue, 2 Dec 2025 07:34:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org EB8914BB3BC9 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org EB8914BB3BC9 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660886; cv=pass; b=RBf3TpHKo4lHO7dYy7h0R5IKWjcSQm7wPqZ+M9NICvSMej5B4VF/Iml0RkVdvg0UZR4rzmO6OP6lKwGcVQ+ZXGHLDb7dkbFW9MU887pYPHFQF2Yby3hfLrrdDIRJnKap1fZ7XG9+uswrJOuGxJK0LXHY+tCDtxNcn/ze7LXNHlc= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660886; c=relaxed/simple; bh=G9hS+wIxNe5kTupiexbLtOcDvF9/zWGBFbQI6n27HwM=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=Ddamlkv7vJ7hDy6/u3mJmUnv3fiKu3Th2ONHR+RnJpT3Ws5PlWybPIGg2npBUTDXZTCechs3tZ1M0pCRWDTlYu8VyfsGHVyoUdpQZXK6MoJtQZ9IEZ0eUUlGQs61K4ePMR0AGytTaqCey/lwKsYyyNCPFN6Eru+zZYZvMvQXXAU= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EB8914BB3BC9 Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NdmK3433127 for ; Tue, 2 Dec 2025 07:34:45 GMT Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4aqrvc4bsp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:45 +0000 (GMT) Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B25hlY6012020 for ; Tue, 2 Dec 2025 07:34:44 GMT Received: from co1pr03cu002.outbound.protection.outlook.com (mail-westus2azon11010066.outbound.protection.outlook.com [52.101.46.66]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq9k1h97-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=aslkq/WsKcxSZ11q41pJTLIAwSMa1kZ5GA18QT6dZRjfV1iOskgvWn4HH6yMXeg0rZ0yFGj1gyq6Ut38eb+ea6LQSyeIvpJZJE/BIsHXSuDVATRWrKt6J4Y9kc9f5+EFylv2ZBG94r5Rz+9CYnlKtvRnky3F/itSkPIVsaF+X5JVPyrEuKWJ8pkMjloyHJFyMEh2XvnxVvLLx2mh/mZ8idpu/daZPSknolyr8EZmiN+souMMa5btGSSOQGiHLo5D9LVuxCF44fhTRbVqVHEyVMiVgxkpmgooWx+rXAFXapE9gu9iGuKTuCZ0rh9eQO/sNV+OqCI94yAbWcX9QXXjLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=srVwLMxRxd+J8DJ+AfG20pmuhIIQ0u0MWlZBlvfyeD0=; b=czIv9WKuyCaC9++2CsKUtzxEeV2I78KRKkBeer4zKOxRSNR3uhcXCnMOu22bMbNw2hP2YpIcGuEJZt/sQR6PLLPpRqDapcVnnmKkV06uYxWAV6d2dqxas+CvnEJTUjvMbxlr9ePX2bt6SD3tkQm0meoewUmgEdMbHU/dlPW6U6dn2O0PlVkQeazE270ZAGQM3mCRrcECE9MwZ1n5eRuLk/gKf0oge861j8w3W1Aovso2RsuvViRXZmfRTiPLDFoLVAYYCLQneZjnWX/yTJvblG7eAs+L4Q5Kt9KYuf0UosykmgmzE1cAWc+VnKjRgzJEqYxuTiL/uz+CVIPzXJMrBA== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:41 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:41 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 08/13] gas: sframe: add new sframe_xlate_ctx_get_cur_cfa_reg Date: Mon, 1 Dec 2025 23:34:09 -0800 Message-ID: <20251202073414.200246-9-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0200.namprd03.prod.outlook.com (2603:10b6:303:b8::25) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: 36a41135-be8f-49a4-14ab-08de31754196 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: dfF+GcFa/0k+i+TeM++pp1KZjxvuyi1zDhb+QBLWGIOCudtAxb7zfrBdLC3CXe41Kcfd7Os7EF65d9NGLl7NfiHcSkp0+RjArIk9JYDXhEdWY1zZpFEETlUQmN0YCKG2f2MdTIG7EqUXJIJvXrhtDAXjSkbPKeUQa5x9lR8PylMHTeZL5x23R774z+YFQcZNyLCK/aR1Jt9KbD+Uc0V4JG6ba2QX23qBl1mht3hpUf0Qz9wnXlk0iobzjfBLpwnj4hyVrzNXTqEx+w5gv6No6Yn4Rg1Qxsx8y7u6u7NP6DBqU4ODTfX3kebrHVPzbF3eQl8Z0a35c21TkohjIuGFzJ+GxPQt10XLiDO445wYoPG14b5wRakOCsNIcflZ9ZqrzDhcpzDzBVFy9EVLGOlflwazMnG90YaBBB3tm6X12kybyZLU1Fkmk/BwXeS52+S7jN1UHoVPUWZorAz1NkodwvtZdJlsa5mVMaNIKeh3rQcA9CRJSFdPMtJPLF0yaCpaU7TVzM+ThBYS2p2pm5HvmZQWoH7zjTXSBqlDhdY5G/1JdW9/dN6l2m+KiGXe7RgTPbEiFrxfqE4lANmUUZhUuSauRv2p+Qr+iTmFT6RXkhl/qFJf/Ix1rSnSU8ffJ2DwfX0xMe/kf+SIoby+8ZI9i6j1YY2XWY6cbrV/UyXjbOawISZZfnICA20jzp85J29uqircZSj5MGfPaxBIwzyS1AR67lyXGN9lDThVAqW+JKdBOjQxoE96YCovRAhZWu8fHwO/Mo1wrsu3mVZs+KSLpxtNHcP676s1y6pSKmS3NHEi19VbI098/z/mJNgBA2dbudC765bbr3j0Uw/cdV4qQAsrbkgHoHYFtLFfttFYGTW3Ac1J1lq5MnRpq56NCiymMK0IDlZwuZm08R1gpqMHUQlN3JpHgpO4BmFxy+/eDhcBul2FiIbscqQhcp2FAgoL7IUyXlQa2hioEyQcdttgpJ6nk2b6g9uMRp/i7+KnqknCuMyBsMnj/9TPr9jd/0K4TzZxrPoWXsQ17QDeOaVd36sU8K2aMPcsUm4QjO5e97cDsfrHmgyYXa7GF5BpViT3pomahxc1h0T0pRtQKYZInlXXg4TNrGK/WPUj6zdqlcCIiYZT9UVK5shsRAj4yXmBM7gTQJvaHLAvdQ/vKYedHBZS7U0tnvhY03697REvoDiY6Hb6BqdH0h59PYnv6zOL8KmK4SG35Bp1wcGzs+0l2tCx/+jhhMSaO+gAXO7c0LYVla1Cyw5g/NB09b2SvcXnzaGdpa+wtec2JE8kASAfQ1j/GDGqaHuS9bAYaOr6F3Kr0OG332VV2T04XVJ7zmwsp0IU1ROEm+8T3nvKmDf3qjl7nLk49zzROm3cSLYQSUeaV8I3CjQZEE7G9lYSBN/+ibdFXx3Q1eGQGgPIQT+siuhJ/0wON+VxNelrEsrpQb4i/jhFJfv9hvpd0qH79Hw0 X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: xcSu7QwNuBbtWSJnq7At/D7vSykC3gA38+zFM3oxBZTuJhdnaRkw/3Nc1mXfwW39V4O3doy1bzSdd6l3e681wNLOjso3q3a3q2rI6i7+4toX8xXwiPTKd/582Jq7FTnaoMUwkO4PlCynsDide3s+8Kte8xC7xWhqa3/h0nH7uwbUsFmFsMBMVSGHHSA29IahdTpClMeATn3sqPYKM05MHuEfatz3RLKJHLWwXfCvO2W/up+GJLjN5ToDr/IqbOiudWHHaOttv/e+GdJkwEHo2VnJ/6tKPoKoH4jon82YcWF7iHCxSPmUVrZyr9jr2NcU+2oSJpSSo1kwqX0Psk5Ckwfi8UnzISooQMZfVHnvnVT5gdwZpMXZiSwPmz0pAgW4gv7rIhD+i6xG4wx3PiRzmg0sVxHmEd1PY8AbZm9WrL4UtOAqHXo4poRfRTBIcGWWOYj0DBOEnXH98b8YL23NZRkUXfBw6nsf7z6blmEo6yPcTEhf8iEyi6R8JOmvf8w0beGIfsYt6wiHLLt39m5rWc81oJp6DNR9qh9uBxecu8rEs3kGKwZQAFaJrtT67sHGH2BHGFdnTMhaWi3UMN5EJxCjJ8rk4EDfg7q7VdT3F5li2bH6P5CFb66Nkk87QS1SMYAqrk/mH13pL1LqAwPThuTFWHBFxZlUUss6GEJ/8Fv6rJiIxOBbmiuIuU74ktWQNDDATntjBlueHoFAJW159RfRHsiYxmliywbn9mYmKMMv++al7cBeFtqRJw4ZWugHCbaf4zTRfSOKW1mwUL6HUdmWUhtx9svGdjXBUEOoPLjpmz+Us33vXAnfowV6KW8QBMFvb0UQbD+Vy4FRjvZD1BEY7D/sGc7HfiHq085/jUFwBlhNiQx+OzHzA+JdQbcamL65LnjeIwiGtfr1+4Lpel/mdLx5fy+ahQ1T45HBopgYKDcbqtd+UqVg2RtW3ZYW73aKxCMvnUYiDVNCE3Ab5F0VCqC6AaR0PJD3XBSQ1CMFGp3vki5TAIq7wlhNTCA86VAfsY/Xz5kfhn52lix+LLF2EN9M89a58dHfqAGheoSo/Xq9pKEBnV91IOqMlKXazC5trTwHfjOi6tN+aFXOdKlG5okHMu6y77R7jfr+cH6Zwr5wCB9m1hs8BgH5mPppEyyPk+YWOZRWiHJf1b5De6yRxpfWIp5mBRb5LIQy6YUw9/T0lW2KjonkCs2q7Jqs+M+1S00buNrJ+PmN9GpHnUS5qbvBLVFHPEmh06hx6hb4b4OPCvtGooMCHAiYtaYpLwSIzXF0T1weHUlC4BON9guFIOeuBxGpiH3msE7Yo61ulcbOXEuUCK60CuzFJIi1kjgr9u6qfHtyP9AdOmxfgCGzOWEd4JL3pZuoShRgRrg7quGs3Rh9uBC7bgJvaDM7b9EvfUCogBi6ZtDNI1EM+BUuqSSXkTQy7Yh/8Wznlkf/V6fjr+DVCzLH0rWzjwGdETeF2QjYFlaqFUr89XZ0hG2elgnbryyjT5Go2ZI8SOf7PvrmXhhnP/gTqHQ4OrM+JLYKy1WAia3iaXWE9tr8b3Md7hdLHpIwniCKk4BXyOppvy08z9iPTlP1sJLntS9qTVHzRmpd1FxyWuhrGyPrc3eKVKecOroxztv6kuj4RBc= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: tQyGazuXPgcEE6KV6y/FXi1oKfY4eCgbdQh3UC3orCfRmkuk7+iShH1kWKrbBSiW0oeTE8znlHvl25bKnAmNEruUubQPgkV6sSQH1Gr4ERAZ9nZkMOxAFrYCt+9iiLKFCR2S4dJcrn0/dH+jod0IXjLbzNY1MyZI6tw6Z91plamCn0GQfzi8UJ1+/A/nDvItXNuQv1k5OZ/KwxCvO8nMDCC3tDbt/IgqiLmJRIw5za4pmrgFfjuzpNRYrFXHtuPsLjua29uTyRCZVQ6HQsQR/AulbLcasnJNvy3qpxwHchqRBSu3b+414BYqAvut6q7bvQn4cH8JAb3xVhu0UC4MUhjgWumsUjcOlO59/x60POXfe8KfOrc5O7GwakTvLbmGRlsSnAp38KFZ9QtqMeDRCN9nqaW1knK4IQNgZToYB8NShj/i3FgAiKZ+r6tTqqpgyOWTJfQuMVINnk1Z075mgUOjN1dyrFpnD/n8obvr3qIaH9iQF9xkIs+yUsuXEZOP0dPZd2LQYEn8TIUl8Me0VXIiuhIZIq4AOS+Chbduyy5cBOM7cypDnBr5TXvEoFCSFiWckrtmATffVsKUb9p0tj7mfLFIQF/E81fQeMmEb0E= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 36a41135-be8f-49a4-14ab-08de31754196 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:41.5239 (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: FQnJ+WdV1frqDF7DtI4VkXHUPRhmopligONPhEYldoozlTCQB60zaiGVHb5tMVEGgjgT0gsmcAOve4tOTLaCcQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 phishscore=0 adultscore=0 suspectscore=0 mlxlogscore=999 spamscore=0 bulkscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Authority-Analysis: v=2.4 cv=ZeYQ98VA c=1 sm=1 tr=0 ts=692e9695 b=1 cx=c_pps a=qoll8+KPOyaMroiJ2sR5sw==:117 a=qoll8+KPOyaMroiJ2sR5sw==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=CHo_7z1a3VYOeNmA5AgA:9 cc=ntf awl=host:12099 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfXzsPLGuWHx4c8 Yf4kqGcI9wPHjpElYuDzfM9iKvtu/OApGhaNsxx+nFHiyYr4aRfNybTFk6gZgwnWB9BQCZNbDaf P+0fiTE5RCLpTxjd8pkE9LS2RuQJup2SZjBHFoXzEJA3ItBkb4LX+dJhLGUj1rTKeqYhYqw0kOq AP0tpPJ8Tv9A0QgJsUqUYqU3588J+7Ag78lalGB2PQ8zTYjujVay3/6bkftUWh/Fz4Qf7fU4VQe /xNUO49J4elawAoYKARFJto4k+dpayNW0V3fcyvU6OGJwI6hYJWsveGNIGrl2FuUv515elFSTiH jvR3mdqMygjn4meO4yDntSxrJUtiL78V5YNP5oZ/hoKPFRxzTRolanzyUvSJWQH7yuybtqBUb/2 T3W6/cbvhXm3UxmGjnRV5oBvV4jSMyTpMVpFlk2AKbLDStapDo0= X-Proofpoint-ORIG-GUID: zbH-Lr0yOfz9Euaaen2P52blG3r3ri8d X-Proofpoint-GUID: zbH-Lr0yOfz9Euaaen2P52blG3r3ri8d X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Purely cosmetic change. gas/ * gen-sframe.c (sframe_xlate_ctx_get_cur_cfa_reg): New definition. (sframe_xlate_do_def_cfa_offset): Use it. (sframe_xlate_do_escape_expr): Likewise. (sframe_xlate_do_escape_gnu_args_size): Likewise. --- Note: - This change was initially thought to be useful refactoring for a SFrame V3 patch, but currently this is not used by any following patch in the near future... --- gas/gen-sframe.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c index a845c20a54e..41d8b5034aa 100644 --- a/gas/gen-sframe.c +++ b/gas/gen-sframe.c @@ -941,6 +941,17 @@ sframe_xlate_ctx_finalize (struct sframe_xlate_ctx *xlate_ctx, sframe_fde->num_fres = xlate_ctx->num_xlate_fres; } +/* Get the current CFA base register from the scratchpad FRE (cur_fre). + NB: this may return a value of SFRAME_FRE_REG_INVALID. */ + +static unsigned int +sframe_xlate_ctx_get_cur_cfa_reg (const struct sframe_xlate_ctx *xlate_ctx) +{ + gas_assert (xlate_ctx && xlate_ctx->cur_fre); + + return xlate_ctx->cur_fre->cfa_base_reg; +} + /* Add the given FRE in the list of frame row entries in the given FDE translation context. */ @@ -1139,13 +1150,13 @@ sframe_xlate_do_def_cfa_offset (struct sframe_xlate_ctx *xlate_ctx, being interpreted. This FRE eventually gets linked in into the list of FREs for the specific function. */ struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre; + unsigned int cur_cfa_reg = sframe_xlate_ctx_get_cur_cfa_reg (xlate_ctx); gas_assert (cur_fre); /* Define the current CFA rule to use the provided offset (but to keep the old register). However, if the old register is not FP/SP, skip creating SFrame stack trace info for the function. */ - if ((cur_fre->cfa_base_reg == SFRAME_CFA_FP_REG) - || (cur_fre->cfa_base_reg == SFRAME_CFA_SP_REG)) + if (cur_cfa_reg == SFRAME_CFA_FP_REG || cur_cfa_reg == SFRAME_CFA_SP_REG) { if (sframe_fre_stack_offset_bound_p (cfi_insn->u.i, true)) { @@ -1506,7 +1517,7 @@ sframe_xlate_do_escape_expr (const struct sframe_xlate_ctx *xlate_ctx, if (reg == SFRAME_CFA_SP_REG || reg == SFRAME_CFA_FP_REG || (sframe_ra_tracking_p () && reg == SFRAME_CFA_RA_REG) - || reg == xlate_ctx->cur_fre->cfa_base_reg) + || reg == sframe_xlate_ctx_get_cur_cfa_reg (xlate_ctx)) { as_warn (_("no SFrame FDE emitted; " ".cfi_escape DW_CFA_expression with %s reg %u"), @@ -1643,7 +1654,8 @@ sframe_xlate_do_escape_gnu_args_size (const struct sframe_xlate_ctx *xlate_ctx, struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre; gas_assert (cur_fre); /* If CFA is FP based, safe to skip. */ - if (offset == 0 || cur_fre->cfa_base_reg == SFRAME_CFA_FP_REG) + if (offset == 0 + || sframe_xlate_ctx_get_cur_cfa_reg (xlate_ctx) == SFRAME_CFA_FP_REG) return SFRAME_XLATE_OK; warn_and_exit: From patchwork Tue Dec 2 07:34:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125729 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 31B544BCA42E for ; Tue, 2 Dec 2025 07:35:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 31B544BCA42E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764660927; bh=CA+32avCAfPa4gDdvqlrYMLdNODDt2qRrDMVBT1e4/o=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=L0w37g+1hk06Mm67tv3mLFQDP0Zk68nCcxDQ6qUTrAeiRX3PPXRYsvVOrI5KbF3qp fKiqHqVzIHqsV4O9XrbmmRLYc7T2FK0KkpLkuCJUNi0Cfh/45oRGgGvT1856fx9U5W OfeKf+v8n1ENrcmMvCjunh4GgFZN/1h8vEh8dxRI= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 78A974BBC099 for ; Tue, 2 Dec 2025 07:34:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 78A974BBC099 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 78A974BBC099 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660888; cv=pass; b=t9r9SJ9WwpdUodzRNV8tfgRDokQ/HXAOhIHV0E1VzWBpQRrYV1Ct7ZmQVVwSPiPa4NHTf8Yy6+dZGMTfr6bhRbXIQmu9BZ4yXj3eLYaWA6qJGhLnAabwbGXHZP//x/WvGOLyBWCw+fqGfN7e+wd40fyeJHbhO4NM6+UmUOxboWQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660888; c=relaxed/simple; bh=25wTj18Av+SVS5XaRgzmwNAxTdaaYEE+AnOePUYPvO8=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=Qd7AsQlXCiNA97BwLV7yBJ/vKT44X7ZVF1vkLyN5wQ25qAvI0VaNUNmJmvZzf8OrdS//Ej1GXUv9doPOe+8b0JhgFUTTDGccTpuLvujVcnOKWFHUFiE5vUZL0Twci1+puJ+RcUxSkpTQvH8aPcNATn3a7GaLR+LvG0Sbg9GG3Hk= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 78A974BBC099 Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NQMD3306887 for ; Tue, 2 Dec 2025 07:34:48 GMT Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as7u7t8hh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:47 +0000 (GMT) Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B263eOC015018 for ; Tue, 2 Dec 2025 07:34:46 GMT Received: from sa9pr02cu001.outbound.protection.outlook.com (mail-southcentralusazon11013000.outbound.protection.outlook.com [40.93.196.0]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq991b0s-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:46 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=wCkDyaupgW5h/7cjZgJigNeMAuJ3ckE+XtBgOH3SgEmTcJucKp5FEdHPHbZBxKxnLgmTPiLBRf6y2sA2ZkCRVhsty81+fmtqQed9/vzwfzvi6cra14UU14LRyTCElIJYIW10ovyp2UQ20mzUbwQkBCPGCVM2EYzJsgEfn0H93JXX7XkNYAc3D5bK07zuymp0RIowMBu/i3gFQHeej76a/6tuTwCW4KvZIi+68TUefolSX3qxT1k0xeLlw23iz9BiUgzzMGKAep2eSluOk5rrcvHceR3Efi15p9IOUAf+6OJirjPVABMd1UNrh1I5GGG7+53OyiFyqkceTcIo5fKDDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=CA+32avCAfPa4gDdvqlrYMLdNODDt2qRrDMVBT1e4/o=; b=EsTliwYwfTko5Trn9gekclK7SPitheuFSEDm7MqgWc0n9zP9IHBMksyfpLyx8ICXUpIlngfxI9T9hyPm9QzpfNkjJVAStolsXSY46hqRLE+MfJPntB+RNxtiWZHuCzKdok158+OpTFv4xz+afBDVLGWymEq4G7+zEgqrj3cBXsq+ihZgw/HTMiQ01/ANf5arGd1us+Zj+ApX5bR4bRO6XbL/t9okLd07tuPET/ZuVKivi0cOn3OC3BRQORpD7HVWdC0Jq4N5uLFNOanvvZdQUjMxqe4RyKqzq3Ir7gU7PHvoci1oSfFwkQ+YpFZHt+DBUDO63EmCf/en+aPucLLO5Q== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:44 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:44 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 09/13] gas: sframe: pass SFrame FDE as argument to output_sframe_row_entry Date: Mon, 1 Dec 2025 23:34:10 -0800 Message-ID: <20251202073414.200246-10-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0195.namprd03.prod.outlook.com (2603:10b6:303:b8::20) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: b428d0b0-e39e-44f4-93b9-08de31754323 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: fh/HBpG0Ousw47NFGQvxls8FC3oliWF23d3Q7V3U/B7lqdPJwSVrddIcvWxCLuEJJT14TbnyeHIuEh4rajS67y/5oB3cTcE5xsVwH6IHYSe6cab2ESj+4nz6hU/hqt94KYKXQwaCFnm4YGSTaDgJVp9rKzWrqXtOSdzswVC82ddMVvCAYnFr0IxUAWywAnWehLjRHGaSSQk5N0otNuE4L/IDVFBZSY50CZcSZLoAYf5tqwqYKA9+We4vXZdy66Mi6/sbIK/IrviSuRb/ARkn6OCp57Qrv224dstFCY2sILqFm90uTm6bHp/6wM0sc2kbW7Un45668ji05AGX3GPzcZD2CCQAZIb+f3+8cxeYAj1+vMxx7STiP6GwXuU0xU64ntqAz4GZycThXWFn/1Far7mQEyANGduWzGQkF5mAM7hvnTtDH8WRyVn5pi1qZt1VtBSAVP68Mw8TwAn3Et0YmWUS2H5CmqlwxE2FZhn8VHdfalTEPdQR8hU7CTXbNQJdv66uSsOU1+JJlhoB4m8yUYBlNeQ/kTs/z97OUoI6aS4t0VcUpGAWuyt6yoE+ukhXN8ai5gFNegzAj4WeH61qXnz8buGtk1B4SeUxjtPTYQ374kGLxEV160uxNgeeAT8UbFlgFmSdYnFJt3ddAxTaU2qF1XuxhLDBu1Ie3Hx/+2n+dTuHzBi3H7WSnV1H6XSGFPi4upBpj5B+H2ZW9Iw88nghyf01zfTMQOnrWk88BJ1W866IWxhPM05y0CQ5zT0KfPhaTXH+Yj7ptcGNTp9Qw9KEAFnn/O8KD27BN/MOX/qF1JWQSkPDjh0hc9GV7JCWI+7k2MROTr6xHfbfwBhiJZ1kOhdtZ8NumfsGYVfiZIrBBB4s9MmDGTs5Ry2HjKzZc64vQDcXEgDhzwc5q9QUczLgYgU8zFrf3t1gjN9nV2XS8e/lXnG3rVXQNbnQw2AR9SGRYnnGssoE2O0v3fwRsVwAPpVB7ownrIPY5Nn6ItxjJLAAq9jUn5GXtwI1A3VG+fLQMblyWfQGpomrUELNe+82D71MVKd1zRYj7gjpxMnrvmN/C5KOyEdEGI5xpC5GPOV5khzq80zMXq0a03bc7XmS5mO1dxU4xwxTzjmFZPBvCjs0As/LnMWyOnozvozz6i5F9EFNhSQ8zFcsNtH3IjbIG6FGLmta0IrvHVRN3lZyGtJdipRVa0xT7lv77I092Zi4FH+nETKIFWvqb3VVOinbt9iiybN6t2hBY+Gwp1XPQvGXAogJD8QDi9ecTolAxlhFF9bCdbvIxqqWlYkwSXuthDSsBoXloTgwbAMJikflv2DSb7HcpuJQereEtsAxSo3RzbrrQmpVGQwcNYRnhUwy883usFE1BCiKj9qEbk4ArsbQWRzf1zY719O8MO6vpl66CkjCdyPTIv1dXVCf/kSnaNxamLrUHsIvdzWKqQjkxhLh3iGk1REC05GpuKqq X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: QQnD0dRHsGNICi2EDXzbdGYPwpbUVhEef/E6AiPVWsnCQyJ1e+W3SkEi+G3jfXqQ1JJ/rakqd71i05fFThHOn/ye76H+l/sz4QsReJ51Xq87Vf2GqS8rUX1BdWO5afss+JWSskCp0L1L0wUSQwg3RkLkmJtmVA2UbijxWZNhebo3ph8XrzRZS+QatHiy0969dfvmseI4mhSZJUdd3j/cCmyLl61VH6ln12WqiQQeNxAyeK7ntiwxtnJ4sQzLdkaOzHuvB9jxirL8ZXRxEtd+OBFoFRMpMzD2vOJq6egDkaOY/KJdIfoheRlQp7yWILJmeFs4FEjn2GLqZLGBihYpFKEHy4yzz+XlvmYLnstl3lklZ1fe9CvmQYXCFbH6RVJ0u/Aqy+V5f45c9vTDWUTVEe3n5mgOuL6J+IebmDZcOXeQuWlUWN3NgRGDq295W0bZroP0S9AE0vTUT7hIUtfVlRD3vzTjOX/1Z7bscw6Q95jzHWumMeL4ARW6dePo9RJ+ldH7l1rybPAd5CcUyLF1dw8rBeto7E2XK973Fo2uo7uZCt5HqYwc2BKtWjykLfbW8bTtkN2wC/f9WzYP6NNPmw/Ik9vXA4dX8+rnqF88MqKfrN4EvKrMw/7u/ej4iQh00lkb82/AN/fX9iXVITKoJjVeFKozLczfdHNe+eABHtjZZN4Qw93n9Q3T2zhZGhInhW+15AfNb40tvd4g5pwBhVu/IcE2xQF+hMkCESzYZNhboQ7S7hJwvbCMsOz1c2OZhA7u+Tv8Fffx7y4A7ZflahJsektTQgQQ2ovCetKdWBgfpy6g3m6FDr2TdAQSEzCABwer+qyzO2gB01qZAbfuL+d0i6QJYl7cNYhTdZ6tAGaOHH1QoCxHWryGgLYwxYYKya5GvQDwARUxo3Gl3CwKK+W55UgtOVEhagAQN0jim/Vvu2DovtBjaBPUyOK9/jL6QEQo/5znOkNT6p0MWGMgWMBLESN788nD+UQ5h2NAwOoh6tX4aDsc9QYix5YypZELNdlBbTQwZjQUWzD0hhNb51itYAyg9Q0ejX0r0v+DksR0dLks8P3oTbEOt3KJNmc9R9Tj0J3nZ2otR85UkFGM37ya2qQeedvuv8u4O5o2v8yV6l3QCsSbjIZHCIxQG96QYG9E3UogoQZ+r6+DGAqBXpRpAidtwsrmdRxzWbBs4qdjH5S8g0Yg9CoHz07bCCRCxt/epE5ezvJaZVVIqYg2hLJBJ9hsv0cqX9nbk5ZRg+i3GGl1lQtvxNjL9lH+xFUNvvb2+ihu8Febpxogjv7WGxXCjCorod1peJGmhkU7VXteMpHhrWyqRAubUvJW5cTksTKbLaGApdkSE4u/mpnzcb61YyviUSy7o0e6gkrUsC+iyXm98qg0j+gYrh4CiWBJMQ8wIAPd37esLYfAI4qG4nALV8/tw7k3znYQzxoiQfMLM68yQEqVYHZSQwCLAdpBwZZXB9xmFYX7E4ekFSEgNfW6Ashu0hUeFwurdr6Xoqv5GAlH/ESxeH7Lyjvt+lDF7eIRtjfMxonDyNvXJeIH3CupR53aw/sYbNQfvzR0hSGgBP+tOXFS+v2RjiVyBX/UOvHgYchSKLjVSM9v9fzUOo955eR7cd0S2ZXW4gsppzM= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: m83qAHxSWWKNi0U/PWA9tKC7AjLfI9Yl6E1j9PtLE/RHODjo8rysKkgr2Kq1me7A8BNRDgHJuoq2iFxQI1cwEjIth6sXGlNueOIz3E0fC3keuNNBHuu5FAa57HL2TKrp1FcdW9VlAK7GCUU1CinJFmuMx3UzSE80LgegMaUhfOOYhmx9ptM+rv1X25WGTjfSeyFaM6B4ATLIAAtE3TiuwHDv3OCH19BIWAiB8uufLaGqgc2zKTvIAB4J/Swj9J11TB/GJ7NoLXGDE+AYmLCCD4VIRvuO/hokqPfZb6MTr+lXgFAKRrNkipWjJ0FPKhfIklb2dYBaAVhB6o0a67Pt/vleQC7UwpRWg8jDf8OJiDyjUsblSHelQoHTNxtRYecfkPDZhUEVZoMgc8EnjT4G6ahXxJmZ56Cd2he5P5M5eRrolai9n2wFujratBMxbCe6c0etRFrv2o7NystXDX3cjaKj3YARSiM+ukcymwFaSYWUdKS7evM+Zch/1a6I5eS+5sGgfQG9qFrk6dS5jvsTALkceygBUVlAXXcGa9kiNYgKauKnkWK6WZvcydizgRdtnRfntuQ6EE8Usy1d9eDW1BwhHsOC9QaPy+S1tD8qJX4= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b428d0b0-e39e-44f4-93b9-08de31754323 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:44.1510 (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: AANvCmFEHrO0wMiE6qExwV8qVmMMIFtBqMIe65i2IX8ejP70cpTn8wOdqULOGUjlyJD4Y/rDL4uMlqpDsSUVOw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 bulkscore=0 adultscore=0 mlxscore=0 suspectscore=0 phishscore=0 mlxlogscore=999 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Authority-Analysis: v=2.4 cv=Rfqdyltv c=1 sm=1 tr=0 ts=692e9697 b=1 cx=c_pps a=WeWmnZmh0fydH62SvGsd2A==:117 a=WeWmnZmh0fydH62SvGsd2A==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=fEeQgW6WP2KkI5W7yTcA:9 X-Proofpoint-GUID: pacQlhxJxQeI4_n3cr3-zjbfMwgUPuL_ X-Proofpoint-ORIG-GUID: pacQlhxJxQeI4_n3cr3-zjbfMwgUPuL_ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfXwCYH1YsNLtaf ukGZbO3ksOxYVycUBntHDDtlXphth65b2W4oMaCChPnT01f34MIqL9m3QGQs53RqYxqXQBF8neG owcsEv097xJwRJissAcS9F7pAx/dTwXuX8mPdUlr1hWvxLDKWcJfDz6F6Ga8aXotB/+2h4J949q j/+AiFVTlAY3xlRddY5VHtelVKVPH54SZHlQzAGVL02U1SnEPVVhUvBZLTVV/HkL39DaUI2fVDA 7VEp4Ib5OU1BnqukoqOazMJ5vNKl5OrWIDtOzUkdPJVqBwm523JJQ4I1pW3YPrg45VGryHIr1yX k4z6oy0Wgfs+VreALuAmrJ3Ddst1p1HUdsdzWRn+n8JwANF1w65zJl31buzsKGOZJpzh29YxHx0 LjhtqHrhKPbV70obDZ9c7j3vLIs2sQ== X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Minor refactoring. Will be needed later for supporting flexible topmost frames in SFrame V3. gas/ * gen-sframe.c (output_sframe_row_entry): Use new argument. (output_sframe_internal): Likewise. --- gas/gen-sframe.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c index 41d8b5034aa..ae5a0c229c4 100644 --- a/gas/gen-sframe.c +++ b/gas/gen-sframe.c @@ -568,8 +568,7 @@ sframe_fde_free (struct sframe_func_entry *sframe_fde) } static void -output_sframe_row_entry (symbolS *fde_start_addr, - symbolS *fde_end_addr, +output_sframe_row_entry (const struct sframe_func_entry *sframe_fde, const struct sframe_row_entry *sframe_fre) { unsigned char fre_info; @@ -582,6 +581,8 @@ output_sframe_row_entry (symbolS *fde_start_addr, unsigned int idx = 0; unsigned int fre_write_offsets = 0; + symbolS *fde_start_addr = get_dw_fde_start_addrS (sframe_fde->dw_fde); + symbolS *fde_end_addr = get_dw_fde_end_addrS (sframe_fde->dw_fde); fre_addr_size = 4; /* 4 bytes by default. FIXME tie it to fre_type? */ @@ -851,9 +852,7 @@ output_sframe_internal (void) sframe_fre; sframe_fre = sframe_fre->next) { - output_sframe_row_entry (get_dw_fde_start_addrS (sframe_fde->dw_fde), - get_dw_fde_end_addrS (sframe_fde->dw_fde), - sframe_fre); + output_sframe_row_entry (sframe_fde, sframe_fre); } i++; sframe_fde_next = sframe_fde->next; From patchwork Tue Dec 2 07:34:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125737 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7F31D4BCA1A5 for ; Tue, 2 Dec 2025 07:39:53 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7F31D4BCA1A5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764661193; bh=hHEH3mCpRTCHqh8Pb54de5BpptUIuEGxOAdltGox9AI=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=r3K72M2Y9i5NmwhalJiPuCyEckj5EE3HuSPtLneYUXAK4xlHtNSdU0LonrhhZUq4H 9XUlVFIWQGqm2g77x3DHvkwzfxk8YVuvp4nhQdC5ocXZHJQeTXLjT1EV7zXaFUGOgm pmYXXC+/XDa/WYCK7APBMLr9A+zdCMw4H/NxHX14= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 2262E4BB3BD5 for ; Tue, 2 Dec 2025 07:34:51 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2262E4BB3BD5 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 2262E4BB3BD5 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660891; cv=pass; b=qLy27nGIpZrFwRaiSX1MutrcIB+GO7+DjghoTB2QuHVbhLFChyS8YJd98Ru3fuwqt+A5mn3612QOW0kPHLXSBst534XD8/h1AeQskf4CcABquw9c6ukvNa/V3GJb4HSd8C73pnpwzMQepbJjZ21iMdEBdb3ubLbsZevgw/j9cXU= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660891; c=relaxed/simple; bh=je9euG1wKqTcLn/FvqIe9bLy1juKYAl4Ukmk+vCkkDM=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=ni2We7f9X4/mfF/cq4loIvYjGbQ8svnxMEm+cziJwNYCbfeBhXFiZqnB/jKFBH5Vu1nnpXxeK14AGb7V50N0HywyShdeXYhH0zLHVsnBa+Bi2vlL1ckZNiawa1/IbUoxX4ep6Bf8PT/PokvVZrhmaglhF/G1DaQ/MEZvn1Z2XYk= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2262E4BB3BD5 Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NdQS3259529 for ; Tue, 2 Dec 2025 07:34:50 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as86ya6wa-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:50 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B25Vkaj035384 for ; Tue, 2 Dec 2025 07:34:49 GMT Received: from sa9pr02cu001.outbound.protection.outlook.com (mail-southcentralusazon11013044.outbound.protection.outlook.com [40.93.196.44]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq9k1qx0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:49 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Ut6GGTxlEKwz/rlExOxhqciLPnDoUwMTHtdkkIZ5m2y27ImzwXDXcYbRCBIVKjSK3M5C/CJp5/orJfihbGcdxSR1oDg+dpstHPht++O0OBBku72eydDYd4zqEuOZXsKq2ptGtjWYO871syQILOJ3R5rTSWyaop3KkKrLowb5EeByV6Op2Ben4DdZMWOkqwD6QjK7irvdlBPfWUlBt+rO9hkqmzHVAI3/Moy9AuRugNdN2Tex5jg7SvkOW3v3IVtbHaWhcx277srjam4Okr/vjnAPnLqIRrz+rXq4OyGLTR/1J8XqJYodEFEC4Sql0zK13BTQhEtuCERIVZj/b232+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=hHEH3mCpRTCHqh8Pb54de5BpptUIuEGxOAdltGox9AI=; b=LH2jbUFUAKjxdhldMhoIONhgPLBiRiuTizbCBJ0STW0rVoRZcInhlvwItLCT+ryO08eBb3Uq2EfgxBp9go3siPAwRbWceGKcUAD74dGa2Ce95mB+BGWopl26z8NyloWcwnAbrTJOgBnomVAcHt8BfkK/bW0nTv1KOZeaC7MA/TyDRBmoYWefhS2Kg5/wyudGf5BLXwymmVeNfVUmKcmmltnotGD4Qa07aWg381WlJQEQfgduZAwPuIzGOZ72PXEW65PvQFcM2piERXcH99wAfMry+akgmzpki/DdIYqQzrEpSZy8R8g+Fy5CYjSHTM4qpnz4IwvXZjX6HYwf2/09+g== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:46 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:46 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 10/13] gas: sframe: refactor out the offsets emission code Date: Mon, 1 Dec 2025 23:34:11 -0800 Message-ID: <20251202073414.200246-11-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0076.namprd03.prod.outlook.com (2603:10b6:303:b6::21) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: bec8e7bb-8f40-408d-aa79-08de317544b8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: OANpQceN8DtzosKObZYgfYm//WBGpQNwLDRUqikHuXRq9EGJIfoo7ejV02XfhRr52BAIiZFHcs9z4wtAJVEguSVjiOj24l9jOYz95JqRQi6qJ2Kfw8a1XTbPoL77gUlMgMxggBfCIrwZYJ4k1CRBmJOU/Gc90pdT+/5YEFkdkrMqe1hcLDlzOZsPBRvQw5KC2FDIvONiHpu0zfc4qf4fEbYHmF5UTZz25RZPS1ObmN0Cr3QdmxtCC+rt/HSewW0ll9kavidcTETb9ma52+B7mK5OBNBog7O+jIA6V0KE5Ql5AzHQOquU46LHqQCI5vob8T+zC+dgipYI03zZMy19t/BV23Y4xQ+uLGuuBI/PRUgfnTTjZ+bHlXGRanFMBPNHUWTDG5PfdQ99eUe1koy1dah37Dfkd9XP8+6eK/vPSbnaz03Guld7oh6uGHSXVKwofOOYThs27zABj5Fo5582e3uKKRLc8W7Te2gvwARlJ0ywEPqQHuWoat7rwRUebcj6voPNzGZ+DcpJqFt2x8PhS7f2Nqu0Tn/tY6uV3bWiSgvKZlWgxa5w01CSi7j2d41gz8ze1jfnun+ZDGexVKvPHCYWu5pB8l4VcQn8bD9jdoBRKY3b88Ph6MVgligBFAvwZSoreXQJ9Rztgt++KwcIXWCZV4kpoDO5PiJePmsdKV3xv1fAbwnWMiUqw2tUbGqk/HAUYrsSa6wQbrth6h7bPDU26qqy3mjnRQrx4CJv1kTUM0mIl5prh8KYVKy2yAxI8e6aTnP7rZkbEa4tBpIjw+KciazWHJJbw5wRGsQXV3vbiXDjHkv+oq/hGwg2vWRXLT5AaJK/rFuZHAXFEDXze3AV8xdM7cGUkS89RSWcRoqbjefICHjSGrwS91k3rFFHTUWZcwFKAKfc+dNxCnAZjhU1sSlKLnqVMut1iWXzPs+Te8k0ruRwbLFGVygvp+S+hlyJCNUkYkztRAgyaipt/lw5HJzL/rsj09Y7c5I0FnUeFIKumVJVYIQh0Tjg6jWQTKIF2G9pDsIUBxeuYNl101rrfFagknxuDSow2bTcmqkT0IOBCv2+Mm6+uIw7KKJFyt3U5/IrQKFcJfI2ojCfCNsEefGHSD7EtVAQg7NBn5RiDz9yZQ85VBrbExNC+hpw7DW0jxnMANJeJmvlgeOoPFofocfhDCkHAWUe+96bNnPbkZjpempqjuxIMC0ofCpnd5u3p2H4NU3pEn9KuhyDOOjc4NKDVPMcW7mHIL0QGfhI1TW5tfbdKhhM4yVrQ7Wq81Ewdv1Rf4j+6yPFfjeXEj2cJsEa8tmiIgqHN3pmWAF5Eg0BRLbW2jJuxKwJJqqf9uvyrQ7Tf+vgE64kwB/crAtABwvbRKIHQbTWd+22FhgrxuUqqdVS3kDABG0yOg79G+jh8jHzQXriwsnCwjH8gbMimZRoyjio1sLuLC7Gfk9OZw7C4lcTYHy0MtfoISgn X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 3Y4lv59bJX+2URDubfu+50T2aUeOnhcJQtXGdFNOGR5wORWBL9dCiwJDRrUYf6aGUiFvBlR6p52IVhE9XikgEmh3PFcfbEcc2u0GB2m3QJnZajNCORxv19bjmfMIbFFTRCzANqd8U1wAl7b97Lrb8koh35qeGvb5pjtIpBpfGO948IQCeh4aMOoYQPDBrgKpvZmwHfbCPG7iBHzF+0Sv80qT+Dgeq+WnQ1Q81kKNkrm/bva+/hm6gEmAuto1VX5Iai6FnRrtGf2x1VRQO8emTXZku4+OPh2Jfh4dw+F2RQofIRUQpOrjx4Xc6k/0/qqralZ89oY0q5MnXFlHMX4W3oS1eXRhT86uIGpn4PPNmguPksKgLWKudetwjcawS6dsYAxWuSeva2m56AlTw4bGT0J3t1E30oebTnnjrnC4QhTO36mSOQSfdZAp9KGGVHbUSp694LAI2ehlp6eKBxGQk6E+cl9/OuxU9hwk3bnpjMnL2cBACi/cOdk1dRXAHsBsmVdfuzBfcsQ7ob9yWMEeFQUGwNFW6yqt5k58w/80w7bsm9Yywuu934hMHa+W+zHCsjVtyetK51mNKhbb3Ierdw/s+6mdCHENyVi4dQ3t5MkHDmm34CvTU3o+OTkOvTxeKqJj+eSSE0WE0oadlj+jlrRQIOm6FxzyrVNecQ49OoUgk0dPg9edwWRunLS1ub8veKe8zvlYI+MG0fVv55lVLmiwYk0qH1rbwaoBMkB3zVCF6d6TSAb1rXbEa1MqiueKipe6sz62aEd0aCF9ELJ1UrqN6JrmXhMNMAVqED1zl0Ic/26ACtURde6pVf1twyYmeniEN2vkB+VWhB87utpA4Gt8ER0mMYGJKKiVaJZ6gwPnbw/dT/qqqfQGU4PRyXavyj+6n1Eh4cRpdOJ3cvME9EfE7BN7bsHaHEqby4NOtCO14ni6c1hOknSWScg5KFecA2nU0TJIa4yQ6mh8KXExKLD2j1uAR8jx+aBzXIWzBIzI2JUuQ0TiBEphriEgCWJCHSa4IwaiwE8EDHOnuGnhCUB+urng4jikQtC8qeh0OqtDzLuq3Gdv1J2Mj5hEVSEkpbAzAPq+m31vIEKPufQG+/tMKqIsnXpa3UtqrEjWcJ2zW+FRGSCKfntSH9ZryR270n5VhjBuasPyF0/SHrJ8ykvLHjYpu2REU1TWGuTtsGSioCYYcm+LwNMQ4uFvhMBQiWh1FOBQJeNSwRb0XA2yuUYx9fSpTpZjQKgZsCoJz/p9alQkReoyJyEuMiImFvH8xLAAXL5uP+FvX8zdf6NpE3j8OTaRG9ndCHCVBWXHj4gs2hvIZiUoKGmuHROxQjrft8ZxoCrsmEKlj22MAIgUgPYIWlrY+O/arwBzczlnXOGPkI93pLlS6G2I2C511fRzUBC7Os9qmwIAzZWqeVVhPOOVXvUzxr3wWbEhqbVagzABdxCIPN2+UUFbbLDNvbOFUOM1Qnlq+mTO3RTQVmGLkZ2dWtpc7pr45plAYztDGA1LW4f28faB8MUaantTTj4UEI6+QlhF5fsttruoICi38heDUjlQGvNVmbqtMAxYVaODcN1s8An+6MWhnjCiDSDLW2lCshFWem+2rsb00XBTn9co+M3j5MGIFEvtnNcIIDM= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: X6YsS+0cxJWx5vm6Ds0Ku4pqLionqvFAlU/qXOV983vbu9cdjhojfzXgCpjpwv8vYDV66E443VesIpGEudue0M/2Z10CB/sN/ITmiy9sYXHbAD29B1Gds/GAMTYG/nLrsvNlyNOItzNDXadbNVo5JmFGzlXEDGi63r5tRQa2N2xlzdzKORr6H/6Oi927+VMfnDOYv1FFyNjoCesRZ9pFih5qcipdQcOg+gB+UuVmPS8nW9564sgv0UoMjNksRuw2VntcpZDmKav94XYzre1b2nhcVDa5LgdGbwtm9dXnNz10XHS0xCh/ch9d2UDXqwNXPVpwPtl9eRuyulYe6yxzBYPRAF9pObJmsgftVxIz1foNoCxkpkKtGrZRWDNIyl5JINmDvWNL6Fj/2nPe12ju9IGNdpO9Yb3qQeueErR0DqWQbYRr2MSjQwRtO9yzxIAUyoKHmg9uR+hjfwh8iPYbwddajuUiPyOJsVFApNX6GUGB10hSCiNlWhtccIlJIAi6Se3c/UPTqLIpU843CLraq8vhH7nqxcBrt5/wWjZTf4CvzJMTY63qS8RvnQEgQ7BtKdAWLr6qxl97yUoUEEPHo9SrAbxAwpaTYFt2eqEn2tA= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: bec8e7bb-8f40-408d-aa79-08de317544b8 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:46.8519 (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: 4UOVJdsNLwGnPwA4DcZh4ySZpYypVURlSvIp6GGG/Eq0QdSFl1z9N5aZBckd72rBIFGtYwx23DLa/fG1d1Nsuw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 phishscore=0 suspectscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Proofpoint-GUID: c6qKHuXn42r-p866Eh6Tk3dZS4-jJpyx X-Authority-Analysis: v=2.4 cv=AaW83nXG c=1 sm=1 tr=0 ts=692e969a b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=P-XEVca7R7JmTnIKDooA:9 cc=ntf awl=host:13642 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfX+aZXzPfTabBr nxUnUqmogJezQqmX/Q36kUkCNz4Hhu4aQpvW5rH/oOWeK06Vk8XDls3eJ4ciRwsNrYaARAPOnrK K4RvNfKqdGgcuE4fHxV9sMPx/mB0K96ZgS+tB8SDrmFiPkyqGJXN2fEZCZIr/ScE+4L6n/HI+AD 3OP9Ao74phigLmpxxihD1R0gXxgjR2rvHbkxCX0fAxlME0MdfoZRJ+Q/fwBl8pvnT63cH9wHD3W VIbc4Pc72AfZBwpgfS6GwDYBwox2GGY6OyO5gFq9wp3zezzVae8jNHlPyzE76umVGEOjuQqWDa2 q2mwuAJ/W4+/EKtOq8cAxWEJtDnk6LWaLXZrwzk+xa3k45DLLfih8oazcexruHhp1Jh5wWuQy7O N0GoqIELba8ML+qNqMZboTeXRu5T/ICLpR9GEAnNclGbk1HJ3MI= X-Proofpoint-ORIG-GUID: c6qKHuXn42r-p866Eh6Tk3dZS4-jJpyx X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Minor refactoring. Carve out the SFrame FRE offsets emission code into a new output_sframe_row_entry_offsets (). This change helps prepare for later supporting a new FDE type in SFrame V3. gas/ * gen-sframe.c (output_sframe_row_entry_offsets): New definition. (output_sframe_row_entry): Use the new definition. --- gas/gen-sframe.c | 74 +++++++++++++++++++++++++++++------------------- 1 file changed, 45 insertions(+), 29 deletions(-) diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c index ae5a0c229c4..74a78902652 100644 --- a/gas/gen-sframe.c +++ b/gas/gen-sframe.c @@ -567,6 +567,49 @@ sframe_fde_free (struct sframe_func_entry *sframe_fde) XDELETE (sframe_fde); } +/* Output the varlen data (SFrame FRE stack offsets) for SFrame FRE object + SFRAME_FRE of the SFrame FDE object SFRAME_FDE. Each emitted entry is of + size FRE_OFFSET_SIZE. Write out the offsets in order - CFA, RA, FP. */ + +static unsigned int +output_sframe_row_entry_offsets (const struct sframe_func_entry *sframe_fde ATTRIBUTE_UNUSED, + const struct sframe_row_entry *sframe_fre, + unsigned int fre_offset_size) + +{ + unsigned int fre_write_offsets = 0; + + unsigned int idx = sframe_fre_offset_func_map_index (fre_offset_size); + gas_assert (idx < SFRAME_FRE_OFFSET_FUNC_MAP_INDEX_MAX); + + /* Write out the offsets in order - cfa, bp, ra. */ + fre_offset_func_map[idx].out_func (sframe_fre->cfa_offset); + fre_write_offsets++; + + if (sframe_ra_tracking_p ()) + { + if (sframe_fre->ra_loc == SFRAME_FRE_ELEM_LOC_STACK) + { + fre_offset_func_map[idx].out_func (sframe_fre->ra_offset); + fre_write_offsets++; + } + /* For s390x write padding RA offset, if FP without RA saved. */ + else if (sframe_get_abi_arch () == SFRAME_ABI_S390X_ENDIAN_BIG + && sframe_fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) + { + fre_offset_func_map[idx].out_func (SFRAME_FRE_RA_OFFSET_INVALID); + fre_write_offsets++; + } + } + if (sframe_fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) + { + fre_offset_func_map[idx].out_func (sframe_fre->bp_offset); + fre_write_offsets++; + } + + return fre_write_offsets; +} + static void output_sframe_row_entry (const struct sframe_func_entry *sframe_fde, const struct sframe_row_entry *sframe_fre) @@ -579,7 +622,6 @@ output_sframe_row_entry (const struct sframe_func_entry *sframe_fde, expressionS exp; unsigned int fre_addr_size; - unsigned int idx = 0; unsigned int fre_write_offsets = 0; symbolS *fde_start_addr = get_dw_fde_start_addrS (sframe_fde->dw_fde); symbolS *fde_end_addr = get_dw_fde_end_addrS (sframe_fde->dw_fde); @@ -631,34 +673,8 @@ output_sframe_row_entry (const struct sframe_func_entry *sframe_fde, if (sframe_fre->ra_undefined_p) return; - idx = sframe_fre_offset_func_map_index (fre_offset_size); - gas_assert (idx < SFRAME_FRE_OFFSET_FUNC_MAP_INDEX_MAX); - - /* Write out the offsets in order - cfa, bp, ra. */ - fre_offset_func_map[idx].out_func (sframe_fre->cfa_offset); - fre_write_offsets++; - - if (sframe_ra_tracking_p ()) - { - if (sframe_fre->ra_loc == SFRAME_FRE_ELEM_LOC_STACK) - { - fre_offset_func_map[idx].out_func (sframe_fre->ra_offset); - fre_write_offsets++; - } - /* For s390x write padding RA offset, if FP without RA saved. */ - else if (sframe_get_abi_arch () == SFRAME_ABI_S390X_ENDIAN_BIG - && sframe_fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) - { - fre_offset_func_map[idx].out_func (SFRAME_FRE_RA_OFFSET_INVALID); - fre_write_offsets++; - } - } - if (sframe_fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) - { - fre_offset_func_map[idx].out_func (sframe_fre->bp_offset); - fre_write_offsets++; - } - + fre_write_offsets = output_sframe_row_entry_offsets (sframe_fde, sframe_fre, + fre_offset_size); /* Check if the expected number offsets have been written out in this FRE. */ gas_assert (fre_write_offsets == fre_num_offsets); From patchwork Tue Dec 2 07:34:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125731 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id E126F48F8E2E for ; Tue, 2 Dec 2025 07:36:42 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E126F48F8E2E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764661002; bh=bmz8HiuRaymObCYGr3UfCOuL1pBr2BaEjInh8hYq8p4=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=RGl2JtMBuCRZjxZaibZNx1lI6btwgyH34VGSB6My5JBOTyUhdxk7z02ZEiRxT3p1k /S1OtAovigsDbsYXYkALwMEl3oEXkcfhVFdog3hu89uAnazrmNhKb77rUE9f6hVPi+ rjFq5ypBXDOQQp9xXopEOjtmF+n2YzAWzH/j8egM= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id B46B64BB3BD5 for ; Tue, 2 Dec 2025 07:34:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B46B64BB3BD5 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org B46B64BB3BD5 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660893; cv=pass; b=Jy05H+Ny3zpdV7UqXEYX7EtaSRIVvcxJ834+akefvmq7koZzHPuw2xj3qqy9tXJywECSJHTlbagKm1Of0eAcezbefwATG7nJSQt6Y87Ql5qFxCLOicRmjS3DB3sgqMCBJU5TB43nUSYrHwKjplyzWymzIdvUuGcKQAiaFz6dShY= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660893; c=relaxed/simple; bh=Y1E2VWBBovuEHn2LlVLA4nZsPoNmwOwGiBKIY0uelzg=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=GjQLUtUuUaMWsucQKd5Ks9nd5LBzCp+gbq34D8CNCyW+m3aCcNK06to3DqJ2FyIhsEvsOCF1B7UGPTyoFNUhXHvjQGWy7FVZWCx80j4/+yF77cK10SWHio9tC0RkcWXDPv+u58ZehU9C+q345or7M4I7P9s+nJ8FuyTWw8jdw6o= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B46B64BB3BD5 Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NFQb3259007 for ; Tue, 2 Dec 2025 07:34:53 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as86ya6wd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:53 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B25kOOs035444 for ; Tue, 2 Dec 2025 07:34:52 GMT Received: from sa9pr02cu001.outbound.protection.outlook.com (mail-southcentralusazon11013022.outbound.protection.outlook.com [40.93.196.22]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq9k1qxq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:52 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JO4/dPKB/K0jPunmRLoQzXcf7dDLoo/NLOE6E+Ex3+db8yKn+J6EevZlO+hsZgVXfi2Vw4i+xg7X6ay29daMp92WeHflUcO42h/bfYw5lF8/cguE7EzeuwOUbO6JXaZIeZnKbL1N96gYq2X7QTETi40fZfYkAST7ozGfjbr0T5WxuYY9Ho0hjiVRWl1lZZk54Eqo/Mr2hBWfRMhGjz01aXc2s7eQHzFW1UXkLmfjw4EYFBYELlAsuMOaX80hE8iwXpamx2Cf70g869ibmiHi9Dgdf45wwY7rws3wmIZtTFiLdlWjx/4fyrB+g2bH0P0SwOez9xdSUyA5h+R6rstKRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=bmz8HiuRaymObCYGr3UfCOuL1pBr2BaEjInh8hYq8p4=; b=jzMXxrT2GFbEppgx60f346L05i0TGBq0G4tYcbUd0eXnIY9VymtdvMmiOt3IsHMEaOCST7ShurP/TC+Bd15v0BF0htmI6oBlrpTULw+TC4mPQZh/PVK2ebfMmfGz87kKjBtgDBOX355QB4EB32o0yAMLn6i7eC9VQSK/JOGE5dTEG65bUfLYIdQh3KT3vlT1ZBZQr7y0CepgVbbZXzRn/kJrfdHkddV8Ph0OH7tQVZUOvlVflzazPbHdPHrL/cZhxEvzLy9NHyyApusac106+BWUjGuRM1bPAC3xubjCcFe2y/ij72TbiRwsO43S9/j8gAFbXDk+hEORWWBFP//76w== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:49 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:49 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 11/13] libsframe: refactor sframe_decoder_add_funcdesc for internal use Date: Mon, 1 Dec 2025 23:34:12 -0800 Message-ID: <20251202073414.200246-12-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0065.namprd03.prod.outlook.com (2603:10b6:303:b6::10) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: dc66aae0-1093-4d63-dd20-08de31754673 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: waOAnzVhdW4LrCYEIKWzl6B+TA022XlFwbZ/zPSzK8Mjr2sspgiATLvpMmKHDyef4YWLZEk0tooGqnwF/OmMR9UNXgihHxVW9jeEyz4HNz5DqOglO7tUgDTdoCQuAPMfeDa7e5frVdZJzJFPVoUVunZLSdu6/PQRRkgsmgCNTLLphZVnsa5WnW1UPJuHAeEK2DUqsXlCGxCfL7xKftAVBZ0IjHxRSg3J65+pFszsijdTVsnrBscjXb0dQ/Z0IDq3YhjKzV9aZlcUqYyKRI+D8301s0fTm5PW7wNPGigoHGtb96zcEkExi9qvUU5TaXqvlRdrvdcESP6v6mC1Enkj/Tp16h7jYqXU5P40oFtX4eD+Noi0eTbW760EykGIYNJUg+430L8NaDjg2RWQrQB1laFExt1FqQCzr6cvW/BwH4XaVKUvlcFKc/6k0jLsKEsKLPzanLM+IVi1qMuucXxdFKHFWLEggzyhydlbUBjrx6/haZVgEuxl8KnOlxBlX4of6gtO5EW3k+EtSOCvqpKAyCbqo0prK7NgrojyVFqhgCHnCfIlQGp0FUwkktas3TgTorI44HfqI1BppiL4AAiRdIkEgvH21jQuOChNBxpRk3/E54cifPtbd/uKWt9VtN5fio8BaPOqrEHpRZB7DKpGfeGnurDZqUiHYgNHonWzWHlbVwpPA59w1/3yR/VksoiO8C308SJLZAQFE2+P/23BpLjr/jHU44S2Kw+oVN6NSfU5AWai4ttP9VW8Ru4tQb84s2E/9UbgRIPZ+hcN56myWr9czs3ZH7JfddiJtTMCjA0nqMQ7Wf2lVj2oONb7RPwbnPPBh4A1TrgN+vGsAejXyFLlnYXENTHHkGptaxa23dfuRG7D0/TFUpROhTqkjdv9B3/ZSk9KrFMhBixYPQ871sJ0NfdIrMc8+jAXrnpaEsqmcFiZfPdmj1d+FyNzK6V8KgPdSXbr3ChPesLuDH7d+/R3U0ME0q4UKu1Yhg1bvsJWxmKcVbD0BpFSMJilrV0p9zEC1P2JT+5BtRYi9HJZbbqzttMYkViJpTSUX+pltsuPGjkrgZLqicqhvsh64bLpLwngKXxon4BhAGQdSoS2c2z4R/6F8Rwg7AlJea4b/DLIbxxwfPJJke8fS56SD/dArvTC5V1iaIgF/ibyR8WdXjFZx+Ch4CqxDStxfTeEv83Qu0B07VIWpXYeoU0ofonBhuoo05zxNuFHwaospvivFs0U+LYACjh3eT3x/dVfiVCvvtnzrIQKb0BZHXgt8lDZwmmEmtaV888Cd96J6zzERb+0R7H+IRPqhDeK2Ee4pbCdZx6LkQo5wNCMZTcbOG4ZAmVmUw9TH3AGxLCuU6DWObJWuQnbS/CuC4xQKNVmDQmE+pgB5U7zhF04qEWSgAGFy0OxfmG5LN9SSjcTPaORFbmmgH8Bl4H1CKS5vNl/8lYxo1FzvsMQjR8KVn29EKEA X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: m2zaetHBGKuUmUsxx3eLDiSk8lJjfi2YoN3wUxVurvtJefrXNSSsb69H2m1umiMxcllhKKuMH5Q13B5DtBNmmqfVGBL2DF34DCNyELzssyyCsj+3+0mVDLA81grGrzELds+kU1f615vSp2KdjzoUkahzWi7RrUpTflTCzVML24hFVOGYN6HI92m850UDBZpI79NwKMmXQdYFkA4MiHt4n7c3tutYJpEk6LjjM8iJJU5FNomdj0suLutWrDd6sFi1i0nPD7TlrPhiaHSKjPgoCPU7SlRP2Xb8fh/J5pnrNizY+VA+7hCUGlbJ1QtuE8TOHzsyTovzk6DSPsMWcVNbnrKpdFlCjmmodwVm2EwxKzRGujeUmyq6fepCPIfwsF7MWHj9rImclHgleiIFQHuomeWPOmeRLZNtiXZwSu1hAANKmO1sgVCroCCa16y2QMsSHcDt/pcIhxQ0sso5bQcxgWsIaT2/jXf9Q+aqyRtC9SH1He/O8jS64x+cNHtsM/jnHWZYrEW6yQkapaWOvoR7cvKe5euO0YsjyHgsjfXikl/J70yqxUAHTrxLhhBJUaHuS2pAQfrzsG3HJWbaci4ch5ZXvgoMgkuX4LxUP63H9kKLuFYYFyolAgIiCRxoDSZtjhWOkkna6THf8pd9OPbfXgWLwmYfG0wL+HjUVb+dul+Wjk7ZR3wI+K1a0CVeyhsORtvLG7Od4wXV+QMbggZIzPOhU96hGjyAFmTNXdPaOmoTOUKbxHITKcMfcrTGbNEMhV/O8I50FZ7GzN8SImNaZbryLmgnfd/Pjez1R1nYJ6v8nG+oAKlN0qcJiUuS/aZMBE8D2DNJCu58gfnbcgI5IX/5Rj8CtsKiqEigX6m9t0cvRGAxtKihKTLP8brHQRM2aSeyk+PYF6Asp1cC38NnHrXx2lAE+rfzp9sDfMplqQPIOIslW7NYv4ZPHD71Vwu830iGz6+4vebm1exWa4uQf3eNDMuHkJXcVV4aklsEoBLOqH4D+6F2M8h+1IpQRDLekISbNIfw9tZvwhEBr8olKx2bw6DI5Fc0Diis6VtNI5c0l6YQ5x464nbQhjwQRwJabY7gYRErA42wibTl/tvW+eTQNppcyCLsaweN9C9WPx1aI1PLmYcZKLeAtNM7/KcOcZhWLvlV0R/+otInOY06HoVAryjAMrRzjoufmhNaQtaY2HRasGLccvExXuuRu2JaCSTV2/kwYAlqT4SU0/RgkzVkexyLEvL0IPBFuy2PXmzTHP6ZcuEuOeTQqKDCOpt0SnJloi9sCZkfXmjZq5dRMAXxtJrjyaX1Kkh8YS437ETqy7gNZpFakClld5yNQvrQeohjbHwlvnVffTwfazeWUFvn2X3UrKwvaVb9msGIhd0TS2/I8fgNRYy5vFvibeLYHDChqO2MifG242tk5yxEuIMs8hT4S0mHZsgM7dhDDigus9p9BRIiQO+rFwMgn1TMj6VmPx43AyLcrVJPwDm6h14ljFTf9T2XnF5cCcDuKJsDwG2mACS5+7UjYnxf08xzH3rPZtwEjUOnb4FIYTMWvSWW6bC8TORWCtZam1igrTAu9shWw/vT0wH33KHnuwHCuZiFYQlhPcBkvkSmSwOz8XzGHP5H+Hs127Pjj2sKwZQ= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: pDjGcAS78WAZajJYbJHZMSBDT52hTIkT+XsrRhP6TPjgUmBoA7nLW6/QgaaSwnINcESbsI07Qvd9nTpVf8AAZ1LUZdPkCjYl8KW3FKVnKkVI3O74OJzhBwSa+QnvPTGMMYS01F6mviDDRitwrj/09D0CwESMSQrZpW1edh6rOvyC4jZHGt3hI2vDnxCd775dRX/LNVcBHpTNrFRTiuC3HRMIK1PwDueHkt/IRn1E9q+M9F+9HL/XBG6y/XziQ84F4KrkenMaqmONi7bb2sRKNLG2Ge/2hfXxQSeYgw94tSHbC+i1oGaQ7s6G5u+uToJEJ0KipEkEncH44xDXbSkucAn91/vMP/WJ0k9G3D/7wIEyhJOl9Ev3R/Y6IraiifNg/7Vfwqm1rsyMN7bSJk73Qyg4htzCZRNZ5PVVWLGytPNxfKQJYGfmvT2YhTMFcpe5LchdaNZYXu/HXRz5jEERVLgRY+nGpRt0APvWk0h2KsnKjGyrsvd9KuPX0hTaOaWHvAg3u4XJDVrF+zyxYqxL2bUFou+qVdjDPbZW8Jv211GoExFRt+noDAIUG75330VB/K10dTy2A8wC3QGvIDPg8AcidNms45hv/aecvTc9P3o= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: dc66aae0-1093-4d63-dd20-08de31754673 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:49.7801 (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: ZdP3dGD9qZr8OgGXdWQnwh9LDcFzhr4zLkG+N85lqa/Wcd590JNqsKTFql/UIaf3Mq/DZ1N/9pbd5YtflPZsAg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 phishscore=0 suspectscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Proofpoint-GUID: E19e8yQxw4L0YwopqEPFfSDh8vtbcf93 X-Authority-Analysis: v=2.4 cv=AaW83nXG c=1 sm=1 tr=0 ts=692e969d b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=juXWFQRf0j7Slz1IjD4A:9 cc=ntf awl=host:13642 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfX/8ATKhXfhoCT 9T5ZIdefbHUHBVc9/HJBd9TNoJjHHoGXltEMbOTHv9kSTi4M4hYeNC9uAcYzOJdWuVGuLxH2Jua JnhE+hLt4LuOtkgpNoAOrdWJ0PhkO8D8tW9AbjBM3ITY7Rmb/dYSmj2aKkdL2xq02jD7ABapY7T chpKFjBxor8Dk6TsykiZhq+BdKlmUA7/EaBQTOAHZqLgDwMlpkeIv4EklJ9QllziZcR5LpUdXHg lXFsguXCTMP4/hcKZCf7QNY1k6tCQjT1IEBKqNFvoq+/Iy+GCdv0Ch1nZ2h1pGkfrDPml/6LiED mNsKv5oUxFWdRVZ4TV5B7hp+bPtu9xQGqiD6hzxepIbtIZNB7P2lrj+xxjGFN8uS9cePV8F2x04 WRAZ8MzlQwGNycq6hAIkmNZZG8tXc55p6JrGVgHyvBafCk/GSlU= X-Proofpoint-ORIG-GUID: E19e8yQxw4L0YwopqEPFfSDh8vtbcf93 X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org sframe_decoder_add_funcdesc () was added for SFRAME_VERSION_1. This has since been obsoleted by introduction of SFRAME_VERSION_2 and its corresponding sframe_decoder_add_funcdesc_v2 API. sframe_decoder_add_funcdesc () will soon be removed. Refactor the functionality to keep it in an internal-only API: sframe_encoder_add_funcdesc_internal (). Ensure it returns the error code for the caller to take necessary action or pass to user. This change is preparatory in nature. Refactoring this out now helps ensure any SFrame V3 related changes are applied to the sframe_encoder_add_funcdesc_internal () API. libsframe/ * sframe.c (sframe_encoder_add_funcdesc): Rename to sframe_encoder_add_funcdesc_internal. (sframe_encoder_add_funcdesc_v2): Use the new internal API. --- libsframe/sframe.c | 44 +++++++++++++++++++++++++++++--------------- 1 file changed, 29 insertions(+), 15 deletions(-) diff --git a/libsframe/sframe.c b/libsframe/sframe.c index 16fc3a3f11b..7a187507c46 100644 --- a/libsframe/sframe.c +++ b/libsframe/sframe.c @@ -1783,24 +1783,21 @@ bad: } /* Add a new SFrame function descriptor entry with START_ADDR, FUNC_SIZE and - FUNC_INFO to the encoder context ECTX. */ + FUNC_INFO to the encoder context ECTX. Caller must make sure that ECTX + exists. */ -int -sframe_encoder_add_funcdesc (sframe_encoder_ctx *ectx, - int32_t start_addr, - uint32_t func_size, - unsigned char func_info, - uint32_t num_fres ATTRIBUTE_UNUSED) +static int +sframe_encoder_add_funcdesc_internal (sframe_encoder_ctx *ectx, + int32_t start_addr, + uint32_t func_size, + unsigned char func_info, + uint32_t num_fres ATTRIBUTE_UNUSED) { sframe_header *ehp; sf_fde_tbl *fd_info; size_t fd_tbl_sz; int err = 0; - /* FIXME book-keep num_fres for error checking. */ - if (ectx == NULL) - return sframe_set_errno (&err, SFRAME_ERR_INVAL); - fd_info = ectx->sfe_funcdesc; ehp = sframe_encoder_get_header (ectx); @@ -1857,7 +1854,24 @@ bad: free (fd_info); ectx->sfe_funcdesc = NULL; ehp->sfh_num_fdes = 0; - return -1; + return err; +} + +/* Add a new SFrame function descriptor entry with START_ADDR, FUNC_SIZE and + FUNC_INFO to the encoder context ECTX. */ + +int +sframe_encoder_add_funcdesc (sframe_encoder_ctx *ectx, + int32_t start_addr, + uint32_t func_size, + unsigned char func_info, + uint32_t num_fres) +{ + if (ectx == NULL) + return SFRAME_ERR_INVAL; + + return sframe_encoder_add_funcdesc_internal (ectx, start_addr, func_size, + func_info, num_fres); } /* Add a new SFrame function descriptor entry with START_ADDR, FUNC_SIZE, @@ -1878,10 +1892,10 @@ sframe_encoder_add_funcdesc_v2 (sframe_encoder_ctx *ectx, if (ectx == NULL || sframe_encoder_get_version (ectx) == SFRAME_VERSION_1) return sframe_set_errno (&err, SFRAME_ERR_INVAL); - err = sframe_encoder_add_funcdesc (ectx, start_addr, func_size, func_info, - num_fres); + err = sframe_encoder_add_funcdesc_internal (ectx, start_addr, func_size, + func_info, num_fres); if (err) - return SFRAME_ERR; + return err; fd_info = ectx->sfe_funcdesc; fd_info->entry[fd_info->count-1].func_rep_size = rep_block_size; From patchwork Tue Dec 2 07:34:13 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125738 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id CE5044AA51E2 for ; Tue, 2 Dec 2025 07:41:07 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CE5044AA51E2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764661267; bh=VvmkQkDdblzb+vjXlj8JY1+P4FTCq82z3X54Ljc0Gks=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=JITq3FlbIM08IwyU6CpFKG9kEJllLQ5t8eRoX3X60dqxotockrCypX3x+AseDc8ZS jq5OK5fMqcIhfLaRiumHsvMzJb2af+RhayZFwqAKrw8ZmlxZPyQCftEhj7djAOpiq/ RKKpBH3x0nKpQS7E8vKQhdSZUwuQMFO3KlvTv3eI= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id A79DD4BB3BD6 for ; Tue, 2 Dec 2025 07:34:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A79DD4BB3BD6 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org A79DD4BB3BD6 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660897; cv=pass; b=mH/HLNoZJxp3KXFRams4BwQk9PHca0j0fkJLz0M2dFTWOxI41DpJNd/ly27KsmDn+zBu+MS+/cXzCBog0CsvkxQRdQRBQu83vENdRvsff/QvSv8R6YJEuTi6E69DykQbbkhHTtVeVUrswpiQZpa6KB3gfV60cLfhe194xTufTb0= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660897; c=relaxed/simple; bh=aFGMBGp3vMhEs4lK1nMHnDlVY7x0WeqHcwUtw0Pb93A=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=Ll6w7RcxAU9JtvJMAtOCl7hgB62ZUGbdalRRU4J+Oh+l18MRCft+olDIR/CvaTqxU7vEDjQ68GzwqmLYIEdblEsUqkBnmnzTuaLCJnV/6XKQrDgOZ72bR1pKjhue5c/vQfMU8cAD2TxmwF35S2wed/3nPpWF6th0QOpscBoFU0Y= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A79DD4BB3BD6 Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NxZi3307661 for ; Tue, 2 Dec 2025 07:34:57 GMT Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as7u7t8hx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:56 +0000 (GMT) Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B25u7YG011885 for ; Tue, 2 Dec 2025 07:34:56 GMT Received: from sa9pr02cu001.outbound.protection.outlook.com (mail-southcentralusazon11013052.outbound.protection.outlook.com [40.93.196.52]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq9k1hcp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:56 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=L511QdIkcri03IXIn/PrWZibb+AxSCtqdVYmspbR1ygOC0M+//8eQH3+WZeSjvnp5NPwJz7JEy5P9BUE+OYm7LJm9JIERjOshCKNKr5npgOVJ8kf/GRdH02gHTWJFjZw+0Ix6mHgz/tXE1rj98EmhFgYcnHtO4BPceYJMfdGqmpmcnLhE5yJRQzxLPc78vK7qfDO6W4SRDAQPiek4HKONRiO/8qo6meeZrBNYT4VAedCuoL7fhGob7g0KB4bI6tGkhbhbJAYcZNGhjivHuMdl6Tqn4oPgU+2hrq4I4EI4naBkQPJ3S2h50103/dxvQaBk+rVIuHbK6fE8lvR0ErUqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=VvmkQkDdblzb+vjXlj8JY1+P4FTCq82z3X54Ljc0Gks=; b=q44wGzP0qV6t7kRbltqzS85rZDDG+AfKrMQTAyUsvWM+JRhSyM59ggvxg2g6LRdLWk6p0h5zHL7GANHWWkaPa7lkwWQGJZ9gL9Wl7LHfoADKG3Ayjro6Pxk8bBurib7AL/DFsM5wvOg//bcTqXQRZK7oYcpPBvXVy7iHN6RZWJ7vE729di5vo68asfxJlKXXSWkpvZvAsEIOZ0FEvGoCENkP+DZeKDhboCtJphjriEwNN9cEW30MYe5xkj2wkkM+zCykF71ojtNajX+lJlElNInGlBX59uhN5p8wSJbM3zwCDZyQse4+hOaYZbHpvXyFjl7H8CvRuTPNPMqzaM2RoA== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:52 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:52 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 12/13] libsframe: use tmp variable for realloc pattern Date: Mon, 1 Dec 2025 23:34:13 -0800 Message-ID: <20251202073414.200246-13-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR03CA0067.namprd03.prod.outlook.com (2603:10b6:303:b6::12) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: 2123355a-5dfd-4e90-6f83-08de31754817 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: fYCRsQCi234LvbZAc17S9pOJOgUssrpxnXZRxNH06KueH9nPtMycy6ndEiyOxGsNVH77oxJL52ma/PqNvw/E1kuA7XWy4j/fkFewBGng5uEdptxArkTSMStgCzx5KmQOThTBaGW6++L6pLfk5JLc15EGU46lnqB0K7BaBkyOhov83Zv68bbk9JjAw/Sfy+l00Ij4CEVgR8ILh+47W9qU4kASbZGaKGCf9C2eqdXNqSBe8eanP7ic9EJl4EmQmLnsiA6+8ji4SVeRnuuibdR2cDBgCWm6f/Rt9Gtb/JwFH0rZhdl3OVzQ2Vhd7NVtX3hmZ+JYsuMbbtVO2h2qv+MZurKl4hJDcUFEAQ3DdxPKQI47kO+o0eWd128I9RGU6SiWoCiHR6cya3XGPsP66RuQ5rE8SyB+OS1fm2b6kIwi0LTK4NnSPg2L2cM9k0VfSY0xwRQZaErEAeazobyTCsfKUxDYH/ObVqvDW9kmZPVeeL1wrqrW2Uim72W5Pp5WeSPCDmLwjdQErMo7oW/Deh8mr7ujtqPKYybwTTEGO2uQB8pGarql1+P8tnhjP2I4WeI5d2Bpz3yxUE6TsQiZW4AFr7XVHiBbpl15xSABFyritdtmweRiGhhK2MGB0dnBlOt5nb+jBg3xtZkNLf6V68zhPQyFYjYsP7P0EgYlya47NYOf8JlDDszBlAIqscaTOEl/6SfWrXpjZDRdOWqer5/rRIBlzMQbl1SPwMKUW99zAT69lS3v8tOklYLHE6CpC+qap5aJXakpsvEm16VAjq8rpoW09NF0YWj343sHw47T3jFv+MOIwR87melFFhJKMzSV7S7iJr0TAWWqdSQzUpK1VNT/+1I+5KYy7bsMMkFWm49JFvRxSdwpjTEWt0O2iG0iHMGyCRObNN5j9ZC5D0WoiNuHqf+C4kyWg6/wRK6gl9FE8TO9rjmehJKRssVDcUKPmuv9uV+73Ad5v4x3bsz/WLBCAqAj+xFMCYddZSQ+9oLoA3IlKhi14oI5xaL1sGyDOrix+dgU6PVFH2q3KZbft+M0u2C+skaVYfmTE0dkFKYQiGeozM0hqxA6ngPwVql7C00+TP9bUgmPBASHTBqGNRr+JwVmh9ZTL1Nbc0CMhJ29k0mQLnijV5lsqpoQMwHVEUzBoTwGyDGUXIG/eKp/7F64za32Rrs2zm87LuM1w8LVeOd+z2qI7vlR2Yo23ymSUyBkuwnY+VJ5LmYTTT1JqQcMvSK5luiCNVezwp4a8msCIUNyQVsUxFTtTqHkZfQkmzANxwKFPE51xiQwKO9mUJncwG4wiiaD4+sckhf4Dbhxx2LhFttXrO+yTwZAqi2guaU4qss5KVdWhWcsBa8yBMxesBhl/rIi5Ktt4Fp6Kys4JHUB505IenBzFNfPtXkTotwlqnLLkloHXnukI2A1EnR/gAdu9ZNg4cLX6R1BZ0Ytprjeo10ijw1HaupYNhMz X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: iPCZlTNDym94yuJanVZpHbAaTJxXDRN+M0FJ4vIaRdP9qPWUaQI9JZllg86hOEfXMYaNuAMR82KSQGQZPlsmsVPcWw9194CyW2IFOj7EOSjZ8sdB48QwqYp2ekoUNl5507oVOef/0iYjuN46s9yAA0Owymx71upHI32V1tCuGWHC1/HB20NaPPxaCLtDFBhiUYMajDnradDI4wluzhVZ1Tmx8LSN2mDUMZwa8ID7pacct3YXMUxDsxYTIZxC9fFnBb/fPbBUOvBSIfs2dtPv7c5R62svc9mLh6RVZggrMldxJ+pMLenWDVoZknJm6FfCyje6iIA5ThtmDl1cQzHDBn8PFthuNU2/RwB8HAOmB5LsYOSWfDQeYsOZJRIdX92wveTgJFwx3RS8qthnHxaqJk8jxFX8KbimPnh2y8KeIpAcb2um4McE1WiYpex9ocbcoWK8Y0sW6IwPNUidfJupYlrKRf86pngX5UFuWrZgdbhAYYQCp1Us3ioW8hbfmmAiFIsIIr2iefrEnrXaxJX5wbWmQFiFNmqmDd7AMI/nqEU80iwhW7aEaCxjAe9B3mt352mmss/SytLyr0RcKEk/p6wk7NMXx0l6ArtjS9KXRp4G+REtVGfI3WEJi9uOORLQkHWq9A2tTxKnKm5fPiIagPijCzSJwjb9eBgDZ6qmGmSIcLD1P9kriDxAtpgLUGwEJMMjBW29INHajFhM24ZFnxUI1AexGiEEub4x/dk06THXrrHFIB5kGoPTCCnkYmkIf4uHKP9KTaoVSgP7LIFH4znxUH1Qu6ed/WiWXeIwL/rzldEZRDz8vxm5mwKkEokTiiLfF6l5SlMkMuISMbshSaFwqHk5Q88hTSiGnJUrZPm659U8NxmPgoPVFL4/MpCy5NELjNWoJgSocpf4PmTQMOt4K2z1xRrIucXsD3KB8WPDNviK9y2L5/EWAahFMwAi8+pim4RlS87outuvX11Tauk4yty/s55dDuLwJmU+sXbE/AybSuW3tZvkyjnQU0okKqLIQNJIzTo1zlGcsmY/UmYjiMnNHbciJbRcPDOnFRftGu3LdIHfy/qBDmB8rV9tGbdwrdHyy1fYYBhDNKy9R1YA+BxxQV4XbloTlcRoM2AYAb37mMi99xTU9Qwbf9srNDwlXnVjao8tQldGL5dXl7kaFKtn9n5Dcdo9Z3SRn24dVYtElrOb42S9L8WmS9Tk3g6twtyNxEFRarewM+ArP/k1ZgXP9UpCEBb8YP+z4eNpkR0cKhGvUQkQiDJLL4VMBGd8jr+FqvKMGHRn4sWXhfZspbDxmNVlctqQGBtc7xIr0QEsC6247tvcyCmYMMZndH0eaJ8ZpWOgZzLbJSGeX0bHSwn8q2zYHaF5mbJrzCttLFSJ3oW62qyGLYrbLjm9PCD+17urAhyEhXF1Lp/EsJC9cios0wzD/7NP6kcwpe+dxY+AX9SvOIdRw7iPvULRLR8KRXpcU17QMP+ekQpDfDH22+Xf2N/xVrKVgDqslK5CEvZQK92Kuyfn5cken3KuJaJVlnA0GkaqUUvhX8G6qKcjt1HIMLH6Kfn+rPx87XyM0OgM06r8xoWLRIVjYm8hSQOR4aTDcsuXyQvnaSTNLKDQaH7/QUVVrr0wKu2Z9Zo= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ZyKbrcWfPdGtD6knn3tl4jgwtsJY0jZScLoNAxbmFh4HBYDDyRKGkGiKAloRnLvWQB6ExQtiWl+DzPqTkC7tpYeVv0bVPQvO33sul259LvdYiR37g7BrHSVZFGGdBdPYQjNaMmQcLgjMRwyj3xDsdExxY2PRvVP5u2aLmQVrVjxmA0DEsBzo6YODl1t4PuEw+XaY8KYklHiOCoZ0IvYt5czBmOGwQ2LbgqKakjH8/3fDCJd3zrxvGZtLyVxAjK1TMQVuDVTld70H3Jp4aDF+q1SoNEO1aFYXmH1mIoSgt5OpNSJdE9HFcCusfI5GP7ksDCfTIbSXTbq/Wr3xRFr/Mqot5KmZ8KFXJa0CpxcvS+StxbAiCiS9N+ZYMfspByY0AjlBG82otPNRhwawXIVfd10zW03an4tdaZLNxRXHoD3JfdNLMxx13D6LdJ6P5i/JVl+/8jRT8BWAd+4rAUXXCQj++pGL1+TOamozds4n5OfpdvcPyEk26vjOS4/ZciUu43fsCK4wMdz+dT3tqLmvkTpEci7jz5L4Uw96fwsvwFa6s4CT6SnRi4TxENQnMA55UFagpGqVJ34GBM1ShkJ6Ri3nPSBEVFt4EZAGSJQGqlI= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2123355a-5dfd-4e90-6f83-08de31754817 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:52.5506 (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: AAWmO/+E0hotz5UNjJXYBlRipgXXD3XNf72SSi1FdoeADZr4k3MoXKMrCg4PClpqRvIyGoPx+BqGWCmxkbqEVA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 phishscore=0 adultscore=0 suspectscore=0 mlxlogscore=936 spamscore=0 bulkscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Authority-Analysis: v=2.4 cv=Rfqdyltv c=1 sm=1 tr=0 ts=692e96a0 b=1 cx=c_pps a=qoll8+KPOyaMroiJ2sR5sw==:117 a=qoll8+KPOyaMroiJ2sR5sw==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=TvfYXAP32kHVOHn5VuQA:9 cc=ntf awl=host:12099 X-Proofpoint-GUID: D4v3M4aLMKZXEeYjVvMUJE99AjzK-oBC X-Proofpoint-ORIG-GUID: D4v3M4aLMKZXEeYjVvMUJE99AjzK-oBC X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfX6Smy1eOasNi1 k5waRz4tz6R3nuLQ97ZGVuOUwbjYUi/mOc8BbxYb+3jdZaSvtNusEdddg+WnFYQlo2Or8Tp4KY1 XniEyjGIIOzlGbiWWXY6730eN3lQQ7OEwEfvaVJ2jexhnYPnI/ey38CFy6dJ/zy/6YuyBIQVWvE OEc6bnQcfCI4bROXvrASkDT2MbCLUwFPLgxeVCU/4AFNz1K/XmAzm6eaKam0f8FZsIZAN0v8ICP UF0cD+YFtb90/gRSZxjXoZfvmqsGDurEgFE4Mb4ctn7kidWeVJfjQzxnUvd4+vqI8DLTufgib7L 6fwTyEYyknym1Rwtds2Xab/eCNNEKvy6tFjGDcy3z8weJUco4Qokvl+O8jrEdq9rW9M+YuRlXis UgoGs0imrQqdiF8pDImkjWsEhPBXsXIeXiuhVTPehxXkyuRxloY= X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org If realloc fails, the original buffer isnt free'd otherwise. libsframe/ * sframe.c (sframe_encoder_add_fre): Use tmp variable. (sframe_encoder_add_funcdesc_internal): Likewise. --- libsframe/sframe.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/libsframe/sframe.c b/libsframe/sframe.c index 7a187507c46..ee94c9227f4 100644 --- a/libsframe/sframe.c +++ b/libsframe/sframe.c @@ -1732,12 +1732,13 @@ sframe_encoder_add_fre (sframe_encoder_ctx *ectx, fre_tbl_sz = (sizeof (sf_fre_tbl) + ((fre_tbl->alloced + number_of_entries) * sizeof (sframe_frame_row_entry))); - fre_tbl = realloc (fre_tbl, fre_tbl_sz); - if (fre_tbl == NULL) + sf_fre_tbl *tmp = realloc (fre_tbl, fre_tbl_sz); + if (tmp == NULL) { sframe_set_errno (&err, SFRAME_ERR_NOMEM); goto bad; /* OOM. */ } + fre_tbl = tmp; memset (&fre_tbl->entry[fre_tbl->alloced], 0, number_of_entries * sizeof (sframe_frame_row_entry)); @@ -1819,12 +1820,13 @@ sframe_encoder_add_funcdesc_internal (sframe_encoder_ctx *ectx, fd_tbl_sz = (sizeof (sf_fde_tbl) + ((fd_info->alloced + number_of_entries) * sizeof (sframe_func_desc_entry_int))); - fd_info = realloc (fd_info, fd_tbl_sz); - if (fd_info == NULL) + sf_fde_tbl *tmp = realloc (fd_info, fd_tbl_sz); + if (tmp == NULL) { sframe_set_errno (&err, SFRAME_ERR_NOMEM); goto bad; /* OOM. */ } + fd_info = tmp; memset (&fd_info->entry[fd_info->alloced], 0, number_of_entries * sizeof (sframe_func_desc_entry_int)); From patchwork Tue Dec 2 07:34:14 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Indu Bhagat X-Patchwork-Id: 125733 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 2556948F60C7 for ; Tue, 2 Dec 2025 07:37:04 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2556948F60C7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1764661024; bh=/t9NuRBlcSzmBtedIleRW/B8PQvwy4RAQaeJA1O5ZrU=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=Bo+L8csbXtJopWJOQHkOoE5F+2naz6tib5Yo/SFeW6cNBEYSpOudSt8AwvpKlEA9o Bn5Gf5eafinoXWw3C1Cz1VM01c1bCofO93qQjmZhFXOs7c/s9SlbL1Us7Vr0lfOtEg HWgCeXIEQdu2hKspIiFC+ZmFpZ71H1gJHSwslw1M= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id B08AD4B1A36E for ; Tue, 2 Dec 2025 07:34:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B08AD4B1A36E ARC-Filter: OpenARC Filter v1.0.0 sourceware.org B08AD4B1A36E ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660899; cv=pass; b=ZXR7l2xpRYEJHj2qZiuPQWkM3/t+V6tvyfVYONXA82K43nxzq0isCrsEYSmqfiI+0mg5D8WvZ2E3FaM8WZJZaQM3ITks2lzNeL2dwH/X9iGf69yJspK6xMgAW/px0Zt4PonMErAZZomouoZ/5xOA01wIxH0vsaX7erATJvo8UgU= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1764660899; c=relaxed/simple; bh=B5KsJzSWCh7PODCiacF0srdpvEjlWtp5yWYEtR5bu2E=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=UGq9I8TF0qndmVgJPUuDptcaIvx9A/+ERZZ1k2xQNAeC2Uy/QLPZCcw2N/xLY+5pp+DkRX3npMdwxRBWMjLiuZosSOeenQnLxIEUKxtb1EMACIBACHNoOQ8oxho/NGflI98+jwOAJn1M8hxoYs4ZGo7Vg7eBrj7odtZAS3up0vU= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B08AD4B1A36E Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B21NEUT3259000 for ; Tue, 2 Dec 2025 07:34:59 GMT Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4as86ya6wt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:59 +0000 (GMT) Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5B25cn7f023411 for ; Tue, 2 Dec 2025 07:34:58 GMT Received: from bl2pr02cu003.outbound.protection.outlook.com (mail-eastusazon11011038.outbound.protection.outlook.com [52.101.52.38]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 4aqq9chtfy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 02 Dec 2025 07:34:58 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=WFzL36JU7eHpg1qxULejSVjbU4xx90MM+6BhObZF6nyPmrJHKKZ7nrzZbHeySzPbiS6A8DYqznSvV12oa+dKLzvsPeDyWvqutvqOUE9L/AfRuVqS13sLckBITAXvXFgmRNbCYSnBzYlEZREpLtRfLT7/vFIYrY2o1Fgfsofl2nw34I/Yuxq4z1ASt/lRQnuYju+OCXIJSVSDh7bHHzDCaTF71qjp/wxCV2Li2CzpXfvGV3p8wD/IEqJB3ZLoz+69OHCZ2UgAjwV7yEdYLU/77gu47XZjDXnARFqliBTFf3/gBdwDoF1c0KX6JtRnErO6BF/AKFJu6rB8YvoGYfoWrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=/t9NuRBlcSzmBtedIleRW/B8PQvwy4RAQaeJA1O5ZrU=; b=HFqb52tQvjrVXcLJ/75wh8yI8kjiKpBMAEIJOWoFDsh6AV0emd5Ly6n/vjESG68NJQQZHRfBUUmnfQDqovQIIJrr1bgKsEj5Z3H0AWo9yRRMdpJx0RvsaqkSiVxr3+dIHoSjRnFOuFTf7zgkm6bbnnmOWzqlh3KW7k95Ph6bGcuF+vQc3me+AuqzhIPHDhysZVvXKT8FIoN2/mIb/lXKumrzB3qRNn3ElFIL5YlcCRrN+m7NNLhziFVEIET5jqKWPcHbh0Rs35iO20VU5/USIDZcBuv0Khvy7ltPQym7/bK6E5jEeCYu87QnwgsUFRCFE8//5kDBz4H8g9ot3IfCfg== 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 Received: from SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) by PH8PR10MB6456.namprd10.prod.outlook.com (2603:10b6:510:22c::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.17; Tue, 2 Dec 2025 07:34:56 +0000 Received: from SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515]) by SA1PR10MB6365.namprd10.prod.outlook.com ([fe80::81bb:1fc4:37c7:a515%5]) with mapi id 15.20.9366.012; Tue, 2 Dec 2025 07:34:55 +0000 To: binutils@sourceware.org Cc: Indu Bhagat Subject: [PATCH 13/13] libsframe: refactor out sframe_fre_grow_tbl Date: Mon, 1 Dec 2025 23:34:14 -0800 Message-ID: <20251202073414.200246-14-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251202073414.200246-1-indu.bhagat@oracle.com> References: <20251202073414.200246-1-indu.bhagat@oracle.com> X-ClientProxiedBy: MW4PR04CA0106.namprd04.prod.outlook.com (2603:10b6:303:83::21) To SA1PR10MB6365.namprd10.prod.outlook.com (2603:10b6:806:255::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR10MB6365:EE_|PH8PR10MB6456:EE_ X-MS-Office365-Filtering-Correlation-Id: ab686222-7faf-4442-f1d8-08de317549b3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: 0MxFmz/ucz1DI9HMjTKmiP7zF9aVpQhHYEejPxaE/xnfsbq2+pW899DOO4US2/yENDssnAQ4DsEQL7MCdJ7ovW+2dC2Iz5nqeAgK++eZuSvG0IjKWsaRwFc5HIZtL96/mZBXJDEyS1VyJq2EFXSmO/68vkiiwAYe40LAg5b7kRc7QopzUgGvy5ouK4LIEwvf4r2S3BSRb6KLzq/ttmR1JItRvDHcTd9mFRNpHlHWBkBqfpVjdnQcd/MfyPbeHxg+FHjdCyKwDoBpelm+Aeq830WS3KUnHQaR9oHqXhr41ORqtCblhTs17s01SdPmP/X1Vdpuh6mgxPW0Pl2EbenUEnn6k1jrNkVAU81lbpa9/xDUkteC3Jm8gT7nSama8Za9Xn5BXG8UZ/Oz8cSrZjYjVrS5z/b5enLuBDpjahefC5QPg0B/smwTZy1tbj5q5T9ugz4l5vfw3+xQAAY8Le3iigfByY0ngABbNAtnQqx8SLz6mBNE02HePwlIC1B/pjlF19t9PRKPw7ezhRLV2vnemBalj9Uhi+CP+Ds+C60Kt4XYaWEmw1xnD9oOzAK2nrbew1p7XuIbzn7DnwbuLPKiG/9vueO+uDUlEcr9al6yxnRviJBlMd2UbEml3Y55/Fmjz8mBxseZjalxGnXxhPg97t8dvO4vupOZMAhN7G4oHnZzWvbqwulWVRvcZtlzm3+9Uc3ElWsDKb6oMNTuQI7mqh2KaFkEAFZ5LbvhGh3E6GkGZUIq/pV3bmChnpY/CO78Zv0w8iNifcaVxTNhWyRcrf6p3JCOFCFqerYcn3bUyLqpMtHqIhyzaESoMkNuaa3TzSGpZ787r+Ni4Jsem2Z/38cgnlxV+NRnu3DDmo1kyRdtddcRWhMGj72X9a8Yb92QSZo7VerpMfk5U7THyHD6HJvco60W9UcP1dHu0FADgXfvfy2MUCpRN5d0PFu4YiZbK7ZTaqN3VBI/TvDQFL8fcXiovbhWSpwmSpP8Xb5U70Hf22cISQBBHg0ye6OdpM636NnujwtSwuDYUgIgFd7CbZWqOuVA/uYTGa//XCyUWqqSmipYyVW14fhg7LY3QId+nLM1aPhGkKabLYfjlcocrt3YpqE6p8UXpLgRrfb0hSQofJzxOKsiaLS3Cw00pz9WE8G1cUuxwVuG3rvYPRDRtEEp8Rcq1+y/fpYpwn2std28u7WthpH/Q94eXeoV2fTGrqY5dx3LXbnL+1nKqNCHLioWOVnM8HyWE3DjVmo+y0kyD6i8u3wOM29EWxeFgKj+btooMQEYTfEEqSJFJ6coswtOOuFfR+LvLx3zZaXBVNjqBsuQmxEYngxJcPnJSSR2+fq6MowLO3gnup1WCVJMKf9qXbR7DDR10G7ozPHg5Fio6GAz9HF1dI6IqJY6XzQZ0KAvup/Nv+A9ypUGoW9EAqSB50SdsxK57QsL2UQlCJeiAbWfyo8XRwUFmMNqxMpf X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR10MB6365.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(10070799003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: JJRmFxNloeOXMEafDawo2Ed2Xc7ug5s1J+wK1yDV4Ilm/vcspGRvHWoyiQJ2Pn+QujRMzFPUMmxX5Z7eELwEUqaAJalCmBf/RDVIsTBPUYV1C20J8tWyNCO4S+9zpu6P0lsWmNUYEf9Kk+3qfulWiVW0yj3lIwDbldjmTHeD4REpknNMZ3T5Cx9P7Yl2mEYeFppaKhSLcld6HbBGOybjXOqEAMPfvTCi7ZmS6koKM3+2eEyr6Yey8TXlg2nYJfuIuXlldDHqs24sVJ6/54bf6t7nOBvqYVqWAr9U39hbNQHXHivCx7QYVvYAF01pi15iElr/iq4OYba/ZqWLdjqlwgQqhShsQNdADfuKV6VhW+9YAxgzVdknnC9fybRCAsaFqX9XSQF/6deoafvCTvRU5BU3ERwFou+eC6fFoA4pkHlq5nBU1rWsiu1UqLqCvaA/wWWbIUyf4Wnpk7Eu6mSHXarFkfphiqRB468u9wKaxjnVsDCVA45DvZSV2xB+gP+uqknnq3hhgg15G/0DrTWLbpLPRZ/7U3ELjvvY5F3NXIvvRAv5bvUkoH/9kIFeDFUooQVjdoBYua8+QY9UpQkHlQpn8U8gSeyf6k1keEqsyanosRhBkU6g5nEc59nbFehsyIPn1hToEsGYP6BTCIi8dEbf2jfdwO90ftdYU0JoeNBshY5jwYqHNQM4XgVHmogvuHpiwHVluzNfBsIs0YiX421LuxK57s6unzuJhtTDo6K4wnRdxAi0+99LsfzkJ480zaZBrtS9rGnD9pOkEvI8e3bmt/y4MJOtvLDBZZg3XX0ozfjmqe70v0GM2Nqn7XzE4xJViawfj0iPrCN7tq2KTzBAaSpA1um6Oe2GbgbjHrQZGBMorl/dHk6RZLjHUgiq6o+Q4OCXd5GnWyO1ixcRFBlK7Bb6MUQhtk+0yxaYgwu5WGV0gNzQr/EMhCJkS0ML9Kfvvzbmj6NbqJv8M7W5Dk3qSCS2UiRgL0ksajdAZbtKiaQrpN2lj6p/fZogOWP046bdJsO+EHuyB5W18VxSWIz8uqC7RCvv3Z2zzzcigVrXVQkm9lXF5NvuurIddRL/nCzvxXLxM/ct6FRy9cu5Zir9ijMwHYc3WBpCRD0xxgAUCv81TaSKPz6zSjIbUDfLIO7gMzZTj/rFymaj4p+Kyh6oFYMCEhV8GUjDY0ibLAhqfm2P2g9pmRWo9mkMJsw2lyTiLW0S4VL7t5KLyOTiqvoUDwimErkDfOVoJwkXRaW2/KK2kk6Z0lgIoT6IfI5dn8NtvV4V6zse/Oil8t20HkWmWM1x4CDNLsZRNtoZ8d2qZiZfMdEdEFFWZyB10SsfKyyKgiTDFrVcXL5PnV3TyZVkVuN/fOKbM8AFJyfqRxNwEn8F+6l8IgC7XAM7rWyd6KIGNito6FCuQm+7WNphTbDbNuUCMglj+X0bPYMkOMwLNl2NpGQP5KwyK3C4LMEiq+4kXuLgcc/J1dE5IF+7Njd2Cro0bOucOXQ0o2vxMNg9PNV7JWZtfdCROKVAOFN3tuKmHXbBBH3OxP5OGnaVfiFqkmS8LNlpgY43/UnKawKaBi8ibP5+Mrj5/sIvAKh+C1Ec0Fo0dCl3B/n3uz6J9Yl7TdtQeXfoPgdmJt/+/x0= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 1NebinKvuHyGzEIon0L4bjEeue0x+ai3Giqw8FgNZp4PQQ3cdqqey3UCryeVcqY5aDA59fSwYtybz3bymjJbMCUq3ctozBnQ3U5cFAfaD+S7XBv7jofzDiRbECJJL+Y/M4G2Qd1jYrtZawoOMqzOFyxbq3U9qbq2ok/ihRi158DVpmcrhGnLn95rvtioewnYbK+X6hISJOr9w94TDywGCGC+qIvNB9YjiyIXDkuLEDoUfzqf17pPkiZTb2kIVZR9fO3gJRkualm6TTe+pNZ7rKZUDJhPj2AjwJJYmrNNKRv6ip9Q8D1wafm+fAn9wqLQ1XMSY/Jk/ie+Wi/r3V/RYaH7rQCe1icnQviCWAvreBAMw6Wq1Jb1V2aahECgD5GzW32ves8+t+Dt/YvqXkvkcpQPYAeiEXvnVsBztW/V3rJVjiYHdEsfm010lvpAHW64czc+qLEPr33L/jrS1R95F+kDTT3I4iXjv+EOqLuUbavGWjC7sXbBm9Dsw4RMg82PGkhkP35irdC5EOExHnRUrBK2XY4UrKPaNN4X4Dzc7zmETRXPZqZrCpUYlyxnIdQ+Z/NR7FfYZuhmCYFtK9FWBv24u+4oafpLNDuYVlrEe/M= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ab686222-7faf-4442-f1d8-08de317549b3 X-MS-Exchange-CrossTenant-AuthSource: SA1PR10MB6365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2025 07:34:55.2259 (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: Tv4ZRJVBt8eApc/0cKcPhInPWW/gOaeJ1nVyvz/XHDZZBp3BWUm/IAGCYgtFreXFFeYisnzkzj7/6JZbxku38w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR10MB6456 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-28_08,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 mlxlogscore=999 suspectscore=0 bulkscore=0 spamscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2512020059 X-Proofpoint-GUID: qbAIoNj8w2FWo7vOlQVai81jnaI6aGuP X-Authority-Analysis: v=2.4 cv=AaW83nXG c=1 sm=1 tr=0 ts=692e96a3 b=1 cx=c_pps a=zPCbziy225d3KhSqZt3L1A==:117 a=zPCbziy225d3KhSqZt3L1A==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=wP3pNCr1ah4A:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EIkpZyy_ZJRvUjSeskMA:9 cc=ntf awl=host:12098 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDA1OSBTYWx0ZWRfXxbY72vGg4ky1 yz2U1xxBaOupjqoJKsa9WlkyZqYhp8aIdviQRKI6US9Whz6jjhnhYFsy4mnpSxyEiToPvR6OiQy hd8xlP4oLp/wUQMaFkoqFd1sxAxOU1+ANWIBjNc7C2SZk/DjZYdxp9D75bO7ojNdhSgACSqtJAU F3S9QM1IT5wCCz4h6NVOWa8T5Nr8ibyadcjhbPY5T0HjXiTugvYtK6d1fw2+LuZ+Draq33prspC wtFwBj+LjHEverEXdDNXLwgpTkHwPTaWcsSfEv3Bssun8IEEFWieMyvqzrM/1qrG1kpRDpI9xlH L2lwHFKoskV5haqPY2bSdLawgO3ZVmreZ1xe8Sq3dFh2Dlsw04aM3ZK21I19qJGa5QiaTCbWOZO r2sEszlw6LPi5l8/cVcmX3I6ktUc4fbsi6+XaZO1c/xbo/HcacE= X-Proofpoint-ORIG-GUID: qbAIoNj8w2FWo7vOlQVai81jnaI6aGuP X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, 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 sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Indu Bhagat via Binutils From: Indu Bhagat Reply-To: Indu Bhagat Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org Usage of a global int number_of_entries is likely unnecessary. The same global is used for growing the FDE tbl too, when adding FDEs. At the moment, however, carve out a new function to grow the FRE table, and use a macro instead of 'number_of_entries'. This refactoring helps provide basis for a later patch where we add SFrame FREs in bulk instead of one at a time to the SFrame encoder object. libsframe/ * sframe.c (SFRAME_FRE_ALLOC_LEN): New definition. (sframe_grow_fre_tbl): New definition. (sframe_encoder_add_fre): Use the new function. --- libsframe/sframe.c | 84 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 58 insertions(+), 26 deletions(-) diff --git a/libsframe/sframe.c b/libsframe/sframe.c index ee94c9227f4..e0ff5db3816 100644 --- a/libsframe/sframe.c +++ b/libsframe/sframe.c @@ -57,6 +57,8 @@ struct sf_fre_tbl static void debug_printf (const char *, ...); static int _sframe_debug; /* Control for printing out debug info. */ + +#define SFRAME_FRE_ALLOC_LEN 64 static int number_of_entries = 64; static void @@ -697,6 +699,58 @@ bad: return SFRAME_ERR; } +/* Expands the memory allocated for the SFrame Frame Row Entry (FRE) table + FRE_TBL, within the encoder object ECTX. This function is called when the + current FRE buffer is insufficient and more stack trace data in the form of + COUNT number of SFrame FREs need to be added to the SFrame section. + + Updates ERRP with 0 on success, or an SFrame error code on failure (e.g., + memory allocation error). */ + +static sf_fre_tbl * +sframe_grow_fre_tbl (sf_fre_tbl *fre_tbl, uint32_t count, int *errp) +{ + size_t fre_tbl_sz = 0; + uint32_t grow_count = SFRAME_FRE_ALLOC_LEN; + sf_fre_tbl *new_tbl = NULL; + + if (fre_tbl == NULL) + { + fre_tbl_sz = (sizeof (sf_fre_tbl) + + (grow_count * sizeof (sframe_frame_row_entry))); + new_tbl = malloc (fre_tbl_sz); + if (new_tbl == NULL) + { + sframe_set_errno (errp, SFRAME_ERR_NOMEM); + goto bad; + } + + memset (new_tbl, 0, fre_tbl_sz); + new_tbl->alloced = grow_count; + } + else if (fre_tbl->count + count >= fre_tbl->alloced) + { + grow_count += count; + uint32_t new_len = fre_tbl->alloced + grow_count; + fre_tbl_sz = (sizeof (sf_fre_tbl) + + (new_len * sizeof (sframe_frame_row_entry))); + void *tmp = realloc (fre_tbl, fre_tbl_sz); + if (tmp == NULL) + { + sframe_set_errno (errp, SFRAME_ERR_NOMEM); + goto bad; + } + new_tbl = tmp; + + memset (&new_tbl->entry[new_tbl->alloced], 0, + grow_count * sizeof (sframe_frame_row_entry)); + new_tbl->alloced += grow_count; + } + +bad: + return new_tbl; +} + /* The SFrame Decoder. */ /* Get SFrame header from the given decoder context DCTX. */ @@ -1696,7 +1750,6 @@ sframe_encoder_add_fre (sframe_encoder_ctx *ectx, sframe_frame_row_entry *ectx_frep; size_t offsets_sz, esz; uint32_t fre_type; - size_t fre_tbl_sz; int err = 0; if (ectx == NULL || frep == NULL) @@ -1713,36 +1766,15 @@ sframe_encoder_add_fre (sframe_encoder_ctx *ectx, fre_type = sframe_get_fre_type (fdep); sf_fre_tbl *fre_tbl = ectx->sfe_fres; - if (fre_tbl == NULL) - { - fre_tbl_sz = (sizeof (sf_fre_tbl) - + (number_of_entries * sizeof (sframe_frame_row_entry))); - fre_tbl = malloc (fre_tbl_sz); - - if (fre_tbl == NULL) - { - sframe_set_errno (&err, SFRAME_ERR_NOMEM); - goto bad; /* OOM. */ - } - memset (fre_tbl, 0, fre_tbl_sz); - fre_tbl->alloced = number_of_entries; - } - else if (fre_tbl->count == fre_tbl->alloced) + if (fre_tbl == NULL || fre_tbl->count == fre_tbl->alloced) { - fre_tbl_sz = (sizeof (sf_fre_tbl) - + ((fre_tbl->alloced + number_of_entries) - * sizeof (sframe_frame_row_entry))); - sf_fre_tbl *tmp = realloc (fre_tbl, fre_tbl_sz); - if (tmp == NULL) + sf_fre_tbl *tmp = sframe_grow_fre_tbl (fre_tbl, 1, &err); + if (err) { sframe_set_errno (&err, SFRAME_ERR_NOMEM); - goto bad; /* OOM. */ + goto bad; } fre_tbl = tmp; - - memset (&fre_tbl->entry[fre_tbl->alloced], 0, - number_of_entries * sizeof (sframe_frame_row_entry)); - fre_tbl->alloced += number_of_entries; } ectx_frep = &fre_tbl->entry[fre_tbl->count];