From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 75BDC385B831; Mon, 6 Apr 2020 09:59:56 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 75BDC385B831 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1586167196; bh=6JyT5O35pifIZwIxwEynBehxx9dTN7Fxt67rdfKJZHs=; h=From:To:Subject:Date:In-Reply-To:References:From; b=aXji0cT1nau26othk5lIBjU2CWMhHyVtGuyTzy9A2A7RtGjVy6wxuuv1elZZ+5z6h zqSB2o3h9KmmaBJKXWs2b/wBiEPXoENYogWi4Zz92iLRPygbLW3lurBdcXbqMtkZv7 j8YlUHbuviKLKrs0LEtlOjt8Q7QNMbWdX8Y3JB+I= From: "bernd.edlinger at hotmail dot de" To: gcc-bugs@gcc.gnu.org Subject: [Bug debug/94474] Incorrect DWARF range information for inlined function Date: Mon, 06 Apr 2020 09:59:56 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: debug X-Bugzilla-Version: 9.2.0 X-Bugzilla-Keywords: wrong-debug X-Bugzilla-Severity: normal X-Bugzilla-Who: bernd.edlinger at hotmail dot de X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Apr 2020 09:59:56 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D94474 --- Comment #1 from Bernd Edlinger --- Hi, I use a newer binutils versions FWIW, and buit GCC-10 from a few days ago using those binutils. $ readelf -version GNU readelf (GNU Binutils) 2.32 Copyright (C) 2019 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or (at your option) any later vers= ion. This program has absolutely no warranty. instead of #+BEGIN_EXAMPLE <2><8db>: Abbrev Number: 38 (DW_TAG_inlined_subroutine) <8dc> DW_AT_abstract_origin: <0x9cc> <8e0> DW_AT_entry_pc : 0x400545 <8e8> Unknown AT value: 2138: 3 <8e9> DW_AT_ranges : 0x30 <8ed> DW_AT_call_file : 1 <8ee> DW_AT_call_line : 52 <8ef> DW_AT_call_column : 10 <8f0> DW_AT_sibling : <0x92f> #+END_EXAMPLE I see: <2><8b3>: Abbrev Number: 38 (DW_TAG_inlined_subroutine) <8b4> DW_AT_abstract_origin: <0x9a4> <8b8> DW_AT_entry_pc : 0x401165 <8c0> DW_AT_GNU_entry_view: 0 <8c1> DW_AT_ranges : 0x30 <8c5> DW_AT_call_file : 1 <8c6> DW_AT_call_line : 52 <8c7> DW_AT_call_column : 10 <8c8> DW_AT_sibling : <0x907> But as you can see there is a view number where the range begins, but there is no view number where the range ends. I am not sure if there are any view numbers when the inline has multiple ranges, (I dont remember) Therefore I try to chamge gdb to ignore is-stmt breakpoints which are at the end of the inline block. I am not sure if an entirely new DWARF version is necessary, or just a new AT value: like 2139 or so, to give us an idea if the is-stmt is per its view in the subroutine or in the calling program. Bernd.=