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 F01DC3846047 for ; Wed, 17 Apr 2024 20:21:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F01DC3846047 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 F01DC3846047 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=1713385303; cv=pass; b=lxyYvyOvKcumqFHENNijkYgDrYDKfcyr6aQoKgwYu4+fpJs7jMblh/JOpIf5dkwI08ASTYaqQ791AzRkE51i9Qj4GQdc8TLUdG7BvKOgCF+iKvIiM8gEE5XGupHvlv/ChTV+jIfrbnkUc6CjSB2ZaO5PdryWp3tVLePaaKEd8d4= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1713385303; c=relaxed/simple; bh=nAPFZM/0YpRS4FC4LcppFRZp4dET55Bbpm31h7z8pyg=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=MVFRhOVQq2YdK9h1Djtug7QPaT4X6ufh7hgvFUsMgRW7iqxKATXnwXa5BIjkZaDfNh5wlrI6id40FLpWzuOeC5odtKWUnCcuOHcoEpCKRTY3WjhATu8HbLtUOJZ+M2RIdBOUcESprSVUvRJ+iYGPVptwvwtmlyR0pCc9WL9/gRo= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 43HHiU2w019589 for ; Wed, 17 Apr 2024 20:21:40 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-11-20; bh=/9SiqKDzh3xARtx2jsxePGEGsyIRZSs1v5hxuaHJy3c=; b=Vk3i9NOMCds5Gyomr0X9TjdGljc1Xff8LUFmWDXF/8jlRTvuEcTvCoWpb1SnWuluhVEo mbkNRf9svqCeFZ5YPS9zXXRFXIO2SAVj1SH1kKvX7m6Zy+EIgd902ei55wcMSlhGraz6 0KcF4j7P34g1d2NDp9j/Q5Jn1yWnZpddZDZzSxYZptZM5OFaGnYekVgW4eUxwWpCLJff Ws8JKqORNBHtEkiebFCheUt4qlQ3VqmL9L3jovIRBi24aC6NTDbE6tstKSLfDfJGOSfr nO9tUqDWwJWaRYLKmDZxYuIGl2QQTpPDdKx0+ER8TcB085Inp0B2FQvCGahd/4rB6IF4 kw== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xfjkv8t9b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Wed, 17 Apr 2024 20:21:39 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 43HJBBfx021600 for ; Wed, 17 Apr 2024 20:21:38 GMT Received: from nam04-mw2-obe.outbound.protection.outlook.com (mail-mw2nam04lp2169.outbound.protection.outlook.com [104.47.73.169]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3xfggfperv-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Wed, 17 Apr 2024 20:21:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PtcmiiSn3FTeDgz13g0dVUvOAwYOM6BtP/s/aY3oP+zvZ+60X8dWLWdrS+R9W8PdBbHTTB8jiC+AH8PwpaoNuTisRAZEaPsxSwCihwMr49eXVfyPLK0CcpDjABrRnwtRd5UcqaAMLX4rYdilujyFz1nztP+qV10qy8o0yljkYCk8IdkG1ZkqDju2rXo6J3LefHR47l1ZNNl5lfEhDvwrzMljD8ybLjdjHqt30ACjYVnQi5YCGS30KJZVa/cCHgp6Kq8PUAmIOFX+ru/50LKbXiIoYMmFzV6sf4XEHrChIzgnclvTyhr+dkMXKL43lKQTvee/FB7GiDuWTGPi2WF2ew== 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=/9SiqKDzh3xARtx2jsxePGEGsyIRZSs1v5hxuaHJy3c=; b=Gk41MFFCKuJFpgGFcxO5sXjDr6ufmttUeNv2t17zteqKh0EWlNiwIzLTxGgy5OKXjUQApUZx+nJ7xOE+kIfkXLy6OsuwUuFSe6tpQnpcfJhejE9ip0Oqb4gpkJf2U7O3nA0/iJwm2ARZwFYXKBdOnp83ivyXgYvjRmLgdSxW9+0pdp99U+MvSTyhfjuA8Iy2R2Mv7RZb1m+pNj3oFiDzdvFGsnS+JvRSrnDeuW1yhCAv2RZfNwuuDKzePgeTMlM+lFnZSTJ+OBa9M2m433KNM0r/7NBiVxjV9c4LHpTVKteDEQGmaCQVO1/AXjc23NZiXBvn/bl+g6lbxpoXKZjd0g== 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=/9SiqKDzh3xARtx2jsxePGEGsyIRZSs1v5hxuaHJy3c=; b=sANwMhw3FOQlCn9DKk+gus6CT2M2VYTQ6SeLOlVpdCpxMiIClxAlXmKW5YzHb/rin4rpKKiWJMHSKq3UzU8/cs7Z36ju/Z9SUpmGGQcEGqjSW+iutgrqlFd2HKNz6mCFFEgtLocsQBevng6ObiOLotIS5tsC7JRvrGX0WlYCIaA= Received: from MW4PR10MB6608.namprd10.prod.outlook.com (2603:10b6:303:22e::8) by LV8PR10MB7966.namprd10.prod.outlook.com (2603:10b6:408:202::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.46; Wed, 17 Apr 2024 20:21:34 +0000 Received: from MW4PR10MB6608.namprd10.prod.outlook.com ([fe80::67a4:9544:7249:7751]) by MW4PR10MB6608.namprd10.prod.outlook.com ([fe80::67a4:9544:7249:7751%7]) with mapi id 15.20.7472.037; Wed, 17 Apr 2024 20:21:30 +0000 From: Nick Alcock To: binutils@sourceware.org Subject: [PATCH 16/22] libctf: make ctf_lookup of symbols by name work in more cases Date: Wed, 17 Apr 2024 21:20:12 +0100 Message-ID: <20240417202018.34966-17-nick.alcock@oracle.com> X-Mailer: git-send-email 2.44.0.273.ge0bd14271f In-Reply-To: <20240417202018.34966-1-nick.alcock@oracle.com> References: <20240417202018.34966-1-nick.alcock@oracle.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: LO4P123CA0610.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:314::12) To MW4PR10MB6608.namprd10.prod.outlook.com (2603:10b6:303:22e::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW4PR10MB6608:EE_|LV8PR10MB7966:EE_ X-MS-Office365-Filtering-Correlation-Id: 56eb36a1-8abb-4dd4-03e0-08dc5f1bf775 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LdSFn9w3MFmcWm3jkyxGJA+MYHrjNPNMrzHHM5VdiAEEtxcDRasQ7kRMogJBR5Yk+cWMUxK5RpDZP5GhDWs/a6Qzp7TLcOzjllm+/1A/6OsVS3JQ+8cDApaL5Rp5kPp+KiRKC+hMjlWoI6Da4z6ZFIpVvR5zEvzRKI323S/V3u1FVmGXFHliV84lq35z4wCvrx1FLbXOhl73gpjfdKZyiwhYHqcxWxFBLYkoE9zCfiyz0a4jVXWEId93OW8CUEyITZB7HQlPixyn2Atj1n+cz8M/FJAao5HSgY9FoQPXUrMQihbbkT3xHpop9CpuBGTtvqbZFCO6mjn+O9UT/wALAHjH6lH7AsvyRUnqtW5XyyqHO3LGg872agnYu+iJ75AD5vh4aPyU2CjzC8JkZjVtPBI66BlBQdCqeayTkYtmWYfabJvFR9rz813DwXerBloPjskEhaqW5BKXp2bfJKq2OBvKeN8ZoirAykhrY6TL6jVVg8lxZpaglvD+dUS6zphKhwZx69Reb+hcL5hVEi4eeRzuOBC7ZcEXIbRC4wQH2TLpsnhB6fMS9vDuF7EFlhObjcfJekpi4lKTiRAsxbNDFUcntDFO/zUl4P2Csi52Hr0htaqjySvy6R0bUSZhVNoknp2zCrHrsPMKCyxiHFQ/XV+raIqUYEKYiTGCbaRa78c= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR10MB6608.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(1800799015)(376005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Oq2wPvYSXzdLS217TmmfU8+Zeom/84mGxWD4mT+IbKekBkrl0c54OC9oY755?= =?us-ascii?Q?Iv0dn0Cdk7TQ5Q6cUGzUcaEMCO45AYrJIUJ8gLtS3EVWXQUPBS6d2hLMJj0c?= =?us-ascii?Q?zajCUyE4b3e2X5mPhgcAbWBh3iqz/1cQ+PYtmaE6O4GOdx1+dLBpEqfeyVm9?= =?us-ascii?Q?gO81bKHkcxdk809jn4IRELKI9o9WfrqidI1brHI9MGVCGqQj8I5387Tf+Yyx?= =?us-ascii?Q?zI32r0DUNSAw87nTV9BtmD0OzM/g+ONv0OEOkEXfCVx90rkWM6cAFARn4iwW?= =?us-ascii?Q?m/WwSIKPrUUnf9YpJei9uNxOERdD1vwqG2N2we1BxH6HtQ/Dg9xVzZ/rc3Zh?= =?us-ascii?Q?t5t0JOGafm20taXgVsiumr2Em1ddi9KBwmMSRj7EF0DERVWmB/6H6F0YoL17?= =?us-ascii?Q?pqssBGSyguzy5EvydntyvsTrBrRZyXRVaGryXXb0bAgoF1GpfQak5mF+sYb0?= =?us-ascii?Q?63zbFJqdKMdmTZ6HUZaeSXM5f4Cq0MUDoODWkLQUGvtPH/my+DGZ7pdN+hKz?= =?us-ascii?Q?JSL1V32m2DX1UJj9HGKcB25ZORaz9R3hqdNqdqEheJvL4y40RIkk1j1amHQc?= =?us-ascii?Q?odeAVFTIJT9QDR59BQhk/r7TeT9xzObZevuuzq1baT35jC2IMYE7ugNLVttx?= =?us-ascii?Q?kZiDPIHdhtTW56rEhxDqd8ZGmb8TZrXMLUS2X+XPgh47K/X+c4u33zCDMgtE?= =?us-ascii?Q?Dl4ZDIGvwcR2EycDEt8HcJB0XjCJ3TfWlPu7mR/lzLkKnZCvgpEPhNEkw7R/?= =?us-ascii?Q?ruxnfer0vrVduicJuwwhyYoXktXAeKankf7G1tnjdKnm5aJeNFJLATevpWWC?= =?us-ascii?Q?wcME6KsPUXmSSYmcnA7e5Z+UdZLBGoiqKdSLcf5m1QDhinSBcBr8IcQcI3uL?= =?us-ascii?Q?5JwKAb7NMj4lz9kZ+HdnPS9rSUdVUkZ4gGN8IpwQSxyJFfHDGMigw+KodFUL?= =?us-ascii?Q?Y0VMWXgMfEpEH5xHxW/JP1KWEEnBjkFrd9YhuA/N+QT4X6MH3Xn4fzEomnUn?= =?us-ascii?Q?nXczaS9UT8LSWiCaQqO6C1G23itwQK9Semdjnb/16Sspi39FtPNuPRICKyac?= =?us-ascii?Q?Ow+FhHdjAoljqwKSp8Q5OeRjY0b6u5vs0od/7i8Xr9qKIBgI8V73fEiLgnc6?= =?us-ascii?Q?emTnlVZJHt5KeU9lkxFsHPDD51GMVCdET+LG+BTAPdtnHRfKCA4ngUcEUR74?= =?us-ascii?Q?FGzmxD2kkSAP6aAbebGVGYhccRSv4SJP0f5FcT00tDopSJ8InTydHrvcXR/E?= =?us-ascii?Q?zBONxfGPi6FupMJ60iUZzYr5W7mExxE//O3+kVPmO6p46kQCmKpqbaZcs/rf?= =?us-ascii?Q?Gnhe/qRTRNsseebudk+u3mI/LpMjbqqiIL39HS5Y7al2vS487ZyJsxCkMPtz?= =?us-ascii?Q?EhdkHD8eOFHeYMGB8Q/bVIq1RmP17eIao4QJTmjmJkmb4MLHWV0guojyZFzk?= =?us-ascii?Q?7+hCzfmXQI7lU4ML2kt5KxpwooHR4B0b7rzKIVRkrqk/NNTHbUsaJ+2cjbkn?= =?us-ascii?Q?pUOqqfqVM2u6jgGhKy5iJAkhxtEKr2BEwJS7xSYW0ybDnrIMwY+lCJmjCdeO?= =?us-ascii?Q?K1XKQ2EvEh7lHOhmyEgmOA3W1z8+0iQMzKE3krCa/FkdvTBDMdValVTpDrti?= =?us-ascii?Q?yw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: HDq2Jvn4h43BeVCuQmsmtzprJNbcHu5oeCwGIYTKC7v1U9S34aInC2iAKumjNBRJfgMaQO6CVfkJ85uz+XgwULV8ZZRYfcTX4MN4lwcbyJi/64RUswDs7jRKtkPsw8s29NENb/4sIuxiMXYZKKrTSro5Ic8q4Mq4Ahc4rOzSGntp9ZV0GmSC7+rAp9ZR7wkBYyMNkl0q1+AJ+a2aEtzB1nP94sckZUeP6CQvGICKumckEfIs87807dDwThnZjB2NJkvlFHV+2hXB1zTB+bjFdr7nFuzw8PQWVmltEK7KhMKKPBk+Tvmx1wxZRtcGbZXerTIg5uvDgv6pTv3rCov7tglrbo/o2J5XXiA2XOG0oy0NKQfW9rN3B0QdvcJLZpueD5aFacCKw5aaGuFmSkLgJYZk5WE3LOaQGb5zRA1Lw9jPwhGSN8KmS7SQFPm27R+qnN/fZHCKopQS06U5lUDdoCyyMEuZ/AuI3Recv+ang9UlPI7xbmT+k/BatxN59jXGd8tc48vBxKHjVDVz5lEerG1TTIP8L+IG7OKu6KC3wOeio5O1fLH0lwpTio7m3o4eINI5Gnyrinw3JLHNv+Lw5ZJ//Hv79Sg3GIg+47V356g= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 56eb36a1-8abb-4dd4-03e0-08dc5f1bf775 X-MS-Exchange-CrossTenant-AuthSource: MW4PR10MB6608.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2024 20:21:30.0984 (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: RpvLYUy9hLmbMpflIidC8CStM6R2JtOYiUHEBImcyafrtVd5REEjKp+RCJndii0QU0UH0gsdZIhmc4+/egCSFg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR10MB7966 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-04-17_17,2024-04-17_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxscore=0 mlxlogscore=741 suspectscore=0 adultscore=0 phishscore=0 bulkscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404170143 X-Proofpoint-ORIG-GUID: L3XqtsFueQ1C3-Seu2tb3kBG-CbZt9NC X-Proofpoint-GUID: L3XqtsFueQ1C3-Seu2tb3kBG-CbZt9NC X-Spam-Status: No, score=-12.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,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: In particular, we don't need a symbol table if we're looking up a symbol by name and that type of symbol has an indexed symtypetab, since in that case we get the name from the symtypetab index, not from the symbol table. This lets you do symbol lookups in unlinked object files and unlinked dicts written out via libctf's writeout functions. libctf/ * ctf-lookup.c (ctf_lookup_by_sym_or_name): Allow lookups by index even when there is no symtab. --- libctf/ctf-lookup.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libctf/ctf-lookup.c b/libctf/ctf-lookup.c index aa251bafb89..f37dd7e45ce 100644 --- a/libctf/ctf-lookup.c +++ b/libctf/ctf-lookup.c @@ -1045,7 +1045,9 @@ ctf_lookup_by_sym_or_name (ctf_dict_t *fp, unsigned long symidx, } err = ECTF_NOSYMTAB; - if (sp->cts_data == NULL) + if (sp->cts_data == NULL && symname == NULL && + ((is_function && !fp->ctf_funcidx_names) || + (!is_function && !fp->ctf_objtidx_names))) goto try_parent; /* This covers both out-of-range lookups by index and a dynamic dict which -- 2.44.0.273.ge0bd14271f