From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29839 invoked by alias); 2 Oct 2019 21:58:58 -0000 Mailing-List: contact libabigail-help@sourceware.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Id: List-Subscribe: Sender: libabigail-owner@sourceware.org Received: (qmail 24576 invoked by uid 48); 2 Oct 2019 21:58:54 -0000 From: "simark at simark dot ca" To: libabigail@sourceware.org Subject: [Bug default/25058] abigail does not handle subprogram DIEs with DW_AT_ranges instead of DW_AT_low_pc Date: Tue, 01 Jan 2019 00:00:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: libabigail X-Bugzilla-Component: default X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: simark at simark dot ca X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: dodji at redhat dot com 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://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2019-q4/txt/msg00017.txt.bz2 https://sourceware.org/bugzilla/show_bug.cgi?id=3D25058 --- Comment #4 from Simon Marchi --- (In reply to Mark Wielaard from comment #3) > Instead of checking for the Dw_AT_low_pc attribute value, libabigail shou= ld > probably use libdw dwarf_ranges () which works for either low_pc/high_pc > pairs (single range) or DW_AT_ranges/rnglists. So, libabigail uses the function's low pc to try to find the ELF symbol corresponding to the function DIE it is currently processing. If it uses t= he ranges, which address should it use to look up the ELF symbol? Typically, = one range will correspond to the ".cold" version of the symbol and one range wi= ll correspond to the symbol we are looking for. I suppose it could try to look up an ELF symbol using the "low pc" of each range, until it finds one whose name corresponds to the DW_AT_linkage_name = of the function DIE (if the DIE has that attribute). --=20 You are receiving this mail because: You are on the CC list for the bug.