From patchwork Wed Aug 4 17:54:07 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Faust X-Patchwork-Id: 1513582 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: 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=OPti6kIF; dkim-atps=neutral Received: from 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 RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4GfzvT128pz9sRR for ; Thu, 5 Aug 2021 03:56:37 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 668923951C83 for ; Wed, 4 Aug 2021 17:56:34 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 668923951C83 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1628099794; bh=uBcDlE7+7FI3BK++lgi8xGJRsvNCdcDKBku4LuIGIXE=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=OPti6kIFjr24Fa4Leyu91WSJAqO3cI85FBXUAXmik2kk+AFYOyg72l8DW2s9m6f9T OJ65oT0r7EwGBT6Sf6gG9POsqhhucIjGcE2eQX44wgGcCjlp8V+g6poehU9AX+GPph pbMb9X7TEG7Oqt2xP7zyGi5XUtmNSL7quh9m9R3s= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 46F06384F032 for ; Wed, 4 Aug 2021 17:55:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 46F06384F032 Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 174HqI9e027122 for ; Wed, 4 Aug 2021 17:55:12 GMT Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80]) by mx0b-00069f02.pphosted.com with ESMTP id 3a7wqv0ag6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Wed, 04 Aug 2021 17:55:11 +0000 Received: from pps.filterd (userp3030.oracle.com [127.0.0.1]) by userp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 174HpUZt031193 for ; Wed, 4 Aug 2021 17:55:10 GMT Received: from nam10-dm6-obe.outbound.protection.outlook.com (mail-dm6nam10lp2109.outbound.protection.outlook.com [104.47.58.109]) by userp3030.oracle.com with ESMTP id 3a4un24yd8-4 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Wed, 04 Aug 2021 17:55:10 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jVSk3sawYIhs1zlq8ZOUcEJz8Ij0Yst7sduj07d2/IvnL89iRg+qSUooMfpBtjJMC9NTG9kouab6ITv7fLqapcdzkkXQhgsxNroo8zSPmzFti+yKkHgtr5syEdl4lIaSLHg8M87aV7C8GElHRCoA7pW0RGQTyoYz6/wbobTukYxH4jhh5Np9UuEngYvjb9QmDsfLOljUIrh7augWsV//EfdhADtWUDoiL7GHTHtHylXiUgXXyW0xU+N1Mq/qp2TDDN0vnlTgMc61FpEe9QEHsF3JK8AwmsPJdlb6I8al5Phd2WEQiH5K+RN1rDEdzxZxwWLQLKjDow8N8xCgvOXGJQ== 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-SenderADCheck; bh=uBcDlE7+7FI3BK++lgi8xGJRsvNCdcDKBku4LuIGIXE=; b=XdvFm8mTsx/NfKbZfrYiFEakseto6INEujIGTSttcoxDpbLruT/kVZ6jLRPzRTag/oEfA+HIfQRameI2Ba8IruKu03YrFWDidtwIVSAsVTQWlI31jzIz/ew+l3aaQCRN4VrVdnp8YW1snUjv5kgk8BFFGUOHGvzFchKHMyoaXGbgz/FUtt4bbwD1eJy0r6Gim/S7yD7D+Vi47dhRNmXcCMELnU8OWynFeR9kKYr5UPET0S4RMYe+axK9GhUatbT9MtkJI0oT3gNkLWrEXNGDQ9qaAOeiaBWVmmGboxHimHBQkEO5RDgf72VQhJ2Vu8IXSjnhOA3rSPjsqIkXyJwzhg== 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 SA2PR10MB4458.namprd10.prod.outlook.com (2603:10b6:806:f8::24) by SA2PR10MB4555.namprd10.prod.outlook.com (2603:10b6:806:115::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4394.16; Wed, 4 Aug 2021 17:55:09 +0000 Received: from SA2PR10MB4458.namprd10.prod.outlook.com ([fe80::9d08:a59a:abb8:3632]) by SA2PR10MB4458.namprd10.prod.outlook.com ([fe80::9d08:a59a:abb8:3632%5]) with mapi id 15.20.4394.016; Wed, 4 Aug 2021 17:55:09 +0000 To: gcc-patches@gcc.gnu.org Subject: [PATCH 3/7] ctfc: add function to lookup CTF ID of a TREE type Date: Wed, 4 Aug 2021 10:54:07 -0700 Message-Id: <20210804175411.6783-4-david.faust@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210804175411.6783-1-david.faust@oracle.com> References: <20210804175411.6783-1-david.faust@oracle.com> X-ClientProxiedBy: SA0PR11CA0203.namprd11.prod.outlook.com (2603:10b6:806:1bc::28) To SA2PR10MB4458.namprd10.prod.outlook.com (2603:10b6:806:f8::24) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sequence.us.oracle.com (2606:b400:8004:44::1f) by SA0PR11CA0203.namprd11.prod.outlook.com (2603:10b6:806:1bc::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4394.17 via Frontend Transport; Wed, 4 Aug 2021 17:55:09 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a5d86e02-8a4c-48e0-26e8-08d95771000d X-MS-TrafficTypeDiagnostic: SA2PR10MB4555: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6108; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pBaTvBPIj+bYaRdXAzlDCYUIGbNppcCsQec6lygx6THYCZedqq39aQdcYijugve+GSiv8gTMlQmql0xcNl8X1H72QXxiEBCBKAw5CfJ6tmItckHo6ufERZ9F2/2ylBypRzmCIyMcPB3FR1zsHjyiLZIXXUcto4aTUXHqRSd7lIeu61AHJP7QfHcRa5VaVQ+0hTxN1UzBj9ae1wi+wNBZc6x80z2gtkYbLpRam7EoXPX4ZccOObYoMaq/OS5Qb1WbdmEMbx66WznMvztFthMGnmU83VExWZX7vNJsGOLdJRbCj9HJaA5s8dtvjTqdFJtyBwgzudahqK+aA5DU13jBsXRMgn1xF3UoJeseHZfVoLsz/vLleJpiAFGNI2nt/Q0lQBNdEIyrAWu7H5/14LO89iadp4GEOa+u8pmmTm3pkhBDupAqMrARAAXLJDoP1K7bsa9QkvBEX3ppk1w9smdRPPNrQ58KG/YWBuVXR6mUddw34NK3nImJDZjG8y8MTdhnNEnL6pbmtcwjSFVOLIRBVk1sog1wtncvhJDJuYpGe8YN+yYF7ShjxauFn6TaImLKI0fw1c0Ey8ryujX7BlQ9aGDKAYbhh3UEeMZvv/4vetiaJMYKFt5AT8IZ4y2GlO/nk8d3kcoo8ViqmIc5wDhSEw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA2PR10MB4458.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(6486002)(44832011)(316002)(8936002)(66476007)(66946007)(6916009)(83380400001)(66556008)(86362001)(5660300002)(8676002)(7696005)(38100700002)(52116002)(508600001)(36756003)(186003)(2906002)(1076003)(2616005); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: m4YVWDbK0UnRGGSOGjD0tXBbRtqODANsUUEKhvL5WUApYiLVn/+3XK+KmyGqyPXtHnxOfsSSYQzLvxVE1I9CPXyYXFLMHGF+0MCm9kA1Oblhn+W+/s7KWGnvjg1YYBNP8fqgcztpHEXRbLv7V6h9Re9ymaUFCyUK5e43w4htQNd7GB/SOCNyv9ZJBFBDLWUgmTC45Zjao0+GohPqqmKW59Ipv3p5VATGeY6c8VQLepGlGMVzflejVkU1ybwG+ScqX0z+MyZbHEP2Jg5/XKUGkaBLxTt4dYQ2UxS0belPAAVPwLue2BlyjtR6vxfon+lfVJnQlDcANEx8qsCbQ+AzCSsEN/vyTrbe3AFM7h3ywyvNzAQLJhnVdAagvwQnZxLbd/eAiC1jhvWnU6GQocc3RVPtdhRJsOB8pky+hdz19mCtR0DvaqM97/Yd0Nwg9YV9cX6bLL25N3F9iM4T28j3bzYX1GjU6mCU7uP3m3A47vZ7ZFnhOFdN0KI/oR4kkSEAQS8Wo34yb/5SlEnaQtlsegF7fxi6vTlZYKKnTV7mMT6z+CIl5e3wxUhZLplFRmHt0lOA9TceHyZdnnNd6tuLtgZAnbrQbLnKbhShPdiLoGtxJ4caGRenolwK1MhBbYgUKoUlC4ApEuRm3nQJnu/32fEypT+4lFvzyY28edoNuKW5tpVPELDDNbjCr01Qa8vw9g5oibnAcFvNCAU9d44sSGHFASCa0WkkNm8YN6i+lBYClz6p3qOn+NNCEiRmmgSXdC1OkKHd1nDVaEmbeHDvcmEAERW/hkZtxFbw23DW+KqxnfHIMmIVE5YF52kNXl0eaL0fxfGYP6EDErXRkLTkV8SLzg90HiD05wQBK/yaLIudstZawgL0RtlZ0r+w+M82ENCajz7lWoJEqX7bg95hDVM2AyqjIQ9f30k5yLFj86UojokS0TljOFkr3dnbLq0+03ZGRwYtSv20l2WugGIwdyjRtDwUBvJmFBdSTzxZa3Le9G5RWn5FMxKIED/40T68lboECiRLC+vKkmw9UVXYsH6NtpsA/TcU6K8Jhyn7VMGwnW6pq1h7qTmYR5qcSECFG5LCSpfDlJMYNowPw5kRs5NEwhCqEePiFYLbJBxEeE+hhJ+bIiG2BNfw6Cdfd9thucHjCEbkotix9fI1j5WBez+j2PfrD/xeON54E8L24JdeRhKkp3Jn2ZJtDH2wYw6Weo0g8cJlNNIC0bInutXmEHpK1uKYfjPtHul0LpTFagpCDOCPlMuU+IlPXX7AKt1LGww45NFHbRpDJvbzoZdBIZGfleyRAd9Xs73X/CongJ2QwgpWPaimro6ZEQb6ciGnzlin0JmQF3/oNup0ujQD9A== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: a5d86e02-8a4c-48e0-26e8-08d95771000d X-MS-Exchange-CrossTenant-AuthSource: SA2PR10MB4458.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Aug 2021 17:55:09.5210 (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: lOZTSDm1h9OM+wV4acAYqtuxvHSbJZzoW3GqRq2HvwlEBeRTPHjzcyKsXcm6lPadEboYyxo8BLg5vU9ztyqzMQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR10MB4555 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10066 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 phishscore=0 malwarescore=0 suspectscore=0 mlxscore=0 adultscore=0 mlxlogscore=999 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2108040104 X-Proofpoint-GUID: 1cBmLIjPR2z47cPQ6HOIFEjbHGGVJgQP X-Proofpoint-ORIG-GUID: 1cBmLIjPR2z47cPQ6HOIFEjbHGGVJgQP X-Spam-Status: No, score=-11.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) 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" Add a new function, ctf_lookup_tree_type, to return the CTF type ID associated with a type via its is TREE node. The function is exposed via a prototype in ctfc.h. gcc/ChangeLog: * ctfc.c (ctf_lookup_tree_type): New function. * ctfc.h: Likewise. --- gcc/ctfc.c | 16 ++++++++++++++++ gcc/ctfc.h | 2 ++ 2 files changed, 18 insertions(+) diff --git a/gcc/ctfc.c b/gcc/ctfc.c index db6ba030301..73c118e3d49 100644 --- a/gcc/ctfc.c +++ b/gcc/ctfc.c @@ -791,6 +791,22 @@ ctf_add_sou (ctf_container_ref ctfc, uint32_t flag, const char * name, return type; } +/* Given a TREE_TYPE node, return the CTF type ID for that type. */ + +ctf_id_t +ctf_lookup_tree_type (ctf_container_ref ctfc, const tree type) +{ + dw_die_ref die = lookup_type_die (type); + if (die == NULL) + return CTF_NULL_TYPEID; + + ctf_dtdef_ref dtd = ctf_dtd_lookup (ctfc, die); + if (dtd == NULL) + return CTF_NULL_TYPEID; + + return dtd->dtd_type; +} + /* Check if CTF for TYPE has already been generated. Mainstay for de-duplication. If CTF type already exists, returns TRUE and updates the TYPE_ID for the caller. */ diff --git a/gcc/ctfc.h b/gcc/ctfc.h index 825570d807e..14180c1e5de 100644 --- a/gcc/ctfc.h +++ b/gcc/ctfc.h @@ -430,6 +430,8 @@ extern int ctf_add_function_arg (ctf_container_ref, dw_die_ref, extern int ctf_add_variable (ctf_container_ref, const char *, ctf_id_t, dw_die_ref, unsigned int); +extern ctf_id_t ctf_lookup_tree_type (ctf_container_ref, const tree); + /* CTF section does not emit location information; at this time, location information is needed for BTF CO-RE use-cases. */