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 33C3F3858D1E for ; Mon, 6 Feb 2023 16:37:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 33C3F3858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com 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 316Dn2fk005347 for ; Mon, 6 Feb 2023 16:37:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : content-type : content-transfer-encoding : mime-version; s=corp-2022-7-12; bh=QvlAlQldkBhG5irOoPgxnP4iOemQM5uXpJkl33XUh54=; b=CR+J9chywWWepFdr6fhWQhJfQXdxIoa9h6E5wDhRHXb/A3OlnTWuX9TgfF0AbPZn6ZpM hudMM8nXdy9GtK9jFFT5YhwzA5RqFuD17Ak64pOkg9sArTOa6M7oUXJKJzAT3Ivy+jww Nuk51/58d/4hyMHdTKUqH0BczchRGvk8EJZOuYSUK8fVy1oikGxCMkymU9eX3juDwr7J XUszSFu7rsFHlbv/EYnRbxPorYncg2kXInYpqrSOuk1HZypdmHqfR0FUTuXiXOBpmlAs SXylNKyp2cOZjxNDTqQ4CMDyKV7z7xWdMtNcfA68BSPmpcK2yjGb6VF3cLxjQUppgt9t TQ== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3nhdy13byc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 06 Feb 2023 16:37:33 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 316F9LRW000832 for ; Mon, 6 Feb 2023 16:37:31 GMT Received: from nam10-dm6-obe.outbound.protection.outlook.com (mail-dm6nam10lp2102.outbound.protection.outlook.com [104.47.58.102]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3nhdtasq98-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 06 Feb 2023 16:37:31 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b3kzwQXAtfhq1yi51u8yBz6yPl6S3rJRelwl5SBEqZPu1QmlCWU3YyM5Z1w3v5ZgCMTJTzPrcyuuowjnlCKbUYfdSk4dIZSog5KutdzPXpSkmcqg319bSkBj+xYQNw0G6GFfBNW/JW8hO6+BjG7b0/xzR9sPIgMyRnhKMKSLxPXEo9rABqQ2JyDdQHOvTlQbdIAoi0Kjbvm2SeR/ycrA5l2EDbGvuBCMnlb7k4z/Zm612pvD2a4vldfa2vWgNtXg1ydaVIF7h3Oan167WSq87KwtSSEor5W+yJSIhTXMqj2/XUpooI+Ter5laguL6KddDECbcUlA7mAKnoUUJO2xwg== 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=QvlAlQldkBhG5irOoPgxnP4iOemQM5uXpJkl33XUh54=; b=PbWTEdHMS9PZ7Ok5axw9MTsi+iox5BYti0quUZW+hmLP84IwHUmBxXInhRI7Ymhm+w1UJmFd8idQhY0RgqbiXwSjggoTdW9jexMvGThwR4pJfOVuUkC+SmsJkDyjZBGBum2TdUfDrYekSeAbubSkMUD93vBAYc7HA5i8UWmFPEBpMWV2vkT6YqAZtYpry5+X7qPwg0S7Q8Kk5hpreskWji0bNbel3SV4E8wcCOlNQGYOFRYglROx8GR99iLAPUVjEYnOkFGBzXMCXZF6UY7S7V1vSm00SASRkHVo1rmpiDxS1zCdPHi57gYrvhbdGsXB+g0eWyMt46KUVLFO9LsDyQ== 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=QvlAlQldkBhG5irOoPgxnP4iOemQM5uXpJkl33XUh54=; b=RzXiTQ06KiV8U43CDfoTRufJ0lBgcspwLlf+aKFljL1Dw8CxyLLxV1K4G3eXFFi46UvYanxL4vvoeC638gYtNAsOed9PKrCHZS8ZxkqTXYXkg2sCFlwA1734wSOQG979SiNAYw89eRg0dG8IrTr8lXUDmEi+nqrWmMKAP4j20vw= Received: from BLAPR10MB5298.namprd10.prod.outlook.com (2603:10b6:208:320::13) by PH0PR10MB5845.namprd10.prod.outlook.com (2603:10b6:510:14b::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.15; Mon, 6 Feb 2023 16:37:29 +0000 Received: from BLAPR10MB5298.namprd10.prod.outlook.com ([fe80::6fa1:1e82:22b3:e869]) by BLAPR10MB5298.namprd10.prod.outlook.com ([fe80::6fa1:1e82:22b3:e869%3]) with mapi id 15.20.6086.015; Mon, 6 Feb 2023 16:37:29 +0000 From: Gilles DUBOSCQ To: "binutils@sourceware.org" Subject: gprofng SIGSEGV when processing unusual dwarf Thread-Topic: gprofng SIGSEGV when processing unusual dwarf Thread-Index: AQHZOkSXWr7q2XUkXkuETOGvKxR5Eg== Date: Mon, 6 Feb 2023 16:37:29 +0000 Message-ID: Accept-Language: en-150, en-US Content-Language: aa X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BLAPR10MB5298:EE_|PH0PR10MB5845:EE_ x-ms-office365-filtering-correlation-id: a99a8274-f97d-4284-73c2-08db08607009 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: AvwYTWZO1Rg6SzQdrXyb7qJLXwHQRX0Cjn3rlEmEyBy42Q/x7YaVZxGBHO4wrNjVukomDSbEGp+jGV7VgybkPYpc48TsXrVL9VnNAvZeNvlrHuCb4x12fyjZWgMI8evU9KWVhsxYnErNNR6YUQBz0PLCI3UTdVGEwAaRSA4zrobn0sxFz+It0KdCv1H59w8pSrRND/bi+enTY9JuPh2q3YF55OMvI+5xE+z0ySKgNrLTGzaPWySdoEwhOdJvMHA097fj32bXb5I2x/YjBR2brJBEYGMpoFFSrMvovHzvDOTHHGRIbRMhL+54AgKQxSnkP7DjdI5RM1bpeA4MYF2JMCGMK4zFum6FooEe6xFK2ALHI7NLz0iGwFA07/hHdaeyXNh5xnkvAu7JsD/4FKyGmq7l+aX7AonSCbpUt3l3zdgcAv6eSVnGScyVCagcHIR4I9WAdV2diDT2sxo38aV53SzBe8d6/CI8XNjz8OIs6p2IpDddsrQFb0BBWEeMPdjW4yqVUnXZYmzlAIFV3PwIsUFC5btAiuMENqkJ+WaTsERLiTQZiOmrDcjXhTv0sXxoA9pB/UvXJSb84jKdpC5Yls4FmWKM8yxgNm/ekGQx+vzYTKQDK57XESn0k9vD6B+PEpq2RVJmrVXbuB05NMeJ+8EPNwYvE+eGjgePBGUlLs2zfLbSCU166M6s59ep656jNAG5aAEFvPoJSDvlp8V30g== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR10MB5298.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(366004)(346002)(39860400002)(396003)(376002)(136003)(451199018)(86362001)(33656002)(5660300002)(38070700005)(76116006)(122000001)(38100700002)(64756008)(52536014)(66476007)(41300700001)(8936002)(66446008)(8676002)(91956017)(6916009)(66946007)(66556008)(316002)(478600001)(2906002)(55016003)(83380400001)(71200400001)(6506007)(26005)(9686003)(186003)(7696005);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?vOgWABB74nFvGCgSrShp0Sipi8kf1iQYPZBXon0i4SNurPWM5uBKjMcntYqd?= =?us-ascii?Q?A5aO+dLla/LUDeDuxq9ZxzIs2TquIU68DCkXSekLCItQYVl/fj5aJjBAreFW?= =?us-ascii?Q?Zg68eylToCgD4JkyvNrEjgXenxJou+B9YjSb38MSIndSamZrPr75HxOy8lqW?= =?us-ascii?Q?Wn+OjglkZPZwpEy4DrqGIB02EjM+RcolYWD57CYmTD3txLIkQdqKf+Snbka8?= =?us-ascii?Q?94+WjY3swvFESvnQ3X4Uq0VUbRySQ/9C/zOLyKeTCib40Nhg2TFSVxZqOXzA?= =?us-ascii?Q?RdF1ZgitKb/INECo6UTiC8/P6m4xNWH1xuYVNGoYbAwkaFH2XirDT/cIGWRC?= =?us-ascii?Q?/8u0/1fPYYtK9n9Y8N+oB86oJ4y9nuyAlpL3lmFMnb2Wr7tA3MNSAMBl8Iqg?= =?us-ascii?Q?WVoih77PPOwZIZXM3PKwDaEADnqR7tEIxPluqAYLwj4KNpXpYkB4jQpYx/F9?= =?us-ascii?Q?n/ufnVveS9rPt89NOlL17zf5ULuV6kLL6jcLzJwzJK1NGQMTfxxrgd2+M9w7?= =?us-ascii?Q?gc9uAQs+k9+dahd/I80GcNCXVkE+qwmih/DQBx39sdgYXOmyxyX1diHaE9/B?= =?us-ascii?Q?pTGhRTHJfb8OZDFls90BCHbdXpyg1ydDgbzGPp7HA06i7XDzNGnlinccWEAM?= =?us-ascii?Q?656+agzdfS0hNleZ85EBwPFN9/2b5L704U87yFjkjudYSaNmxGIbR3KkCmah?= =?us-ascii?Q?En+GwwArpGlHr51ijahPNpQypW+bbK5i3SLTguaGFvaA4GesjBX546iQvLNG?= =?us-ascii?Q?EgzGG+gI/kNgLNN5fW5wieg/dz4uUspoyqGt2/I59RLkv8ue60kkurpLtch4?= =?us-ascii?Q?eM23zhAT+Y1LwBkkNy/mcozIDEW2XjOvv/Kf99tncOj48hElqxbJZ9RnMjm5?= =?us-ascii?Q?c8A0x6rzyi409lxBZSgBvDwRp6ebBtpF07K4XFedadWsMkMHC3yDm5qoFHhv?= =?us-ascii?Q?7gNEfz7R/woOw4nrm2CAvPFbM7AQxtrhuuVC70TFpV+vGGO3eWF19BL/jpgT?= =?us-ascii?Q?FP2lYfTxnupZYroe1dxWHI9QVoRpnb5zEXp2Ko6tWR5rcUb9iBL+C+KS1ce1?= =?us-ascii?Q?QzvcB2JmajdPprxCI7BFbtPtE6LSMa+BuAjT0/k25LsndQvFP5zfhVqdubcc?= =?us-ascii?Q?QZy0wFUN1HUBXSDT/PsHWkrkauIEvb+hUQedb++8rfGAPzyYSbZWMX2zIceh?= =?us-ascii?Q?F3/veIXLIxeSPfddqy/eAM8jOOemzRHs1DQJahDXnoHxV3qroTA6v6BeP4/x?= =?us-ascii?Q?DEjW96soMoQeunREswHPwvLDwfYd/2GLt3ZfCvbG3rHzSXYc2NhgfbyXmWMP?= =?us-ascii?Q?z7DysPh5vOQNmDV1eNy/Z+et9ucBdryWMLkKcxtBLog7GOl1mN2rBe3pUO3w?= =?us-ascii?Q?0bUBsLcF5y7zKD3LqEQOrpYQPU/nAZtwrGvzo7MosSvnoHtCzPhHEvju12GO?= =?us-ascii?Q?rYjkQgrvkKeWiMpR+fFUBoiEUfNP0gI9hICE5TxhHe6LGdOa+yQldFhyuJWF?= =?us-ascii?Q?8ztgJ83j20PRUslZ+6zTjT9wqYMepvIBacIoNWkHCC9vBFdTyGJlsxibsDIJ?= =?us-ascii?Q?7zoYFIGN91a8aJNzGqXQXf7pFRmRBFMCv6m3HQGq?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 32vlqzIV2+hfY+y1oi+ZkA4FBEz8+XbqECLIQsMZTWzmg2/v8RCGfFzxMXzo4V3+OPL09mhOjRbACQBH2U6zRWxPnnWNJF5Tq7lZcYrmyqQeJRyFxUMp5xLb/QSLwn0Mow++/wOx7uEMR4nblUGbz0w7ZaSvAllL14SYau2/I2giwGjB4vabFGIY2GEHvYqvVa8OoTgIfB3ik/IiEQWSMN1Y5nzPclfMiI86+wRN4aH6RAK1fKujA3bUm84orh3qgG5/4pQ47QvNxaykHkkNBsOa63XMvG6iVqLcitLKV6q6HS7UqbImZ0cjd/ILPJm+XT1obyyDVOTONroxW6UzaTxRpYW7Npi1VqFrviBXi4bKMkSowF3+C7BFR1q7FgFD+CJ4MMwEyWKzEdG99mPWwyRC5MPl16wrZjjIQT7HdbX975gSAW4k97LBxhETk4rR6uQt03Rb2z5d9VtH60K8aJ6yylOBiPjkFBqW0nBMTiIQeZnIMxriMqeLxnBxowR/wGaHqbsX/Ty+KPCM+Bqk+4vV/td3xT2/sXFh8aAOb/UbaHWQ2eSOBlhncidFlY/43tK8mSGR8EeE7pmzqpdfJYXWE87acsnamVXv9AuFmr+qIoRa4cYaN1qVsJdM5Srz+HHk3aTAyoGnfpp5D4rwjdQ5rP4Jmx6vI6+g5Ymzk3yRSpCsx8XTBDLPIL9PcJ7RWq/N5Tl0PHFJuGiv4CyvuRwCRg4wVkegUqYFdTyOVDRWa7/F9ZPamj2iCSL5txl+ X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BLAPR10MB5298.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a99a8274-f97d-4284-73c2-08db08607009 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Feb 2023 16:37:29.2139 (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: KwuVg/wyta98/KEHN495noeVK3cZENdOTfO12/ThrNJen8Tyu5p2pLL69GBWlvydeMMhBqioeQPiJwTMRayC5Q7mxzYYyD41TYclI9Ntxog= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR10MB5845 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.930,Hydra:6.0.562,FMLib:17.11.122.1 definitions=2023-02-06_07,2023-02-06_03,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=941 mlxscore=0 adultscore=0 phishscore=0 suspectscore=0 malwarescore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2302060144 X-Proofpoint-GUID: j54dwL78EzsJk8DtvO3zeFo1ghUR91Iw X-Proofpoint-ORIG-GUID: j54dwL78EzsJk8DtvO3zeFo1ghUR91Iw X-Spam-Status: No, score=-14.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,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 List-Id: Hi all,=0A= =0A= When running gprofng display text on some executables that contain unusual = dwarf data I am getting a segfault.=0A= In particular, the input dwarf has some compilation units (DW_TAG_compile_u= nit) that have neither DW_AT_comp_dir nor DW_AT_stmt_list.=0A= =0A= The issue is that when that happens, DwrCU::stmt_list_offset remains 0, as = a result, in Dwarf::archive_Dwarf, the `get_dwrLineReg` call will process w= hatever is at offset 0 in .debug_line.=0A= Then while looking for source files, `DwrLineRegs::getPath` will potentiall= y try to use include_directories->fetch (0) which is NULL (no comp_dir attr= ibute).=0A= This leads to a segfault in StringBuilder::append.=0A= =0A= A quick local test show that the issue goes away with the change below.=0A= The change in DwrLineRegs::getPath is not strictly necessary but makes the = code more robust if some compilation unit has stmt_list but not comp_dir.= =0A= =0A= Does it make sense? How could we get a fix for this integrated?=0A= If that helps, I can create a bugzilla issue.=0A= =0A= Thanks,=0A= Gilles=0A= =0A= diff --git a/gprofng/src/Dwarf.cc b/gprofng/src/Dwarf.cc=0A= index 1b33ae8f243..b36fc424924 100644=0A= --- a/gprofng/src/Dwarf.cc=0A= +++ b/gprofng/src/Dwarf.cc=0A= @@ -606,6 +606,8 @@ Dwarf::archive_Dwarf (LoadObject *lo)=0A= {=0A= mod->hdrOffset =3D dwrCUs->size ();=0A= DwrLineRegs *lineReg =3D dwrCU->get_dwrLineReg ();=0A= + if (lineReg !=3D NULL)=0A= + {=0A= dwrCU->srcFiles =3D new Vector(VecSize (lineRe= g->file_names));=0A= for (long i =3D 0, sz =3D VecSize (lineReg->file_names); i <= sz; i++)=0A= {=0A= @@ -613,6 +615,7 @@ Dwarf::archive_Dwarf (LoadObject *lo)=0A= SourceFile *sf =3D mod->findSource(fname, true);=0A= dwrCU->srcFiles->append(sf);=0A= }=0A= + }=0A= =0A= Dwarf_cnt ctx;=0A= ctx.module =3D mod;=0A= @@ -986,9 +989,6 @@ DwrCU::append_Function (Dwarf_cnt *ctx)=0A= if (lineno > 0)=0A= {=0A= func->setLineFirst (lineno);=0A= - if (dwrLineReg =3D=3D NULL)=0A= - dwrLineReg =3D new DwrLineRegs (new DwrSec (dwarf->debug_lineSec,=0A= - stmt_list_offset), comp_dir);=0A= int fileno =3D ((int) Dwarf_data (DW_AT_decl_file)) - 1;=0A= SourceFile *sf =3D ((fileno >=3D 0) && (fileno < VecSize (srcFiles))) ?= srcFiles->get (fileno)=0A= : module->getMainSrc ();=0A= diff --git a/gprofng/src/DwarfLib.cc b/gprofng/src/DwarfLib.cc=0A= index 4f86a78d1c8..ad2f95be9fa 100644=0A= --- a/gprofng/src/DwarfLib.cc=0A= +++ b/gprofng/src/DwarfLib.cc=0A= @@ -1557,9 +1557,12 @@ DwrLineRegs::getPath (int fn)=0A= if (*dir !=3D '/')=0A= { // not absolute=0A= char *s =3D include_directories->fetch (0);=0A= + if (s !=3D NULL && *s !=3D 0)=0A= + {=0A= sb.append(s);=0A= sb.append('/');=0A= }=0A= + }=0A= sb.append (dir);=0A= sb.append ('/');=0A= sb.append (fnp->fname);=0A= @@ -1590,7 +1593,7 @@ DwrCU::DwrCU (Dwarf *_dwarf)=0A= abbrevTable =3D NULL;=0A= dwrInlinedSubrs =3D NULL;=0A= srcFiles =3D NULL;=0A= - stmt_list_offset =3D 0;=0A= + stmt_list_offset =3D NO_STMT_LIST;=0A= dwrLineReg =3D NULL;=0A= isMemop =3D false;=0A= isGNU =3D false;=0A= @@ -1857,7 +1860,7 @@ DwrCU::parse_cu_header (LoadObject *lo)=0A= char *name =3D Dwarf_string (DW_AT_name);=0A= if (name =3D=3D NULL)=0A= name =3D NTXT ("UnnamedUnit");=0A= - stmt_list_offset =3D Dwarf_data (DW_AT_stmt_list);=0A= + read_ref_attr(DW_AT_stmt_list, reinterpret_cast(&stmt_list_of= fset));=0A= comp_dir =3D dbe_strdup (Dwarf_string (DW_AT_comp_dir));=0A= char *dir_name =3D comp_dir ? StrChr (comp_dir, ':') : NULL;=0A= char *orig_name =3D Dwarf_string (DW_AT_SUN_original_name);=0A= @@ -2073,6 +2076,8 @@ DwrCU::map_dwarf_lines (Module *mod)=0A= Stabs::is_fortran (mod->lang_code));=0A= }=0A= }=0A= + if (lineReg =3D=3D NULL)=0A= + return;=0A= Vector *lines =3D lineReg->get_lines ();=0A= =0A= Include *includes =3D new Include;=0A= @@ -2083,7 +2088,7 @@ DwrCU::map_dwarf_lines (Module *mod)=0A= for (long i =3D 0, sz =3D VecSize (lines); i < sz; i++)=0A= {=0A= DwrLine *dwrLine =3D lines->get (i);=0A= - char *filename =3D dwrLineReg->getPath (dwrLine->file);=0A= + char *filename =3D lineReg->getPath (dwrLine->file);=0A= if (filename =3D=3D NULL)=0A= continue;=0A= uint64_t pc =3D dwrLine->address;=0A= @@ -2123,7 +2128,7 @@ DwrCU::map_dwarf_lines (Module *mod)=0A= DwrLineRegs *=0A= DwrCU::get_dwrLineReg ()=0A= {=0A= - if (dwrLineReg =3D=3D NULL)=0A= + if (dwrLineReg =3D=3D NULL && stmt_list_offset !=3D NO_STMT_LIST)=0A= dwrLineReg =3D new DwrLineRegs (new DwrSec (dwarf->debug_lineSec,=0A= stmt_list_offset), comp_dir);=0A= return dwrLineReg;=0A= diff --git a/gprofng/src/DwarfLib.h b/gprofng/src/DwarfLib.h=0A= index d359c7583b1..591d7d548c9 100644=0A= --- a/gprofng/src/DwarfLib.h=0A= +++ b/gprofng/src/DwarfLib.h=0A= @@ -254,6 +254,8 @@ public:=0A= Dwr_type *put_dwr_type (Dwr_Tag *dwrTag);=0A= };=0A= =0A= +#define NO_STMT_LIST 0xffffffffffffffffULL=0A= +=0A= class DwrCU=0A= {=0A= public:=