public inbox for dwz@sourceware.org
 help / color / mirror / Atom feed
From: "mark at klomp dot org" <sourceware-bugzilla@sourceware.org>
To: dwz@sourceware.org
Subject: [Bug default/27449] dwz: 1: Unknown DWARF DW_OP_0
Date: Sun, 21 Feb 2021 17:14:04 +0000	[thread overview]
Message-ID: <bug-27449-11298-CQRRnM9082@http.sourceware.org/bugzilla/> (raw)
In-Reply-To: <bug-27449-11298@http.sourceware.org/bugzilla/>

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

Mark Wielaard <mark at klomp dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mark at klomp dot org

--- Comment #2 from Mark Wielaard <mark at klomp dot org> ---
I added some extra error output in commit 4705796eb "Add DIE offsets in error
messages to make it easier to find what is wrong" with that you get:

dwz: 1: Unknown DWARF DW_OP_0 referenced from DIE at [3d2787]

Looking at that DIE:

 [3d2787]              variable             abbrev: 50
                       abstract_origin      (ref4) [3d8fe0]
                       location             (sec_offset) location list [12e381]
                       GNU_locviews         (sec_offset) location list [12e37f]

Which is part of:

 Compilation unit at offset 3684967:
 Version: 4, Abbreviation section offset: 33924, Address size: 8, Offset size:
4
 [383a72]  compile_unit         abbrev: 228
           producer             (strp) "GNU C++11 10.2.1 20210206
-mlittle-endia
n -mabi=lp64 -g -O2 -pedantic-errors -std=c++11 -fstack-protector-strong -fPIC
-
fasynchronous-unwind-tables -fstack-protector-strong -fstack-clash-protection"
           language             (data1) C_plus_plus (4)
           name                 (strp) "./app/audio/audiovisualwaveform.cpp"
           comp_dir             (strp) "./obj-aarch64-linux-gnu/app"
           ranges               (sec_offset) range list [ 47da0]
           low_pc               (addr) +000000000000000000
           stmt_list            (sec_offset) 305850

Looking at the location list at 12e381 with readelf (binutils 2.35-18.fc33) and
eu-readelf (elfutils 0.182) both seem to agree there is something off:

    0012e37f v000000000000003 v000000000000006 location view pair

    0012e381 v000000000000003 v000000000000006 views at 0012e37f for:
             00000000001b23a0 00000000001b23a0 (DW_OP_implicit_value 2 byte
block: 0 0 )
    0012e397 v0000000000011a0 v00000000000001b views at 0012e381 for:
             0000000000000000 0604000000000000 (DW_OP_div; (Unknown location op
0x0))
    00130749 v000000000000000 v000000000000000 views at 0012e384 for:
             00000000001b2ba8 00000000001b2ba8 (DW_OP_lit2; DW_OP_stack_value)
(start == end)
    0013075d <End of list>

 [12e37f] view pair 3, 6
 [12e381] range 1b23a0, 1b23a0
          +0x00000000001b23a0
<_ZN5olive19AudioVisualWaveform10DrawSampleEP8QPainterRK7QVectorINS0_16SamplePerChannelEEiii+0x110>..
          +0x00000000001b239f
<_ZN5olive19AudioVisualWaveform10DrawSampleEP8QPainterRK7QVectorINS0_16SamplePerChannelEEiii+0x10f>
           [ 0] implicit_value: 2 byte block: 00 00
          range 0, 604000000000000
          +000000000000000000..
          +0x0603ffffffffffff
           [ 0] div
           [ 1] ??? (0)
           [ 2] ??? (0)
           [ 3] ??? (0)
           [ 4] ??? (0)
           [ 5] ??? (0)
           [ 6] implicit_pointer [  1b23] +0

binutils readelf seems able to recover after the DW_OP_0, but elfutils
eu-readelf gets totally confused.

I think the location list expression is indeed bad, but maybe all programs are
misinterpreting the location views?

-- 
You are receiving this mail because:
You are on the CC list for the bug.

  parent reply	other threads:[~2021-02-21 17:14 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-21 11:43 [Bug default/27449] New: " doko at debian dot org
2021-02-21 11:43 ` [Bug default/27449] " doko at debian dot org
2021-02-21 11:44 ` doko at debian dot org
2021-02-21 17:14 ` mark at klomp dot org [this message]
2021-02-26 20:12 ` mark at klomp dot org
2021-03-02 15:45 ` vries at gcc dot gnu.org
2021-03-02 15:46 ` vries at gcc dot gnu.org
2021-03-03 15:22 ` mark at klomp dot org
2021-03-04  8:12 ` doko at debian dot org
2021-03-04  9:36 ` mliska at suse dot cz
2021-03-04 10:05 ` mliska at suse dot cz
2021-03-04 10:11 ` mliska at suse dot cz
2021-03-04 14:43 ` mark at klomp dot org
2021-03-04 15:05 ` mark at klomp dot org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-27449-11298-CQRRnM9082@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=dwz@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).