This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils 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]

[binutils-gdb] readelf display of 0x800...000 addend


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7360e63f80782cf34a195eb1c6149760c3da7f14

commit 7360e63f80782cf34a195eb1c6149760c3da7f14
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jul 22 10:26:29 2015 +0930

    readelf display of 0x800...000 addend
    
    	* readelf.c (dump_relocations): Show MIN_INT addends as negative.

Diff:
---
 binutils/ChangeLog |  4 ++++
 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);


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