public inbox for dwz@sourceware.org
 help / color / mirror / Atom feed
* [Bug default/27463] New: [dwz] Unhandled DW_FORM_sdata for DW_AT_decl_line
@ 2021-02-24  7:54 vries at gcc dot gnu.org
  2021-02-26 16:06 ` [Bug default/27463] " mark at klomp dot org
  2021-02-26 16:58 ` mark at klomp dot org
  0 siblings, 2 replies; 3+ messages in thread
From: vries at gcc dot gnu.org @ 2021-02-24  7:54 UTC (permalink / raw)
  To: dwz

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

            Bug ID: 27463
           Summary: [dwz] Unhandled DW_FORM_sdata for DW_AT_decl_line
           Product: dwz
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: default
          Assignee: nobody at sourceware dot org
          Reporter: vries at gcc dot gnu.org
                CC: dwz at sourceware dot org
  Target Milestone: ---

Regression since commit 4100572 "Handle DW_FORM_implicit_const for
DW_AT_decl_line".

With the gdb regression testsuite, using target board cc-with-dwz, we run into:
...
$ dwz
build/gdb/testsuite/outputs/gdb.trace/unavailable-dwarf-piece/unavailable-dwarf-piece
-o z
dwz: unavailable-dwarf-piece: Unhandled DW_FORM_sdata for DW_AT_decl_line
...

The commit added this code:
...
          switch (form)
            {
            case DW_FORM_data1: value = read_8 (ptr); handled = true; break;
            case DW_FORM_data2: value = read_16 (ptr); handled = true; break;
            case DW_FORM_data4: value = read_32 (ptr); handled = true; break;
            case DW_FORM_data8: value = read_64 (ptr); handled = true; break;
            case DW_FORM_udata:
              value = read_uleb128 (ptr); handled = true; break;
            case DW_FORM_implicit_const:
              value = t->values[i]; handled = true; break;
            default:
              error (0, 0, "%s: Unhandled %s for %s",
                     dso->filename, get_DW_FORM_str (form),
                     get_DW_AT_str (t->attr[i].attr));
              return 1;
            }
...
and the error case triggers.

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug default/27463] [dwz] Unhandled DW_FORM_sdata for DW_AT_decl_line
  2021-02-24  7:54 [Bug default/27463] New: [dwz] Unhandled DW_FORM_sdata for DW_AT_decl_line vries at gcc dot gnu.org
@ 2021-02-26 16:06 ` mark at klomp dot org
  2021-02-26 16:58 ` mark at klomp dot org
  1 sibling, 0 replies; 3+ messages in thread
From: mark at klomp dot org @ 2021-02-26 16:06 UTC (permalink / raw)
  To: dwz

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

Mark Wielaard <mark at klomp dot org> changed:

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

--- Comment #1 from Mark Wielaard <mark at klomp dot org> ---
Proposed fix:
https://sourceware.org/pipermail/dwz/2021q1/000994.html

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug default/27463] [dwz] Unhandled DW_FORM_sdata for DW_AT_decl_line
  2021-02-24  7:54 [Bug default/27463] New: [dwz] Unhandled DW_FORM_sdata for DW_AT_decl_line vries at gcc dot gnu.org
  2021-02-26 16:06 ` [Bug default/27463] " mark at klomp dot org
@ 2021-02-26 16:58 ` mark at klomp dot org
  1 sibling, 0 replies; 3+ messages in thread
From: mark at klomp dot org @ 2021-02-26 16:58 UTC (permalink / raw)
  To: dwz

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

Mark Wielaard <mark at klomp dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #2 from Mark Wielaard <mark at klomp dot org> ---
commit 4ac908446df75cec7eb8d52399ed58da59120787 (HEAD -> master, origin/master,
origin/HEAD, decl_sdata)
Author: Mark Wielaard <mark@klomp.org>
Date:   Fri Feb 26 15:38:58 2021 +0100

    PR27463 Accept DW_FORM_sdata for DW_AT_decl/call_file

    Using DW_FORM_sdata for DW_AT_decl/call_file is somewhat inefficient
    since file index numbers are always positive values. But it is a valid
    form to encode a constant value. Accept DW_FORM_sdata as long as it
    encodes a positive value. Extend the positive value check to
    DW_FORM_implicit_const.

            * dwz.c (checksum_die): Accept DW_FORM_sdata for
            DW_AT_decl/call_file as long as the value is positive. Also
            check DW_FORM_implicit_const value is positive for these
            attributes.
            (die_eq_1): Handle DW_FORM_sdata for DW_AT_decl/call_file.
            (build_abbrevs_for_die): Likewise.
            (write_die): Likewise.
            * testsuite/dwz.tests/pr27463.sh: New test.
            * testsuite/lib/unavailable-dwarf-piece.exp: New testfile
            from gdb.
            * testsuite/dwz.tests/dwz-tests.exp: Add unavailable-dwarf-piece
            for pr25109.sh.
            * testsuite/dwz.tests/main.c (foo): New function and labels.
            (bar): Likewise.
            * Makefile (TEST_EXECS_DWARF_ASM): Add unavailable-dwarf-piece.

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

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-02-26 16:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-24  7:54 [Bug default/27463] New: [dwz] Unhandled DW_FORM_sdata for DW_AT_decl_line vries at gcc dot gnu.org
2021-02-26 16:06 ` [Bug default/27463] " mark at klomp dot org
2021-02-26 16:58 ` mark at klomp dot org

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).