From patchwork Tue Aug 6 14:07:40 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthieu Longo X-Patchwork-Id: 1969593 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=iCBiUM6L; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=iCBiUM6L; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=8.43.85.97; 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 [8.43.85.97]) (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 4WdZsr5G1Sz1yYD for ; Wed, 7 Aug 2024 00:08:48 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id AFA70385841D for ; Tue, 6 Aug 2024 14:08:46 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20600.outbound.protection.outlook.com [IPv6:2a01:111:f403:2608::600]) by sourceware.org (Postfix) with ESMTPS id 5BE193858C56 for ; Tue, 6 Aug 2024 14:08:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5BE193858C56 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 5BE193858C56 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:2608::600 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1722953304; cv=pass; b=NJ97vFylA6rnU1+ByVjHYstQ4pYqPQGyOo5VTHzY8cbZl9+XaX+2+r71Nvl47fbEEkm07EU0tpFo1iPtZPgFKSbZYzwp0ROyF395R+VkVwYEn32Ku2ivbZoMl5dVjJLrEHwK6NGMH1PEj82PTMmf9Zoj2sZIo6jYTbbjAIAGKNo= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1722953304; c=relaxed/simple; bh=uALTF3nzPrh07ITVurnjuTM9+bWxh1al/vD4Ob7nsro=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=H2VDKJ1/juBwnG6TX1V7Izv7b/jd4V4hjbwwWV1x0d35nnUXYOnGK4YEzsJMc/Tb5dUEIU9GH2GYgmi5DbH2uSxbrb9cbK220hnngVGb1zjuvgI4qNyVhkeJcdZ/JeYJdtNLTZxmNtBJj9asFOuiJJBasJuRBIeSbrqv+Ej06sA= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=x1gtcmrm2mz7kMmOjvnML8iIhCJFdGYsjAQjBg/jECnwiIMmfR0n9KLPOiYAOSsYazhdqJSSmL9guawr3z6INtR17OEn/bZj6FzeCzp5nf1B+Q5S2Sa+ZWqQV8Q/pWvV8FKu7O9R5q3QYk40mexDi64MCUYqrZb4v4If0SlqY98G8EkH+AbsdhTchkEuMH9WibgMa2oRgqhAKkdm46BQhj2emtZeAm0rMTIaFtpYfxVvMAv54d8GMu/qy4ZH7zUcmqgn9fyquJkcUwerC7N6Cyw/IkViUN/hV+XT5UmvRi5+NVytGd+9VwERDxbuIhPtj0W26HTv4GrUVSwxBxVIvg== 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=GjZcxcAJixO6TfGpZJ9ZaAMV/TGUhTP61/kAU9X/w3w=; b=hvkkK8ZQyt43r11hi5bLMZwMqVCFhq2+MariNe9v6HsGCiv1MmrZlSpjL3s4FDuW6rL13PSLJflcXPNrT2nZGVjLiqvX3Ry3mdyRlu79Y92rVTWSUGSPjyweiQ53TNrOsrKJApLdUoNIKVlFrWtYdagJ12xA+q9u/rmbEBxTPKcETCAtlYrxJAmvblavM2ufqRHtMA9B0aMpLST2eLWLYzGOx/vBzTrpDfs0OLm5c+MYAZ6RGfkzRUCn9BOft9ZPUddB+Ltfcd9HX2RcUkEFlm0w5X0ZEAWTwiRsFD8xhykllTT4o3snmFsYMHJlFXYrP03c2c1HGLrdne0r3DJdVQ== 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=GjZcxcAJixO6TfGpZJ9ZaAMV/TGUhTP61/kAU9X/w3w=; b=iCBiUM6LvXIgyenmHmxetjh/XCs/VOOm8x9+HaCKlGgLSaSxqHWb/HZCEdC7kUMMNSPWNWuh6EgFEB9LxIn91N8hxW2Y7QGOnTHuJ09was3OGaMPAPLD6ORNmrkK+8GN9QvbF58rm2/ZoYywti78KJRMgKLB3F3n/Gl/9RojCRE= Received: from DU2PR04CA0254.eurprd04.prod.outlook.com (2603:10a6:10:28e::19) by PAXPR08MB6430.eurprd08.prod.outlook.com (2603:10a6:102:156::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7828.26; Tue, 6 Aug 2024 14:08:18 +0000 Received: from DU2PEPF0001E9C1.eurprd03.prod.outlook.com (2603:10a6:10:28e:cafe::6) by DU2PR04CA0254.outlook.office365.com (2603:10a6:10:28e::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7828.28 via Frontend Transport; Tue, 6 Aug 2024 14:08:18 +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 DU2PEPF0001E9C1.mail.protection.outlook.com (10.167.8.70) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7849.8 via Frontend Transport; Tue, 6 Aug 2024 14:08:18 +0000 Received: ("Tessian outbound 6ceac6be275b:v365"); Tue, 06 Aug 2024 14:08:18 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: bb9fa82dd404a703 X-CR-MTA-TID: 64aa7808 Received: from L9f772ce81463.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id F170DDF7-4BFF-4184-98D3-C142AE2DCC3B.1; Tue, 06 Aug 2024 14:08:06 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id L9f772ce81463.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 06 Aug 2024 14:08:06 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=V/2Fru4o1+IztR5fwtpvSTrp6bM9MXUOT343L/Fi1JL72bekY8bKEZY8P7IIvgu5zVUMCxMTMKK2RP7zvjAhy72t/c+ltE219ls+e6WGbYB/Ogyd3kUjw/4Drfg4uvCMVGo2IS3rR0zhOeM6sCmvXOGTg8tD8LkHIWaYcwpzULgMFb45yz0+XpO2VpNGrHVELlJZjmjSb2kAC6qBQMk3RF0fB5ybuLac9RsebF9M1XMvy1QmZsJeBprdQxbZDIDUFajFrB97HPNnCJhA+wTe367/WYXgZDkYi0CFTD/rvtmgjKkvtF7evyh4dzPoyEv9XzEkNvBsuHPNvPYiCSjvjQ== 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=GjZcxcAJixO6TfGpZJ9ZaAMV/TGUhTP61/kAU9X/w3w=; b=O0sMTZOZI5+6VKL41lfGI8B9rlJUAM2cPDCLAZjoUsu58UUXpY5QGnW7k4ETg0VIN45ZUDX8krT2UZDziJVRUYC03gxRLwELoMCGE9yFVoEPNJgfUp7PdRoEs0ybF7ndQPxpn0zMv7MlRMSmxYBQNQKvJFna7OVtgkqUy41SaIA2qoljY1sG31uGXnMTg40TO7f7e1pOZzWDzxd3bIZdjtR4YWuvp7chij7k2Gzc+VvvjcmxwwPORE5tnfDGmhcNW4juoH3SwQA3COvD5XYaqfH3ez4uHl/Bnlh2qqNoXX+6CEjbKDEarPYpmW/BBmbJPWOX4dgnefHGHKJ44YSBUw== 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=GjZcxcAJixO6TfGpZJ9ZaAMV/TGUhTP61/kAU9X/w3w=; b=iCBiUM6LvXIgyenmHmxetjh/XCs/VOOm8x9+HaCKlGgLSaSxqHWb/HZCEdC7kUMMNSPWNWuh6EgFEB9LxIn91N8hxW2Y7QGOnTHuJ09was3OGaMPAPLD6ORNmrkK+8GN9QvbF58rm2/ZoYywti78KJRMgKLB3F3n/Gl/9RojCRE= Received: from AM0PR02CA0108.eurprd02.prod.outlook.com (2603:10a6:208:154::49) by AS4PR08MB7478.eurprd08.prod.outlook.com (2603:10a6:20b:4e5::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7828.26; Tue, 6 Aug 2024 14:08:03 +0000 Received: from AM3PEPF0000A794.eurprd04.prod.outlook.com (2603:10a6:208:154:cafe::3e) by AM0PR02CA0108.outlook.office365.com (2603:10a6:208:154::49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7828.27 via Frontend Transport; Tue, 6 Aug 2024 14:08:03 +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 AM3PEPF0000A794.mail.protection.outlook.com (10.167.16.123) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7849.8 via Frontend Transport; Tue, 6 Aug 2024 14:08:03 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Tue, 6 Aug 2024 14:08:02 +0000 Received: from PW070M4K.cambridge.arm.com (10.57.67.155) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Tue, 6 Aug 2024 14:08:02 +0000 From: Matthieu Longo To: CC: Richard Earnshaw , Richard Sandiford , "David S . Miller" , "Eric Botcazou" , Jason Merrill , "Cary Coutant" , Matthieu Longo Subject: [PATCH v1 0/4] dwarf2: add hooks for architecture-specific CFIs Date: Tue, 6 Aug 2024 15:07:40 +0100 Message-ID: <20240806140744.1082602-1-matthieu.longo@arm.com> X-Mailer: git-send-email 2.46.0 MIME-Version: 1.0 X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: AM3PEPF0000A794:EE_|AS4PR08MB7478:EE_|DU2PEPF0001E9C1:EE_|PAXPR08MB6430:EE_ X-MS-Office365-Filtering-Correlation-Id: f0b0feb7-81db-4930-ad41-08dcb62138d9 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; ARA:13230040|376014|82310400026|36860700013|1800799024|41080700001; X-Microsoft-Antispam-Message-Info-Original: FCHXIMoXcPiY+CjhQBjEN+WGzv7VcgToJ//JDeWj0NnFrg2PWp0uh4cD/+Y560J9rSLrIuhHVBoNYOej32xwVhYZ8GFIBFDU21InLyVpWWfgbTZCjCtL8kZr6Gnglpbt4PCToJvCAlYsbOxRjz7okzjSqjpZ13n2wF4+WisMvbCBcGfIAfT+h7M0DipkWCkWGe49I0fCVfBtzt5QI5/n2mDkBhQWGf/OVpQfdAHW76E9+iJ76Fg5WVAy0fu6gbVx8jDlaS8zqHfRnEbGhjuCQjEWyIYwg+O4STlVJaulBqQWBMfG/NPD11gNwQ8QErQfoICavjhIzpWjg2kO2az+ZNksxAZmwDRNccn2W0+oAaLcg2rw4FJed9kAx10KtyLQZiZW2jOBsTFD8P8MG3vWZGylIf/osM7jTbORwwNYAn1zk+wxbXyP3OtLXKRMY70Bbz8YmIabHdps3gJtdG5BCDjVzYlLIoJsON26G9a3eEI64HO/o2llhT6VThdSmHCNZvOvwaW9Hl26OAmmnHQwnuzDbZ3Jc7Sm7eb7mkM6WWyIKwd1sQ58pQZcvyE9GnmX0vQ0gGUIVMdWCzRF/r1C4rj/IvzVxoBCit9XK2aQ8iiImwT5sn9i5u/oUDMO2io8OVyc5s1toGS6tsvoT92h37xtBzgkSn5O9Z5ikRMksUYc4Ruf4lw9Z29E4NFuNv40xbXntwJSr9T689C7zkYXqaj3TL5f9e2gMBz+8pLDck67Pww5UepE6cbeoe8eHuId89U49aKlrqOOEUBaPg1BfxGHmKAvC1RvKufu4Qzmd7ccLLIwQEwntKEWrdwkX7PkBVwGpbbrecc4Zlfy3KyeT+d9aA/UJ/jONGgAU2BmEd7cvFr9T7WItiJbPFwkX0kA1HAq1UYxgH7ddRmDNQ2BlrUJ8JrRbUlvVD2B2UYwpH1PeQelDzoriv4+TPrPuMYjWVFDL3O538TxsvrZqAlAgwopY/Z4rf9jrOvctrqvmR3LiNditUKZrfO1kIkvxQCaOWDIzSMTQqqLccU6X+4rIq6cUDlc/9vDm0iWVNodKYDUdOtBzd5o/G77N0RnTC1NeXis0Zdtly1/vaoGelp6yVJiptLa9WxeBTaRcMSzU81Rnnd8TJkobv01uulgHH0TsPE/dJyMjcwhwQ7fHXsk+W3Z11zJQ5iBDb1FGMff+DPN50upR+YQVVgPSAm9gJY3ah/QcQAFcUoJw6cLGpAFAbvVDt2tPZdrdm2ZxHJ1znU/CdKvg5DgQZEibTN/sINb8gRKZBIL9pRcXaQwi19HuSA+QL4k1o2qOfokavWyKyFLgDbQTlK2guPdY4UzKLBt3OIekT4CCxL7K0li4S/8kwbjvZkpeDA/MPPXc+LamtNlltys0HN2C3M7AWXhF2Y0G9f0Vrg80gFcd7yKdkOaDZkeXL17QP+tR2Y4lOeeWXk= 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)(376014)(82310400026)(36860700013)(1800799024)(41080700001); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7478 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:208:154::49]; domain=AM0PR02CA0108.eurprd02.prod.outlook.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: DU2PEPF0001E9C1.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: d8d50d5d-c931-4dd3-6e5a-08dcb6212fda X-Microsoft-Antispam: BCL:0; ARA:13230040|36860700013|35042699022|1800799024|376014|82310400026; X-Microsoft-Antispam-Message-Info: 9mT6GwGwrRZoC9gDdPCAc4gHnxdI7W04bHi64Xfw9DS7VAbX9qzGvkL2Isv0AIn8qsimu00mZCXoooR59Lp/aeNK5lgnHsQ/fPOYQcQQGtjtkoF3/W5zS2db7NDplpTVu0zfLmngna0NlQfvPDNygadlcbI73hi0+QB1nZFkESzl34+3LcrvkPp7aDidS0Q2I7L23/44n8dz3nY9KRRDBtM3Ceg+SKksYB1QjYO1mcI8GLLJ7gFTn2WhSvUaH4bhMRxgcjN5rLkc+Z4ScuwS8wPZdMTpZMmuq8qlS/jUjr7A89XYrESGmTWFT/RM5CtNl5S615B+fmI0krwZ1vz43AqaGaOuQqp4ZoofkL8cOakD1pbqeqFWwVHNzpm8FTnMwVOAGTsbPRtpwDEU8EQXKu5LiWGRQPPWBVYx3PbvCP7nRnOPicqWi44/xJWo5cUqAPU5HknYyxgL+gM3aO+xwpiCgsFz/gEjk/3pbIAQ8cBlavBtw2SgMTcmYih0gEKHKk3T9N0s34WcFAqd0uMtNdpIXHh8Q4TuJVVyco06SbuHaWY3BjaMkdLtxXI2YvuB/zUlKlrB7YUxkv1Hf6g2OJmiokMocgyYJ9eFdZpGS4ygn+SydNEt1XV3kLbrCVOcGmCv0kItqQx3sXodtDR01gF+tgbGR9UXvJ4/52SuoCCh68Wl53u8e8zdHQYURhep1qWAL7NZzwqrNzEL6zbRL+yZr1layBFE0Kpw+jOHN2jEIN1VX5jPe4x/jLq1DlcMM7+B4cMCvrICEB8/xhaC59xrJcbCqCUQ2A/S5NljK+OTC3pOn6sscLuAidAxzcnSbN3w5kItnwXEn1NI3TGPj7AQhyfg/QfooaQFaVntenYj+M8I/+Yn+7X/5ORDBXt0nYKd5EwW1804VI6+x6Tibl5H7ltNn2XD5nWo7AZamiSZ7mmTLsMgDHFMMEhcUg5IFttFvBIgSccK3UJ1loRebQyGHF3La0k0YyrlS9M5w80cJWE7hIQcHFKptEguFl0/kLhwBSc7B4sIMfvmWXedYvvUscHEO8UNWTlQet8UAYKqGd4gMa8XerO65U7/BmDXvMmxI9PGcROF9gC3Sqq2+wavZ55Fx4p8Pl/5KjBbEsTNzl4PK7TOsL1B3tizrfyLJg+ip8j+iunEdathkhyNTX9tKh1hgxVOmy7hANGFD9gs2asvu2sm9+zLHiLJZnhvgtjtKnaUIdTQ28w6ayYxJ6i/dP8HWjBOWOw+RKu48wJbcwo7MquPe0pm2j5GarQ4WW3l2/E93sKy8WnIialvk8EQJDyFOeqzi6HV9G0PKuDnE4idoCq1ipW5c+T4Z5FbMtnoLFIBKT9kc0UOkMiiA3uaQZ4wiGusa2K6CqwxLNPwt5bJx9OCH5vXjahz4TxkRpXhjrblZ5Q/maT/SrDtQQ== 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)(35042699022)(1800799024)(376014)(82310400026); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Aug 2024 14:08:18.3733 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f0b0feb7-81db-4930-ad41-08dcb62138d9 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: DU2PEPF0001E9C1.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6430 X-Spam-Status: No, score=-5.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY autolearn=no 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 Architecture-specific CFI directives are currently declared an processed among others architecture-independent CFI directives in gcc/dwarf2* files. This approach creates confusion, specifically in the case of DWARF instructions in the vendor space and using the same instruction code. Such a clash currently happen between DW_CFA_GNU_window_save (used on SPARC) and DW_CFA_AARCH64_negate_ra_state (used on AArch64), and both having the same instruction code 0x2d. Then AArch64 compilers generates a SPARC CFI directive (.cfi_window_save) instead of .cfi_negate_ra_state, contrarily to what is expected in [1]. 1. Rename REG_CFA_TOGGLE_RA_MANGLE to REG_CFA_NEGATE_RA_STATE This patch renames: - dwarf2out_frame_debug_cfa_toggle_ra_mangle to dwarf2out_frame_debug_cfa_negate_ra_state, - REG_CFA_TOGGLE_RA_MANGLE to REG_CFA_NEGATE_RA_STATE, as the naming was misleading. The word "toggle" suggested a binary state, whereas this register stores the mangling state (that can be more than 2 states) for the return address on AArch64. 2. dwarf2: add hooks for architecture-specific CFIs This refactoring does not solve completely the problem, but improve the situation by moving some of the processing of those directives (more specifically their output in the assembly) to the backend via 2 target hooks: - DW_CFI_OPRND1_DESC: parse the first operand of the directive (if any). - OUTPUT_CFI_DIRECTIVE: output the CFI directive as a string. Only AArch64's and SPARC's backend are impacted. 3. aarch64 testsuite: explain expectections for pr94515* PR94515's tests in AArch64 G++ testsuite were lacking documentation. They are now thoroughly documented. 4. dwarf2: store the RA state in CFI row 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. References: [1] DWARF for the Arm 64-bit Architecture (AArch64) --> https://github.com/ARM-software/abi-aa/blob/main/aadwarf64/aadwarf64.rst ## Testing Built for target aarch64-unknown-linux-gnu and ran GCC's & G++'s testsuites for AArch64. Built GCC stage 1 for target sparc64-unknown-linux-gnu. Ok for master? I don't have commit access so I need someone to commit on my behalf. Regards, Matthieu. Matthieu Longo (4): Rename REG_CFA_TOGGLE_RA_MANGLE to REG_CFA_NEGATE_RA_STATE dwarf2: add hooks for architecture-specific CFIs aarch64 testsuite: explain expectections for pr94515* tests dwarf2: store the RA state in CFI row gcc/combine-stack-adj.cc | 2 +- gcc/config/aarch64/aarch64.cc | 36 ++++++++++++- gcc/config/sparc/sparc.cc | 36 +++++++++++++ gcc/coretypes.h | 6 +++ gcc/doc/tm.texi | 28 ++++++++++ gcc/doc/tm.texi.in | 17 ++++++ gcc/dwarf2cfi.cc | 57 ++++++++++---------- gcc/dwarf2out.cc | 13 +++-- gcc/dwarf2out.h | 10 ++-- gcc/reg-notes.def | 8 +-- gcc/target.def | 20 +++++++ gcc/testsuite/g++.target/aarch64/pr94515-1.C | 14 +++-- gcc/testsuite/g++.target/aarch64/pr94515-2.C | 30 ++++++++--- libffi/include/ffi_cfi.h | 2 + libgcc/config/aarch64/aarch64-asm.h | 4 +- libitm/config/aarch64/sjlj.S | 10 ++-- 16 files changed, 233 insertions(+), 60 deletions(-)