From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id CA38D3858401 for ; Thu, 25 Apr 2024 17:47:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CA38D3858401 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org CA38D3858401 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714067236; cv=pass; b=l25ecW8lw65Z9ve66jJWuJc4XK66mNJNQcw1tkAvDzE3bqf/0TvVlWrZkmn52KlGlrqX4vyL0lZhz5Ba8nHYRKbIgh8JZxPPH2M+b3WMBJ3n/2iFBI/PFxmMiV+lw4l4supT02wesZZfn0KEz8fuCG5sZcXKeRCiJAJRGNJ9G1I= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714067236; c=relaxed/simple; bh=Qz7FbVxTvtD9arWQaK/+6YdaxFeJ98xdrJuI+yhoFJw=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=hsGowyfLB3LO79QPNm5zy2bZo3z/yk4EulmBMOJeh1jf/AzxEVHuyKUk1cUr9mk378ZJhpJE97Q88ZXZWAqqLJGpQdYe9K5eWCf5mZsnfiQA2TIHkfz/XOT/cD1y6Op8/f3shtSXOiyCE1RioK+Cf5Ry7N9W1vkjE4TUmSSnGck= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 43PHOd4o004047 for ; Thu, 25 Apr 2024 17:47:04 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : in-reply-to : references : date : message-id : content-type : mime-version; s=corp-2023-11-20; bh=G7vnevPSotvNgJ1IhsueeUL5TkkNccuxF2qj6KwL5g4=; b=m4a0bgDrWBjHxtGpUemuHXoINchphYBTRDs0VXlJvJj19WigFnaKg/36dP0aOZQBUJqR yVM2UqFZD+mgFH12x0QW5eZ9rWdApCy3K4YZJIQqoLv+MMlapq7kIrCLVZ/67yckGtSb B7bhLFEKzEF13jurzmYi6XFXXKTBypMF0P6OjzXqGArwkl7eZlFLRSJq6cAD/pm6f6H2 xVWARBaodLL3wKf2S0DjdbKied5BdGxZo9oHDuQL/IBDbbcuV7nGU4te1om4wvbvtvyX 0ZLEF2I3GHy9nlp2o4zLcJGsWe1rD96ynXKd1UtW/3x0bMDr6NLXVe7X/vHsIsE7XE1w RQ== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xm4a2mk12-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 25 Apr 2024 17:47:04 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 43PGPn8X019693 for ; Thu, 25 Apr 2024 17:47:03 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2168.outbound.protection.outlook.com [104.47.55.168]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3xpbf6r0y8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 25 Apr 2024 17:47:03 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LV7+PLCa3WSz+kRDqThd70UF3XBLe/yt4RaxAF3A5vsvs7mS1XsFFqKKHBUl9rqgURp1st2vAZO5B4VPiDMn6KLYs6w5HV49mASBg4kVS0nHvdmWWnYweUF13KfaKLlB+qjYOjP2K3nHdctqqiM/v9SRvSyFqIcM1gbPa4bGMjEiuThhzci5yzsD35gAuMrLPwEJ8rRSsaMtKT7HWPrcAAbY9Rhg3WC4urr7ULiLfKQXcXKPVcFyKTu7PeLekvpffbm31R4XgRJdSIbrFBmzPkmfSdBNLkjUaNXA+5ZoKgCBjXz/LJtsyemD16MVGfQHU3ol3WmM8h1vyl93e1kJUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=G7vnevPSotvNgJ1IhsueeUL5TkkNccuxF2qj6KwL5g4=; b=c4I/03PW9xslitcIPDXoO3jNYS70Do5LeeThP9oGksHr+sO9WKMadtLpD8Wn6nKf4dmLW5Goz+bLnrUUJ2fvrZEbhIznkc7W2WereQXDdhMKiUkMn04VReEs/SDlIF4khbihACYcAHn4XGBfJ/7ZZs53mj4FLyfWQeya1gR9Lt8Zz6cPmIj1vdcHBwI+mWWPVd+sqoerULwLO4cKLzjlYaJUUD0JFlcVoEqwByaigaYNC0BlG/mQktzKugIZMnp+CHmxoJUdS0MfVjH/wRAR54Wmt+IxTqaQWUBjCoF3QEc991UPeDm5idvm1SY0tPDEypSfRkCE5FdKIk6ZLLYQZg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=G7vnevPSotvNgJ1IhsueeUL5TkkNccuxF2qj6KwL5g4=; b=J4t6KyWUtvCbxb+fA1o8fzQkxqSD7Yf3GznFKnzWOWhU+v6KF+hOks2VxUcNW1JV+eGFX8rvGbtXIIIKNw+I6b10WpKFHqll70CEHNUK03jX80rFkqZFf8EJ3yYw+miQc+RNePnVKySDvQneqrXk5LIuBnssXCwY0m9lKZy+GaE= Received: from DM6PR10MB3113.namprd10.prod.outlook.com (2603:10b6:5:1a7::12) by CO1PR10MB4785.namprd10.prod.outlook.com (2603:10b6:303:95::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.46; Thu, 25 Apr 2024 17:46:59 +0000 Received: from DM6PR10MB3113.namprd10.prod.outlook.com ([fe80::e0b9:12d5:badd:6fe0]) by DM6PR10MB3113.namprd10.prod.outlook.com ([fe80::e0b9:12d5:badd:6fe0%6]) with mapi id 15.20.7519.021; Thu, 25 Apr 2024 17:46:59 +0000 From: "Jose E. Marchesi" To: David Faust Cc: gcc-patches@gcc.gnu.org Subject: Re: [PATCH] bpf: avoid issues with CO-RE and -gtoggle In-Reply-To: <20240425172113.7912-1-david.faust@oracle.com> (David Faust's message of "Thu, 25 Apr 2024 10:21:13 -0700") References: <20240425172113.7912-1-david.faust@oracle.com> Date: Thu, 25 Apr 2024 19:46:55 +0200 Message-ID: <87le51z65s.fsf@oracle.com> User-Agent: Gnus/5.13 (Gnus v5.13) Content-Type: text/plain X-ClientProxiedBy: AS4P191CA0048.EURP191.PROD.OUTLOOK.COM (2603:10a6:20b:657::17) To DM6PR10MB3113.namprd10.prod.outlook.com (2603:10b6:5:1a7::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR10MB3113:EE_|CO1PR10MB4785:EE_ X-MS-Office365-Filtering-Correlation-Id: c018ba11-bd02-4e6e-7892-08dc654fb519 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?9CxRBEx+2//7KT7gErwxKwNbaJ90BNkUjuj2139agXMYqXun4IacIQuIYKMX?= =?us-ascii?Q?NLAAP7Yi9pddBjzBNUVchclfrVui95EeUIH/WCfM1g3pX8BW4LKz8fQSjRLB?= =?us-ascii?Q?ya5HTCYwFiK8qehWXgCDcUxRSJ1YBnmZB1cSWKNU4Uqb9drNV3TmfVPbRqow?= =?us-ascii?Q?2mepf/ozQdF1+VQxgKdk36n8mz8ARqBZQHo5oFfb++UQR4c4OXeueiiKP421?= =?us-ascii?Q?RuoZnYC8pXnkRmubJliPD5TeTlk41DmnGLOT6+Lbm/4owqen7mhp6dKyRS+i?= =?us-ascii?Q?eZx0seMUgi8+Wq2RbxDnfvgq3OvG2gyK63S7ZDTdRIFTJJXqqG/pXS90bqsp?= =?us-ascii?Q?T9XBQMwZ5zwiCdDbPuo0YnLUkw/QA+fBIC6KMuXkAa3w6am8tCw5ppttgDFJ?= =?us-ascii?Q?kpdirEjkkjNGO7MkEujbprKJVDrqNctfISlEELhpoPlas8zy06FV8xowp/c2?= =?us-ascii?Q?D3ToYn8HV+1WZwhEyyb+sOYPyaXzmVy13UrAzD9o1sQkJ4hcfhonARgEgNDf?= =?us-ascii?Q?Xg4tLMtO+6YW8q/UOi/jGO8T56Owq4fJcTRY6FYE2BdHDjNCQlns1blMAPzf?= =?us-ascii?Q?dVnhz3WZjGN1D4w0FujBa2c7REsa61dCaL8klaFS0wAfixMk6gBMrt5eEVV+?= =?us-ascii?Q?n7zKLb8FWqWJzaX273EVWCPicb37bi1F63TpBlzKTvLQRf7GUbKxdkkUFvJ3?= =?us-ascii?Q?W9l6sThQqtnazppj5g51/00Xp3nIUQNNooNqGhAS4pJRBcBtD2zqwzPl9tBF?= =?us-ascii?Q?5dxs5YQFiGPGWHPaksnTmutmfiDrlYHkCGRjx/FB9QT2l0YWhpgRNw/UVNX7?= =?us-ascii?Q?XXMZzya1BIvlfY1diSmga+v4YEXcuRe+r0K9olzgSbkrkW8WehpTAvOSkUoX?= =?us-ascii?Q?cq1/+lfZ7iSofQnOX5osE7nL2vi0ZXAK58NKaVBZxCpktYEUWtdzPDfTTzyZ?= =?us-ascii?Q?aXhX8nwH9s9ypyavxSVF2HFo/G9kj2a0Bz+M4dvYap0Ps6I4uRLid4DiSow2?= =?us-ascii?Q?WT6fj8HjmbuJXzu+jkUgmteXfVcc/bRwxXchbJByHcXaxO2HerFjR9TNzG5X?= =?us-ascii?Q?Tkw+OfZGQ5pIejVaYxjTwtF8cVLWhvpZxUex/BcNneJA0oT7tlRv+qor09Sd?= =?us-ascii?Q?/uEYL071B0prRhXpZWNd1O3cpAZX7q7TrfOPttxRQGPlYJLLnL0kViRJuoAc?= =?us-ascii?Q?pYvpIdwUrXBpr6QvA8vbDdrKBoVz63AFS15zGVCpyO2WY4t3mrNWU03PMVc?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR10MB3113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(1800799015)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?AP23SoZn253PWYbM75/ZNqBupPqC5vK1wb2wFRdPuErVkjPvevQ/KrUmJHXH?= =?us-ascii?Q?JknToPlqD6WrxSmmlfqtcT7PwIU5iZLx4Jo0+Bu6oTNX4zonRZ88QwoXH8tE?= =?us-ascii?Q?BWZi9O8GEL/V2msgjfCsrWOn3LQbBXcvqZsNJ224Hz3PVAIMw3X7IqOZXslO?= =?us-ascii?Q?OeJbFLq8SOKOXpohjXVxsl2ig/+H805UCLAdk9qkdT2T+6Xagd9EApsbH9pP?= =?us-ascii?Q?R720aRyjTwmLx9uEj1ifFO+3OC84RqLCXL7iiv0qAmkbhD4ZVU1iyPGjd6ZC?= =?us-ascii?Q?fpNEuM7PAPKw+72ro4GzhjKZTsozShVC57jHgKT8VM7cgkV+e6FthRVA+JaU?= =?us-ascii?Q?w6QlqIXIQnA38tOAceHOpsJ3C8QX2UjtwH1hYhNI9TSrhFQ2e09Jqzz5JmO/?= =?us-ascii?Q?oDLkkFkwPIoveR4VkQwrRc+V8gp+05ljRSqZ/YhfAsSQtUv3A8G1dlXmKZJp?= =?us-ascii?Q?PCJhBOumUvqLTw/TxmOyi128ZBGje8cTga3Jau8aZdHJzJR7QeoGgqKMQPZR?= =?us-ascii?Q?4fBnx3ZLjrlVOuvjJGj/aCDS8xs1qOTVKUeZ/nNcZElbQ/sYV0KNvwu0pXy2?= =?us-ascii?Q?xOGIysVPVoTUUp0OQjj5+I3LwlQxgXZnwX9pa0uhLoVKIwQTIb+75SnQwyM4?= =?us-ascii?Q?L1/FgmUnFKmhQTNK4QxiL+bZTqIgx5tid90WM8fVtHofwQhrnd7USlX8FKoJ?= =?us-ascii?Q?HWFOTkEWq3p5lZ2O1pjllh/mg3aPkdNfinjsaQ1BQSPR4FW7kkVteqsF+oPU?= =?us-ascii?Q?/5i/uacFe8/BrKaInpOYjURMMESyLjiVIC/WP5WUeOKfTVpoLxcAdculaQNy?= =?us-ascii?Q?EFzmC8uf7twzhRjiwhYh54wxLFtkdC0kA4hV2+QZAjqV8uAtvSJgKb5Qm6E7?= =?us-ascii?Q?6de9+VbrKLA3tp7J3dmA27wv0jeDDX9Z5rw/8tdWF8sR/PLAqkmgmVKJYuEh?= =?us-ascii?Q?+HME/sl99L6DO4YkXZwQ6WiNtBLbEsWkYy/EdsI5Qf4i6NYKcqaCo84jXEhv?= =?us-ascii?Q?0OREVAUxSXl7XTH1YX+6iUOH59dy6TsAnzbZnNkIHnHFc/sE3lQlvHaJv1ZH?= =?us-ascii?Q?hrqh+DJ53ZdLxf9/tOKqCRrH3/SB4McRKHQHWEdadsN6bUrYclEc92+7iBW4?= =?us-ascii?Q?23qvnli4kqHrOr8gsJBIGWv8UT7+DdNYTwlYj3zrbrbTbCNcfpERtjZLAAnt?= =?us-ascii?Q?R2ZwrFbckMG0c9Ja3bectYhCRw5aXRe5T/0+xczzRffQJz2HqE1xUBFpNdA4?= =?us-ascii?Q?k4zFGTw1DZ0y02BhoS7c+DQCzrFRTPBsNzy6v4zK5CvQbR9M+ONaXBJ6/jSv?= =?us-ascii?Q?X/O1rxD9FKWpIpwRn1BDxqvJ2iS96/HlAEK2hMKjosP90JMG9iGni/16svGo?= =?us-ascii?Q?LusrIvXH6KbV/TBxdjuKpItCofJEjFfN7K2pFBFGTIHUR44EGiek/rgBMK9q?= =?us-ascii?Q?z6VNMeCiDrvpbWRMaWpG1pMYLRiew9UWIcuqMVQOG1BFlcTu9XAGXJYMmJfJ?= =?us-ascii?Q?jFTZomHKUbC45XJ6sOw9ojDJL1Mvy0ym8ECP7twsPT5YrxoNps7iQW9fAGlh?= =?us-ascii?Q?7F2UrWVGJPSsIL0uYXMryzgvFcV3AyIGxYPH6ehKP2Ft2dpbMhLVZ4urnmHq?= =?us-ascii?Q?Fw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: FW/CA0E2Fm8d7YIzV/zoMMbEQb9x0NyAB2nJgTc6CNl1BpqshPZCeaOYzcegROMqPpxidPiO9uMwGV0kKV/lPR1l/SsJGLW7S92ADALdkEagj2Hgwpn/HZ59sATqj7kAg9otoImhVKddndMDRiWHJVEvmCfCKHm0Z4IWVNIHCv7GAKYZUc0AZs+UY8SSIkpTL+DMCF50ZWAMYs6YJedWrBDm9xChOhlffVt7XBtJkC0OR8pGc+oGkzanMjxrsTNmIYv4iQ1/P201hrQkYO80ejvqWBHpWG/gV+EBqp2P0awKvNnNkOEqPM2++b69K6GosyXt6wx8deYNrbN7aiZpxr8NEL+16Cq+RP0Xyqge0bBJ/XAfjWxqMcY5NRwnIMiXJZm5w1T81Q45iADRpTfmvgPun3JPo/yNqe8k9SQ/alroo1Gi5ysWgJlDf/Asw3AVexIuW9cfRQBc8PdRqOmDGTV2ik/Ysa8+nfUZyzwCZ8oUXEejbCpW2VENY2So/vqgIXwWVXFb6t49x5p5+40OUYp3YOPfu5iUr7ONEhIX/E2hMrawGKOyWQetEW14brB+cbCeQcOUj63H5iDIh9bQlaucbM3QIRjWICJ6jMFHmmE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c018ba11-bd02-4e6e-7892-08dc654fb519 X-MS-Exchange-CrossTenant-AuthSource: DM6PR10MB3113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Apr 2024 17:46:59.7015 (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: 25GxRBrwjAG0DoZGQ9u96GjaM/K9UmBvoY5yf9VtaNl+Z6RHlN3kN1ze+ccsuUISq1T8WBrgXhWfzsOub3Giue2ci7m56aIO3QcjpRSbatQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR10MB4785 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1011,Hydra:6.0.650,FMLib:17.11.176.26 definitions=2024-04-25_17,2024-04-25_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 mlxlogscore=999 mlxscore=0 phishscore=0 spamscore=0 adultscore=0 bulkscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404250128 X-Proofpoint-GUID: wmD5smh3Kx_NyCBkRnbriiYEWWkYct1n X-Proofpoint-ORIG-GUID: wmD5smh3Kx_NyCBkRnbriiYEWWkYct1n X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi Faust. OK. Thanks for the patch. > Compiling a BPF program with CO-RE relocations (and BTF) while also > passing -gtoggle led to an inconsistent state where CO-RE support was > enabled but BTF would not be generated, and this was not caught by the > existing option parsing. This led to an ICE when generating the CO-RE > relocation info, since BTF is required for CO-RE. > > Update bpf_option_override to avoid this case, and add a few tests for > the interactions of these options. > > Tested on x86_64-linux-gnu host for bpf-unknown-none target. > > gcc/ > * config/bpf/bpf.cc (bpf_option_override): Improve handling of CO-RE > options to avoid issues with -gtoggle. > > gcc/testsuite/ > * gcc.target/bpf/core-options-1.c: New test. > * gcc.target/bpf/core-options-2.c: Likewise. > * gcc.target/bpf/core-options-3.c: Likewise. > --- > gcc/config/bpf/bpf.cc | 7 +++++-- > gcc/testsuite/gcc.target/bpf/core-options-1.c | 15 +++++++++++++++ > gcc/testsuite/gcc.target/bpf/core-options-2.c | 14 ++++++++++++++ > gcc/testsuite/gcc.target/bpf/core-options-3.c | 5 +++++ > 4 files changed, 39 insertions(+), 2 deletions(-) > create mode 100644 gcc/testsuite/gcc.target/bpf/core-options-1.c > create mode 100644 gcc/testsuite/gcc.target/bpf/core-options-2.c > create mode 100644 gcc/testsuite/gcc.target/bpf/core-options-3.c > > diff --git a/gcc/config/bpf/bpf.cc b/gcc/config/bpf/bpf.cc > index 98fb755bb8b..e6ea211a2c6 100644 > --- a/gcc/config/bpf/bpf.cc > +++ b/gcc/config/bpf/bpf.cc > @@ -192,7 +192,8 @@ bpf_option_override (void) > init_machine_status = bpf_init_machine_status; > > /* BPF CO-RE support requires BTF debug info generation. */ > - if (TARGET_BPF_CORE && !btf_debuginfo_p ()) > + if (TARGET_BPF_CORE > + && (!btf_debuginfo_p () || (debug_info_level < DINFO_LEVEL_NORMAL))) > error ("BPF CO-RE requires BTF debugging information, use %<-gbtf%>"); > > /* BPF applications always generate .BTF.ext. */ > @@ -215,7 +216,9 @@ bpf_option_override (void) > > /* -gbtf implies -mcore when using the BPF backend, unless -mno-co-re > is specified. */ > - if (btf_debuginfo_p () && !(target_flags_explicit & MASK_BPF_CORE)) > + if (btf_debuginfo_p () > + && (debug_info_level >= DINFO_LEVEL_NORMAL) > + && !(target_flags_explicit & MASK_BPF_CORE)) > target_flags |= MASK_BPF_CORE; > > /* Determine available features from ISA setting (-mcpu=). */ > diff --git a/gcc/testsuite/gcc.target/bpf/core-options-1.c b/gcc/testsuite/gcc.target/bpf/core-options-1.c > new file mode 100644 > index 00000000000..7d8c677f239 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/bpf/core-options-1.c > @@ -0,0 +1,15 @@ > +/* -gbtf for the BPF target should enable CO-RE support automatically. */ > +/* { dg-do compile } */ > +/* { dg-options "-gbtf" } */ > + > +struct A { > + int x; > + int y; > + char c; > +}; > + > +int > +foo (struct A *a) { > + int y = __builtin_preserve_access_index (a->y); > + return y; > +} > diff --git a/gcc/testsuite/gcc.target/bpf/core-options-2.c b/gcc/testsuite/gcc.target/bpf/core-options-2.c > new file mode 100644 > index 00000000000..8f466258e29 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/bpf/core-options-2.c > @@ -0,0 +1,14 @@ > +/* { dg-do compile } */ > +/* { dg-options "-gbtf -gtoggle" } */ > + > +struct A { > + int x; > + int y; > + char c; > +}; > + > +int > +foo (struct A *a) { > + int y = __builtin_preserve_access_index (a->y); /* { dg-error "BPF CO-RE is required" } */ > + return y; > +} > diff --git a/gcc/testsuite/gcc.target/bpf/core-options-3.c b/gcc/testsuite/gcc.target/bpf/core-options-3.c > new file mode 100644 > index 00000000000..ca32a7c4012 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/bpf/core-options-3.c > @@ -0,0 +1,5 @@ > +/* This combination of options tries to enable CO-RE without BTF, and should > + produce an error. */ > +/* { dg-do compile } */ > +/* { dg-options "-gbtf -gtoggle -mco-re" } */ > +/* { dg-excess-errors "BPF CO-RE requires BTF debugging information" } */