diff options
Diffstat (limited to 'binutils')
-rw-r--r-- | binutils/ChangeLog | 4 | ||||
-rw-r--r-- | binutils/readelf.c | 14 |
2 files changed, 8 insertions, 10 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index c1314cc..2b1f8c4 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,7 @@ +2015-07-22 Alan Modra <amodra@gmail.com> + + * readelf.c (dump_relocations): Show MIN_INT addends as negative. + 2015-07-20 Alan Modra <amodra@gmail.com> * doc/Makefile.in: Regenerate. diff --git a/binutils/readelf.c b/binutils/readelf.c index c313db4..a9b9f2d 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -1608,12 +1608,9 @@ dump_relocations (FILE * file, if (is_rela) { - bfd_signed_vma off = rels[i].r_addend; + bfd_vma off = rels[i].r_addend; - /* PR 17531: file: 2e63226f. */ - if (off == ((bfd_signed_vma) 1) << ((sizeof (bfd_signed_vma) * 8) - 1)) - printf (" + %" BFD_VMA_FMT "x", off); - else if (off < 0) + if ((bfd_signed_vma) off < 0) printf (" - %" BFD_VMA_FMT "x", - off); else printf (" + %" BFD_VMA_FMT "x", off); @@ -1622,13 +1619,10 @@ dump_relocations (FILE * file, } else if (is_rela) { - bfd_signed_vma off = rels[i].r_addend; + bfd_vma off = rels[i].r_addend; printf ("%*c", is_32bit_elf ? 12 : 20, ' '); - /* PR 17531: file: 2e63226f. */ - if (off == ((bfd_signed_vma) 1) << ((sizeof (bfd_signed_vma) * 8) - 1)) - printf ("%" BFD_VMA_FMT "x", off); - else if (off < 0) + if ((bfd_signed_vma) off < 0) printf ("-%" BFD_VMA_FMT "x", - off); else printf ("%" BFD_VMA_FMT "x", off); |