This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Fix BZ15121 -- x/a broken for addresses in shared libraries (try #2)


Greetings,

Attached is my second attempt to fix BZ15121. Tested on Linux/x86_64;
no new failures.

Previous attempt:
https://sourceware.org/ml/gdb-patches/2015-09/msg00074.html

The change to long_long.exp needs to be made conditional (i.e. use old
pattern on MIPS and SH; new pattern everywhere else). I am not sure how
to achieve that. Should I make it conditional on 'istarget "mips*"' or ... ?


Thanks,


2016-10-10  Paul Pluzhnikov  <ppluzhnikov@google.com>

        [BZ #15121]
        * gdb/gdbarch.h (gdbarch_sign_extend_vma): New.
        (set_gdbarch_sign_extend_vma): New.
        * gdb/gdbarch.c (struct gdbarch): Add sign_extend_vma.
        (gdbarch_sign_extend_vma, set_gdbarch_sign_extend_vma): New.
        (gdbarch_find_by_info): Set sign_extend_vma from BFD.
        * gdb/value.c (unpack_pointer): Don't sign-extend when necessary.

testsuite/ChangeLog:

2016-10-10  Paul Pluzhnikov  <ppluzhnikov@google.com>

        [BZ #15121]
        * gdb.base/long_long.exp: Adjust.


-- 
Paul Pluzhnikov

Attachment: gdb-bz15121.20161008.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]