diff options
author | Alan Modra <amodra@gmail.com> | 2009-03-03 01:27:15 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2009-03-03 01:27:15 +0000 |
commit | 095ad3b84d615bd84860031fbfc0a620a2c268dc (patch) | |
tree | b650e557ca5ffbd3adbdab03f62ec9a054e3a9d6 | |
parent | 3f1a2bb360366758014c9b8e531adf3a09e2ee1e (diff) | |
download | gdb-095ad3b84d615bd84860031fbfc0a620a2c268dc.zip gdb-095ad3b84d615bd84860031fbfc0a620a2c268dc.tar.gz gdb-095ad3b84d615bd84860031fbfc0a620a2c268dc.tar.bz2 |
* objdump.c (disassemble_section): Mask address before sign extending.
-rw-r--r-- | binutils/ChangeLog | 10 | ||||
-rw-r--r-- | binutils/objdump.c | 2 |
2 files changed, 8 insertions, 4 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 8d18b55..2d63169 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,7 @@ +2009-03-03 Alan Modra <amodra@bigpond.net.au> + + * objdump.c (disassemble_section): Mask address before sign extending. + 2009-03-02 Sebastian Biallas <sb@biallas.net> * ieee.c (parse_ieee_ty): Add support for undocumented 'v' type. @@ -5,7 +9,7 @@ discovered. 2009-03-02 Cary Coutant <ccoutant@google.com> - + * readelf.c (adjust_relative_path): New function. (struct archive_info): New type. (setup_archive): New function. @@ -66,7 +70,7 @@ * dwarf.h (do_debug_lines_decoded): Remove. Add prototypes for the new functions. (struct dwarf_section_display): Add enabled field. - + 2009-02-06 Nick Clifton <nickc@redhat.com> * po/vi.po: Updated Vietnamese translation. @@ -208,7 +212,7 @@ (identify_member_contains_symname): New function. (identify_dll_for_implib): Rewrite. Now determines whether implib is ms- or binutils- style, before searching sections for - dllname. Allows multiple dllnames. + dllname. Allows multiple dllnames. (identify_process_section_p): Search alternate section for dllname when implib is ms-style. (identify_search_section): Add additional conditions to excludes diff --git a/binutils/objdump.c b/binutils/objdump.c index 968a667..59289e0 100644 --- a/binutils/objdump.c +++ b/binutils/objdump.c @@ -1898,7 +1898,7 @@ disassemble_section (bfd *abfd, asection *section, void *info) bfd_boolean insns; addr = section->vma + addr_offset; - addr = (addr ^ sign_adjust) - sign_adjust; + addr = ((addr & ((sign_adjust << 1) - 1)) ^ sign_adjust) - sign_adjust; if (sym != NULL && bfd_asymbol_value (sym) <= addr) { |