bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/24510] readelf does not know how to dissect DW_AT_discr_li


From: nickc at redhat dot com
Subject: [Bug binutils/24510] readelf does not know how to dissect DW_AT_discr_list
Date: Thu, 04 Jul 2019 16:21:36 +0000

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

Nick Clifton <nickc at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #11882|0                           |1
        is obsolete|                            |

--- Comment #3 from Nick Clifton <nickc at redhat dot com> ---
Created attachment 11884
  --> https://sourceware.org/bugzilla/attachment.cgi?id=11884&action=edit
Proposed patch

Hi Tom,

  Here is a third version of the patch.  This one adds support for signed
  discriminator values.  Which I must say are a pain to support.  The DWARF
  parser in the binutils was not built with this kind of thing in mind.

  I have changed the output format slightly, to be more inline with the
  format chosen by Mark for the eu-readelf version.  (It would have been
  nice if you had told us both that you were asking for this feature so
  that we could have collaborated from the start).

  So, using Mark's test case, you get:

  % readelf -wi rng.o | grep discr_list
    <63>   DW_AT_discr_list  : 7 byte block: 1 1 ff ff ff ff 7  (range
1..2147483647)(signed)
    <80>   DW_AT_discr_list  : 9 byte block: 1 1 f 0 11 1 17 ff 1       (range
1..15, label 17, range 23..255)(unsigned)
    <a9>   DW_AT_discr_list  : 3 byte block: 1 4c 7f    (range -52..-1)(signed)
    <18f>   DW_AT_discr_list  : 9 byte block: 1 61 7a 1 41 5a 1 30 39   (range
97..122, range 65..90, range 48..57)(unsigned)

  Or, using the elfutils version:

  % eu-readelf --debug-dump=info rng.o | grep discr_list
                 discr_list           (block1) range 1..2147483647
                     discr_list           (block1) range 1..15, label 17, range
23..255
                 discr_list           (block1) range -52..-1
                 discr_list           (block1) range 97..122, range 65..90,
range 48..57

What do you think - are you happy with the binutils version of this patch ?

Cheers
  Nick

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


reply via email to

[Prev in Thread] Current Thread [Next in Thread]