From patchwork Tue Dec 13 18:44:23 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Faust X-Patchwork-Id: 1715446 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=8.43.85.97; helo=sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=JP0cjm8X; dkim-atps=neutral Received: from sourceware.org (ip-8-43-85-97.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 (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4NWnVn3G5Rz23pD for ; Wed, 14 Dec 2022 05:45:16 +1100 (AEDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 3451B384E206 for ; Tue, 13 Dec 2022 18:45:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3451B384E206 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1670957114; bh=VjlgRlD9ukke1kggcH9hbV6Hhm1g3mHTc9/M3ZK8gn0=; h=To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=JP0cjm8XPcAq2tjKqQi+35cq9jthbTdBagRy4OEE7FfEeE6aeea10kJs56sWLwHad wzSRW27Sq/TkmU4mCpZ3VqV+r1VGen6UhCte5SGe6PXB59Eoy2VQDPeAExgA5NCamv W/b455IwiS8bBrrGeBE+XCM801itIlAeqqMH61Xw= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 0CA8A384D6DC for ; Tue, 13 Dec 2022 18:44:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 0CA8A384D6DC Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2BDIiR6d028743 for ; Tue, 13 Dec 2022 18:44:52 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 3mcj09650c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 13 Dec 2022 18:44:51 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 2BDI5dkb011684 for ; Tue, 13 Dec 2022 18:44:51 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3mcgj68tg1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 13 Dec 2022 18:44:51 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TzCqn4EP74ob7rwDngzdReqh1AObrmjHjt5HTtDyZJMiBQ9is3a9Ese5LCRcCyiMv+5LbYdIwEcAH1WWMDRJKiWv+Z18yh56SKk2iQqgu7nke//hhTASN3q1OqxKjR8aqhLtXyRv86uNF+pcAA96HZGYijlBLUq08z5CrPXw7h2Fh7VO0o/g8iysKBgTqFP/sQhCFLAUlqAFggbNG0fvCS5sIYpf0PEF7x3RbVEhvL3azRae0B7lVCq/ahdSHDC5Rix7lmOjNXhJSc8lQ1JitQfMIBhtMDcrT1mqe2KeOtlMPr8QID9Wmi7dDaWV3QwUYhiERIrMTH21EekMG4rMaw== 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=VjlgRlD9ukke1kggcH9hbV6Hhm1g3mHTc9/M3ZK8gn0=; b=SV7fRZPAS5rgH4m/Icm6sI4pVw5rMOlXOW7aeHdEuKiO7ncIMROepArXamNRa5kDP+afpUux1TlH1IGg570+CyfV6pJHd/5jNbIWbQ/eQP/4aMGblInnxiAaUy9tRDgVM+Y+nUCloGmrjETsdlcpPAK4EOkQM49YbQMaBEVkKaM5vQWAio99YZ98tK2aYYbsEMg08D2HbSqmU7Ko3hTn6B5SzBme0xTaE38E+JauzNsTIZfqiSAIh5mls4l77Y0zRCvjE3tR2+K9864krsJEV3HShQql/hAQBsjY1hGAcV+No7yuvwcH0pd4JlBpY9w3EJyktDNY8FC/5N1esKRtIQ== 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 MN2PR10MB3213.namprd10.prod.outlook.com (2603:10b6:208:131::33) by CH0PR10MB5291.namprd10.prod.outlook.com (2603:10b6:610:df::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.19; Tue, 13 Dec 2022 18:44:49 +0000 Received: from MN2PR10MB3213.namprd10.prod.outlook.com ([fe80::dd41:a422:5763:8848]) by MN2PR10MB3213.namprd10.prod.outlook.com ([fe80::dd41:a422:5763:8848%7]) with mapi id 15.20.5880.019; Tue, 13 Dec 2022 18:44:49 +0000 To: gcc-patches@gcc.gnu.org Cc: indu.bhagat@oracle.com Subject: [PATCH v2 0/3] btf: fix BTF for extern items [PR106773] Date: Tue, 13 Dec 2022 10:44:23 -0800 Message-Id: <20221213184426.8861-1-david.faust@oracle.com> X-Mailer: git-send-email 2.38.1 X-ClientProxiedBy: BY3PR05CA0023.namprd05.prod.outlook.com (2603:10b6:a03:254::28) To MN2PR10MB3213.namprd10.prod.outlook.com (2603:10b6:208:131::33) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR10MB3213:EE_|CH0PR10MB5291:EE_ X-MS-Office365-Filtering-Correlation-Id: 972024a7-7a9a-4cf2-7584-08dadd3a1cd2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O5jXxDjvvdQdxCew/YTvP/xpm3kVe41SeQErwdkYr30NzMDO85Upq+sBg+IoP/wwmR9V+LFAYmO7xuKmd9dVbbYQOgRiAeOEkdFtp5FsDXK1R9G+jMd+R02GCqNSiyVO+xRf/X4G49IgE11m8l/5556EYhF67CbURwaOahzeY9uCU6LQ6ud4+ebFwAD6r2AXrorsQCZL0xv9f1vTfj6YRAUNRC8Afc1gLScjfaQvjftn5iTBQuf02q/tYM23zyB0P8LRo9S4BwUsL29dq2Q2CWfQ9FBeBEQxMUSL44pkWc0KmIcDPoZJ4OIGlL/6y5/S9Ls2CgXqnGIc8UHg1l2sKIx3Dw7xn88Lng8MLJM8AqPkXufuzPn12uN783E79TaFygXQvaKaaij/7zt05gD1OcHhcOTUelFLfof5X02O/lESKnfL15Xjq5vmJsTDHLMcBRYEEdKVWKrjWhvmLHZX/INeE3ZmNj5Wx6UyIbSLX5pY+LMvZNKtRVHXd53v9MXNwxdoJxzVyJOmUweVoiDBTYloH0HzxW1EPRkkAVG5RcRmtFGSchWzaZJROwD1iz6RC7ikJen9byzhYyRQiQtXdBPX4JaZLB+FbG5T4rbqpCKuGZqlFp5AbkFIZU/3l6uS78Y9plOn1mksBKcz1+pMhQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR10MB3213.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(366004)(39860400002)(396003)(346002)(136003)(376002)(451199015)(36756003)(86362001)(44832011)(478600001)(186003)(6512007)(6506007)(107886003)(6486002)(26005)(38100700002)(1076003)(83380400001)(6666004)(2616005)(2906002)(41300700001)(66946007)(316002)(66556008)(4326008)(5660300002)(6916009)(8936002)(8676002)(66476007); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Gtud3F5ARYImaDT6R0srNEYQg9Sa953ArveWev3+O3LqYlhbj7WWIe/ZG6hnd6qvmiKZAgfoNwET+bOLEBSJBC/c9rKR1HzL1WsCbpP1kiK/TitlcbZ7epYBpxMIJsWtTuns7y069jUsYbMm005b9MSV6u+WfyimVQ7UcOP3FgWIWFD4qq05WVg8V4w+/ACv3jN+ui9nheU6xZuElQ/IMJ9g5RtEU0R/noxkPJEDizg5YdZpYHub3DLIMvtLA35cOtxK4iODTibzu1rxTMkgYaNf8R59PWngAZUchfRJxW2Wd3cu3FJWfvBi83V6QLovbm55feI6UxIQf3CY0RkVkjYdGAW4RmirxDWjR9YF9LJzHheSh2M0QqOsRqhrGwgonq3YLxlS37z5RA1ckLU1So5q1o+dm4cljuwW4C9GLKm45t45qbjtMbHIDtrB/jogXci1a0VO5P9/B1ewKHZsCUv7RquKodrjKp+jt3Pv1XjP+RymZ4WlQ5lPZ2Ro6cPS0XhBn74SQ2csNsVOnAl9st9FA8Rfdz1ornXzwSFOresNxzh4v5nPQDNDXw861+IWaKrtmtRPMCNb8dRE1Q+alrEmjl5vcFFtM1M22qRp81RTIdeHPzSUHzBKQXQ++qNacZ9QIm3AMY7azSL9BXy6DBL+Mkr/n+qFtU/f4z9rXLS4JukGlXCY/IZhBrOF8jcto+vyq0axCnOWDyzQAFdQdtxxsh2uX7DusN5n0C+2VBHjV71SF/YaUVtloYaHqa62SGbQJjyzkihHwTYl+d9u+/7IN5qg7efSUPDuZOpXs1GSqUAw+003ODPvZNRcv2G8mdAzr/KI3A9CJmktj0LGYrcokIhx427lnRYnAcIMOqVtqm1SeqvKlBmpP0vEvhLunI3gbLG6LRoy8oQZJ77ubiXFdUQYJhkCR08oKWHiAeuFccKaY6W7WAY2id7N2SCuWcNokU218yeQER7xnz38TCgvXHX7UrnCTXDVSXYETmAAuXCdfP/jw2B3HStUZGhcAuzU92eJdG439ZocGoPz7lPZ2ztUIH/LTkbIyZqSN6bnVoE5rz52VR8tSk6kh0VAj5YRMtEHfZPxtHNSuDR/lOnFy0MYh4v6q4tOCWJIjm5IS4UaGjkdMEmDyJMJUF32Fsd08eyMnPHDUnwLIu0bVrXuHZNFHOL0c8H3EnQCXxcGpRxUG++IF4HsTKTdTgiWt9aqSzYDcH0omar6nUhUjzoAFqRpz/Z2mvH2nz2vCad2XhG45v5UmZaatNCaeRmafEQnncfSsymuq3jiRe9wafG5PjRH4E3cHIv8iSHoXJRnqCWUQVx9QN95hI1xL1LgV67ebwplUgS54ClNhAxidrG/VeOR0wia3WF8SWiJatn+xsHG1HaI6yWfyNUutpg6mAbwA72wsCh9aBjbV/SfYwtMcfyUefDrpePWfXURskPtLouodQxqyMxmaRp34qJfia37r5LXFoiLYyNpYZVlnmzjXcS1dOhbOwyKYsA0X3KkPHsoAPV/bKzxeFAZ4r4ws8EYarAkumz0lKgdwYZkWE+I+ROA4wCbiHUQ2X84XXBlmnsumSeIHi1RmqBjL63L X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 972024a7-7a9a-4cf2-7584-08dadd3a1cd2 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB3213.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2022 18:44:48.9461 (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: kCylzkHGRgVTKqUYCHTY/Rh2pHFVjnbLQtZWQnGbH+L3SM6MyY63+NnO4LXg2kTc0EgYNREp7dgGaD3EhTPxYA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR10MB5291 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-12-13_03,2022-12-13_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 spamscore=0 suspectscore=0 mlxlogscore=999 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2210170000 definitions=main-2212130164 X-Proofpoint-ORIG-GUID: uxqHTNpILC677wMYmvhdGyLxILNBBm3L X-Proofpoint-GUID: uxqHTNpILC677wMYmvhdGyLxILNBBm3L X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, 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 X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: David Faust via Gcc-patches From: David Faust Reply-To: David Faust Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" [Changes from v1: - Remove #defines for LINKAGE_* values, instead mirror enums from linux/btf.h to include/btf.h and use those. - Fix BTF generation for extern variable with both non-defining and defining decls in the same CU. Add a test for this. - Update several comments per review feedback. ] Hi, This series fixes the issues reported in target/PR106773. I decided to split it into three commits, as there are ultimately three distinct issues and fixes. See each patch for details. Tested on bpf-unknown-none and x86_64-linux-gnu, no known regressions. OK to push? Thanks. David Faust (3): btf: add 'extern' linkage for variables [PR106773] btf: fix 'extern const void' variables [PR106773] btf: correct generation for extern funcs [PR106773] gcc/btfout.cc | 184 +++++++++++++----- .../gcc.dg/debug/btf/btf-datasec-2.c | 28 +++ .../gcc.dg/debug/btf/btf-function-6.c | 19 ++ gcc/testsuite/gcc.dg/debug/btf/btf-pr106773.c | 25 +++ .../gcc.dg/debug/btf/btf-variables-4.c | 24 +++ .../gcc.dg/debug/btf/btf-variables-5.c | 19 ++ include/btf.h | 29 ++- 7 files changed, 276 insertions(+), 52 deletions(-) create mode 100644 gcc/testsuite/gcc.dg/debug/btf/btf-datasec-2.c create mode 100644 gcc/testsuite/gcc.dg/debug/btf/btf-function-6.c create mode 100644 gcc/testsuite/gcc.dg/debug/btf/btf-pr106773.c create mode 100644 gcc/testsuite/gcc.dg/debug/btf/btf-variables-4.c create mode 100644 gcc/testsuite/gcc.dg/debug/btf/btf-variables-5.c