From patchwork Wed Sep 18 14:05:35 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthieu Longo X-Patchwork-Id: 1986833 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=k7HG/J8S; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=k7HG/J8S; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=patchwork.ozlabs.org) Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4X80qh3xXyz1y2j for ; Thu, 19 Sep 2024 00:08:32 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 410B63858432 for ; Wed, 18 Sep 2024 14:08:30 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20618.outbound.protection.outlook.com [IPv6:2a01:111:f403:2606::618]) by sourceware.org (Postfix) with ESMTPS id 4F23F385828B for ; Wed, 18 Sep 2024 14:07:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 4F23F385828B Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 4F23F385828B Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:2606::618 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1726668423; cv=pass; b=WZZZlJMNDr+4GC9ZAaHTIk7JcQG4NZqFAC8N9B1pcgEHmSz4mQ8Q/iiPXjICMuPusm22DX4HrgX161WtYtT6pIi5hYOKrCShPUW6ovMb16LimeU0HJXKeVSe6ext6ZBUso+fYWloo3pnUHd6Q5cIvNlwZh4//9zJqtpZAgY0XLU= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1726668423; c=relaxed/simple; bh=XKcym5CnMSSNmdw1eHQcDE7J9kvucQbWVBHGTdgwH0I=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=VnajmtqteDt3zoglorAbdWjFsWon4sSV4DizBc7wrwMFJ17GoXVDdT6KQx4/2obCPVIP6Cn7F+rLELmkq3ZAkhipwehh+okx7E1bkpoURh77Skmar7plDHrKCaSdb2brQK6fRRq13apnpY+h4nYyEakOE9291uC7Ny4ro7xleCE= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=oWQOpvPiHk11gz+/FAxWN9aufUPufTLo+UkILzm9cedzRybJBhz9gWIis7hQ3xc3Vfm+H45qKPmzMD4QG9XqByhz1M4ya31/5w52knYS8eNmn7IuXkXz/x+WLPvrFvCljTf9KV6m+plgLRCiX1o9Yfunb4MOeUVVFeqPU/6Bd1DaKwokKgAf3SToizGXjeas0SQ5+mISO+M+F9F6kReCtZY1llWcI4sLqkqTWqAxEJ+tb1UVuYHJS9P3B0WIxgJqj48IX/OLlt8eZGvEKhsehmf76VTK6RFH6uQdopQu7NoMUmIKbiyvMuf6xx1n0IDTNqYxAjnb/Bmneeqb35KZGg== ARC-Message-Signature: i=2; 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=nY/03Lx8n9+KcxnqI89l3z8VLYumu2S0KdSlD+52yJQ=; b=Urbj75+E6Lj1etEAb3uy7x0JPKHTe84sF/r4cud8JaJIrWsNMyJTkoutxoeWWxyJuwAX8oPjNx3x6t+3y9o45uuTwY6TNZii03bBUnqPODuJa+VeGpSARpISuWiEQgCKhsjXwA9NRDmO+IUzinbzvtPq8EQ0wWqKq4UjGYmcOXHf1GM3q6KGK+KTcEsfkKQT6uSlB97WVdztT7gvBD4WbmCTEYqMjTW5SEc/eFg01VzMqxrOtRTM+xO1fFGZWdO8sM5+bs+pPietF1WSFEfFHAxcC4IGD/BnoEif52a8r7/saVh9WH++sl2oN1esVVnbFNtuPaLunXnz2jj4rzM9IA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nY/03Lx8n9+KcxnqI89l3z8VLYumu2S0KdSlD+52yJQ=; b=k7HG/J8SQIW9raZ/Q70RhR398Q+iuklYUWpFO2r95ENI/C2ifGyvJqrvegUF6PVPvB5sq72p6wpr+kDgCIz+baMOVeO/TttPGqrN8CV8fDIwFKjyUOKAkYUELpEzbE40ZrtmroUav1ZeGRdGwNlm1CyFM4ymEucn6BHkEbDNOis= Received: from DU7P189CA0005.EURP189.PROD.OUTLOOK.COM (2603:10a6:10:552::8) by PA4PR08MB6304.eurprd08.prod.outlook.com (2603:10a6:102:e1::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.16; Wed, 18 Sep 2024 14:06:56 +0000 Received: from DU6PEPF00009526.eurprd02.prod.outlook.com (2603:10a6:10:552:cafe::a9) by DU7P189CA0005.outlook.office365.com (2603:10a6:10:552::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7939.30 via Frontend Transport; Wed, 18 Sep 2024 14:06:56 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DU6PEPF00009526.mail.protection.outlook.com (10.167.8.7) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7918.13 via Frontend Transport; Wed, 18 Sep 2024 14:06:56 +0000 Received: ("Tessian outbound 664db2787079:v457"); Wed, 18 Sep 2024 14:06:55 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: e2065cad94f18dec X-TessianGatewayMetadata: 2K4+vE8Ly/f0NbgPOZAMzberORkcwh3a227huU1xo7OM6c4Ke0nbu8+7WbA7aywcSijkNml1OwZwWuFOr5dMxXvlLHuETjxB5gZVqBudETIUAJ6Y3Z/3vaFPh4xIPethTruVh4PpbLCYFSEzpd6iYVfHzjNPGO+DsQ0yU+pUDZs= X-CR-MTA-TID: 64aa7808 Received: from Ld17eb74c892c.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 1D551BED-4B1E-4420-922B-01725D0AA7D2.1; Wed, 18 Sep 2024 14:06:49 +0000 Received: from EUR03-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id Ld17eb74c892c.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 18 Sep 2024 14:06:49 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=SgfTlo/5wCTVT5+J6kY/8Si4cqH6ogZNQQ+Cl6ZDe2UgFRhcxHNZimfRx3sgypo+9iHrcgXvOZomYjkESj0gLI5LQVwYcuK3BlWtbsVZergE84hJevz6FI/bPw4M37fZZoiC2fOybCSh6iYfhRxRlwRNS4BMGZdFTd3MTUXnKpFHZ8WmlwY8UaZMx8V4sqkjgAiUepzQ4fTdq5DlKvmQGp9/byODqS6CYgoD/uCYw6TDCY8sqHpK64rtwt6jrFLkj97dJzolBhMkcfjDa7JYh8I2QilDdi8WaRj73kxAXj7lQyjp/wzewUTEk6z89R1K1svPlxTgcLvzrtBz0Gltvg== 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=nY/03Lx8n9+KcxnqI89l3z8VLYumu2S0KdSlD+52yJQ=; b=RAJ2NVqKAGTmYj6NadTBN2NrC5g2caEvOmcsaEteWtA0l3QRQ+xDZcQO8zQ79euGsQW82p+8hYLAx7ZUbGdz2m2LYKsxVK00OFfu53Gqi5g9AXUVE2nkKBnkVfhoQoqIIhkP4sKIkq4Q3MVwKByNtA45xSKJ7MbZaTIUj5ld+OF5wuJGYPOq7H+FDn58Em63iJJN2Ri39y167YXv6gXeiPy0mpMtuYTKOmzYtG7MPWGT40aTD6DXU0TD+PAEMYlb0ceJaW6cUNeL99vomYIPY3M5GDYep37rKn16ioY80L8t3ucP2nQLUGNllq1R51iIW2pLeUNHHe1MCXMAaNDZqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nY/03Lx8n9+KcxnqI89l3z8VLYumu2S0KdSlD+52yJQ=; b=k7HG/J8SQIW9raZ/Q70RhR398Q+iuklYUWpFO2r95ENI/C2ifGyvJqrvegUF6PVPvB5sq72p6wpr+kDgCIz+baMOVeO/TttPGqrN8CV8fDIwFKjyUOKAkYUELpEzbE40ZrtmroUav1ZeGRdGwNlm1CyFM4ymEucn6BHkEbDNOis= Received: from AS9PR05CA0117.eurprd05.prod.outlook.com (2603:10a6:20b:498::33) by GV1PR08MB8033.eurprd08.prod.outlook.com (2603:10a6:150:9a::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.16; Wed, 18 Sep 2024 14:06:45 +0000 Received: from AMS0EPF000001B7.eurprd05.prod.outlook.com (2603:10a6:20b:498:cafe::f0) by AS9PR05CA0117.outlook.office365.com (2603:10a6:20b:498::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7962.25 via Frontend Transport; Wed, 18 Sep 2024 14:06:45 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Received: from nebula.arm.com (40.67.248.234) by AMS0EPF000001B7.mail.protection.outlook.com (10.167.16.171) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7918.13 via Frontend Transport; Wed, 18 Sep 2024 14:06:45 +0000 Received: from AZ-NEU-EX05.Arm.com (10.240.25.133) by AZ-NEU-EX04.Arm.com (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 18 Sep 2024 14:06:21 +0000 Received: from AZ-NEU-EX04.Arm.com (10.251.24.32) by AZ-NEU-EX05.Arm.com (10.240.25.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 18 Sep 2024 14:06:20 +0000 Received: from PW070M4K.cambridge.arm.com (10.57.76.20) by mail.arm.com (10.251.24.32) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Wed, 18 Sep 2024 14:06:20 +0000 From: Matthieu Longo To: CC: Richard Earnshaw , Richard Sandiford , "David S . Miller" , "Eric Botcazou" , Jason Merrill , "Cary Coutant" , Jakub Jelinek , "Matthieu Longo" Subject: [PATCH v2 4/4] dwarf2: store the RA state in CFI row Date: Wed, 18 Sep 2024 15:05:35 +0100 Message-ID: <20240918140535.1538392-5-matthieu.longo@arm.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: <20240918140535.1538392-1-matthieu.longo@arm.com> References: <20240918140535.1538392-1-matthieu.longo@arm.com> MIME-Version: 1.0 X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: AMS0EPF000001B7:EE_|GV1PR08MB8033:EE_|DU6PEPF00009526:EE_|PA4PR08MB6304:EE_ X-MS-Office365-Filtering-Correlation-Id: c0e32335-4a5a-43b6-ba7e-08dcd7eb278e x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; ARA:13230040|1800799024|376014|36860700013|82310400026|41080700001; X-Microsoft-Antispam-Message-Info-Original: eQM029+GgDPlXUpDPa3uVO2ybTiKPBjfNZj/59WMtcuGhs1xh9yNHLJmR3p7+FHLZaYMcOBZSpc4IsDUyWiukG81EWzGf4piM3TakhuM2Ls/ugWR5mqRkG1dEhPlZf01mODuTXV3m0z2T8lBPEr/EKaGVUcOuR7HYq0xwfXeLK2OCeU8D0HqZ9/mR5QrJa6HK+xpSIbI/sHAHTvA5BOI8/8WUeg5NtJQlYD1odsuYKFVDMP2Q6TuWna6rD8c6t0yx/fkDzuWAzZfIkdw5PMuIuaiizjxmP9679K2bBq7KJyxW1xAkt53msfXNgPri7ANda1s2qSlJizaDmF1n2SqTG+Z66XId6TFbhASJYsG+0S5l5EXaOFfWCi0TLaSn1Kz3tayLoTYQundnA8Bu1Y8T5KTsBy69DhAaqZrGVHHmPsAQdmnAX94Y2GUwMPUrJ9yPcUpRW76TGcm5uZiL/pdt/JFcP60V4+ItRFA5uNi7jHuhV1oQv6806mBnkIuh9VWOBLdScvEmOddDnyi5Vl3NFwKxYNnGFtXFz5Xg8Bhtn8bf4IErVQJK1GSlf9tbBEgPvGY7eDU2L8X6SRyoOKSP+FnFunQX9MDAwof0X2YfsAh5388qlFZjvN12g4Q+WQlnEw5QT7X4exjcQNm9PK8goGqgMGsrwv3vwsZKvgR6UlMzroRYd0d6QLhhQdBqaFdw8DDBSqMnUhDsuJlAjgTFj7Sjz3HakI1YmiLpt3uFEt9UuLYXs4TMB3JVqJucj9UL84UTuSYNLtTeNwOh+7duH+g//IuM+75ag9WMxFABXCaXpag3SWMckXRWDy5AAGbByCMGfxX66oV6t+z+2b45LdQ0qxh4WmsGr2iEzBsB9Vh3ZRrH4+/RGPBD3BP8EWYLFbUWxyE/054Wyd1X4Vy2rlT0Kz+inJexbaQOJsesYloURA018M126EvLgQEJVVWtvGYv/5lBW0bvt5OIfALQgk7lX1AU4i+dfGxMhtkBtnToPO/qUAIO99AETy8emcG+u1LvxIDFsA7Rg13OszwP6r9R9qsT7DXo/o9rnmlnU1O2xCE7lAaAmIXcJM82h4pyMZ015JOibJHQDRgQGIIXijuIY7NWHCWSxzF2tjafvs5tFA36eNSroJD1sbZxdAbFXsjRuLBaDj4U6eBi5HOOdgyvPxGGzQdztXScha0d7cE2k/v6BceXYBeII2UZ4HYerkf4CzQo3YzktyalC3UPvO562jaDk0WFFzeTg+JRbiabOUIfv8gKnUVq6VK0JIX/pO/engRTKb5Jy1F5McduA1tKyfrYUlTS2P/lkbstbQ1a18Qa8od7CcLNCAiUqD5uhLU4BD2toCkVaXrHTNvFtavXbnF3OO28XbHRDQTRIw9JC3G0B3iod0QcKqiTYBae1v3oERz5rijXSZ6fV6Mh+hG5Vp2G6zIvVu9yKtbOue59c41rq2wtE8X5FHqKDvbIK92y4+Dk4IG495siZnd3Q== X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:nebula.arm.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(1800799024)(376014)(36860700013)(82310400026)(41080700001); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8033 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:20b:498::33]; domain=AS9PR05CA0117.eurprd05.prod.outlook.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: DU6PEPF00009526.eurprd02.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: dafbf5f1-f71d-4fc2-5512-08dcd7eb2132 X-Microsoft-Antispam: BCL:0; ARA:13230040|36860700013|1800799024|35042699022|82310400026|376014; X-Microsoft-Antispam-Message-Info: z0qfK/uezUEEZBEtxiE1+QY7IjObUs3XZDwwPkrg0c21omkS475acXRDvXK4P7pYmTg/sT3R6a9ldgXjpZj0lutdZ+K3aqErdeb4zH0cAcoRh1AHEeBoQCFMBVGdq9LlmtkoWdbcksRc4v3h1aLbiaN2UJtaUVGhJpgGXmuiGs2AIfq+oqN+uQ47mDo6K8HZRXedxygBz1/rW4JwYl07AuSfyDTa8j4bCI5+kKNvU160sxoQVXFZAd8+nFf8y5/YMxKQ57oquffr+vBb7OEDb6UMwamYq8N0Aun80fsFYv7aZFAZm3ppgmDkZzWFLUjf4+gtTVKoA+6f8gjUdZRjdZvZ4xOUTY7IHEDcINrkmuERgq59fxwfBNlx2UJrHvHlwJmhek6uNOIMJ7rLFArMRAodKlNmL45vp/LmwH9+vqjnaWjV4K+h2OueWylhz3fmzbbsd2zNJ+7aDWiZ5ZXcn4AYw6sHhNaafuvGUvsP4oN0AQgc5Gh5sbZsPZxr7d6z9Ojq3IR+9IsV8aK+Giw8lLLMAPo+S8I30CetcImdGHI5YAtjcsWqE5YJHBCJVyq+cX8UUbSwcrYBgW3HEVI7WR6jSW0CoS80kd6K0I28ZiNf+UPnC7k1w3dANGJmHwwM3LmZAgeeiBvxRhfUachD6YqMGd97ekfR9lDBQhfAUe0/+YrSKa74WcRoIwyj0wGqF4/5GockR4iEx4+J4mLlwWnXPdnT3mjX01Ed8J4OFK0QY7l9cpp++2zCjCfgBLj2nlmdh2Sr+v/LTbm4iLSMa2yzWjalclOoPcvDsn8zoEwb/Ay4PYDNl0qeammqIjGMGh2nBpUtajm0DprjatJgm94n/6TKbuF6zgr9r7Pk9cr4bxqiTrJPUBcMlm3gi1Hl9wDALMYPP+ve6VRPmU101pfaTMquwz+ga8x/jAjKSVn0Ad4fXSREMgql5sQFm0PrypKvAkf3a+oJqLkeVYc804I4xjP080acmYxw1wylDjP/SpZ7iYqmvqX7fP51jYCQBd0rGhZJoVJ992iuj+EuKB1pL8VUteFEbGw6Zn6XokH3UQ49exAap1WgzRddUpB0m02XMmMNISU2hq+R7Fvfk0orA1+taOINbpMlGTr0Zy0UYVur2J/Q4iJ41gAJsu743OG5FsO/IAZVpkZrSBkW+iPZq7bcS2Pd+u50oll61ZcRKwDPCPPFEnRF0wWd+cSYP+H2hpgChy+ERIUdiVKDOURJfFWupJKyfjlOUM8gRC59KcIsJoICkIXRKW9kTmZHlmAtUnX6C52skail5aj/erFp77+JAvz+Jj7I1IOUITg9kC3UwqYME9xtdPF5gQO1cNuhZjKMbCslcZyt3kHqjhOUytk9H8Q+ktlgIWQDy999dyJ7BMihe4i9LmFTSF/bsJNEhipipQi96TwT2ixKHyAfHN7Hno0ndsiFaCD7mf59QzNZfQehyCJ8IGIZ1cvb X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230040)(36860700013)(1800799024)(35042699022)(82310400026)(376014); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2024 14:06:56.0250 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c0e32335-4a5a-43b6-ba7e-08dcd7eb278e X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DU6PEPF00009526.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6304 X-Spam-Status: No, score=-11.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, GIT_PATCH_0, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org On AArch64, the RA state informs the unwinder whether the return address is mangled and how, or not. This information is encoded in a boolean in the CFI row. This binary approach prevents from expressing more complex configuration, as it is the case with PAuth_LR introduced in Armv9.5-A. This patch addresses this limitation by replacing the boolean by an enum. gcc/ChangeLog: * dwarf2cfi.cc (struct dw_cfi_row): Declare a new enum type to replace ra_mangled. (cfi_row_equal_p): Use ra_state instead of ra_mangled. (dwarf2out_frame_debug_cfa_negate_ra_state): Same. (change_cfi_row): Same. --- gcc/dwarf2cfi.cc | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/gcc/dwarf2cfi.cc b/gcc/dwarf2cfi.cc index f8d19d52429..1b94185a496 100644 --- a/gcc/dwarf2cfi.cc +++ b/gcc/dwarf2cfi.cc @@ -57,6 +57,15 @@ along with GCC; see the file COPYING3. If not see #define DEFAULT_INCOMING_FRAME_SP_OFFSET INCOMING_FRAME_SP_OFFSET #endif + +/* Signing method used for return address authentication. + (AArch64 extension) */ +typedef enum +{ + ra_no_signing = 0x0, + ra_signing_sp = 0x1, +} ra_signing_method_t; + /* A collected description of an entire row of the abstract CFI table. */ struct GTY(()) dw_cfi_row { @@ -74,8 +83,8 @@ struct GTY(()) dw_cfi_row bool window_save; /* AArch64 extension for DW_CFA_AARCH64_negate_ra_state. - True if the return address is in a mangled state. */ - bool ra_mangled; + Enum which stores the return address state. */ + ra_signing_method_t ra_state; }; /* The caller's ORIG_REG is saved in SAVED_IN_REG. */ @@ -857,7 +866,7 @@ cfi_row_equal_p (dw_cfi_row *a, dw_cfi_row *b) if (a->window_save != b->window_save) return false; - if (a->ra_mangled != b->ra_mangled) + if (a->ra_state != b->ra_state) return false; return true; @@ -1554,8 +1563,11 @@ dwarf2out_frame_debug_cfa_negate_ra_state (void) { dw_cfi_ref cfi = new_cfi (); cfi->dw_cfi_opc = DW_CFA_AARCH64_negate_ra_state; + cur_row->ra_state + = (cur_row->ra_state == ra_no_signing + ? ra_signing_sp + : ra_no_signing); add_cfi (cfi); - cur_row->ra_mangled = !cur_row->ra_mangled; } /* Record call frame debugging information for an expression EXPR, @@ -2412,12 +2424,12 @@ change_cfi_row (dw_cfi_row *old_row, dw_cfi_row *new_row) { dw_cfi_ref cfi = new_cfi (); - gcc_assert (!old_row->ra_mangled && !new_row->ra_mangled); + gcc_assert (!old_row->ra_state && !new_row->ra_state); cfi->dw_cfi_opc = DW_CFA_GNU_window_save; add_cfi (cfi); } - if (old_row->ra_mangled != new_row->ra_mangled) + if (old_row->ra_state != new_row->ra_state) { dw_cfi_ref cfi = new_cfi ();