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: