https://sourceware.org/bugzilla/show_bug.cgi?id=29430

            Bug ID: 29430
           Summary: `dwarf_getscopes` fails after a8493c1
           Product: elfutils
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: libdw
          Assignee: unassigned at sourceware dot org
          Reporter: godlygeek at gmail dot com
                CC: elfutils-devel at sourceware dot org
  Target Milestone: ---

Apologies, but I haven't yet succeeded in creating a self-contained reproducer
for this issue.

When calling `dwarf_getscopes` on a (PGO and LTO) binary (a Python interpreter
built with GCC 9.3.1 against glibc 2.12, which is a relatively old glibc
version), I'm seeing failures with elfutils 0.187 that I didn't see with
elfutils 0.179. We were able to bisect the problem down to commit a8493c1, and
we see that reverting that commit causes `dwarf_getscopes` to succeed even with
elfutils 0.187

That commit is:

    libdw: Skip imported compiler_units in libdw_visit_scopes walking DIE tree

    Some gcc -flto versions imported other top-level compile units,
    skip those. Otherwise we'll visit various DIE trees multiple times.

    Note in the testcase that with newer GCC versions function foo is
    fully inlined and does appear only once (as declared, but not as
    separate subprogram).

    Signed-off-by: Mark Wielaard <m...@klomp.org>

Any idea why this might have broken PC resolution for us?

-- 
You are receiving this mail because:
You are on the CC list for the bug.
  • [Bug libdw/29430] New: `dwar... godlygeek at gmail dot com via Elfutils-devel

Reply via email to