Always display addend as signed hex number
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 11 May 2012 15:48:15 +0000 (15:48 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 11 May 2012 15:48:15 +0000 (15:48 +0000)
binutils/

PR binutils/14088
* readelf.c (dump_relocations): Always display addend as
signed hex number.

ld/testsuite/

PR binutils/14088
* ld-ia64/tlspic.rd: Updated.
* ld-x86-64/tlsdesc-nacl.rd: Likewise.
* ld-x86-64/tlsdesc.rd: Likewise.
* ld-x86-64/tlspic-nacl.rd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.

binutils/ChangeLog
binutils/readelf.c
ld/testsuite/ChangeLog
ld/testsuite/ld-ia64/tlspic.rd
ld/testsuite/ld-x86-64/tlsdesc-nacl.rd
ld/testsuite/ld-x86-64/tlsdesc.rd
ld/testsuite/ld-x86-64/tlspic-nacl.rd
ld/testsuite/ld-x86-64/tlspic.rd

index f620fe02a6c8fe19171f466f0241f61477e9d4bb..3a5c740ce87c2dcebdc9f80869681c01ae565134 100644 (file)
@@ -1,3 +1,9 @@
+2012-05-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/14088
+       * readelf.c (dump_relocations): Always display addend as
+       signed hex number.
+
 2012-05-11  Daniel Richard G.  <skunk@iskunk.org>
 
        PR binutils/14028
index 937cac18a8c08b6b85946878fd0e4193e07a93c1..84a13a741eb94e6f238092e20b6120e1ef1190ce 100644 (file)
@@ -1387,9 +1387,13 @@ dump_relocations (FILE * file,
        }
       else if (is_rela)
        {
-         printf ("%*c", is_32bit_elf ?
-                 (do_wide ? 34 : 28) : (do_wide ? 26 : 20), ' ');
-         print_vma (rels[i].r_addend, LONG_HEX);
+         bfd_signed_vma off = rels[i].r_addend;
+
+         printf ("%*c", is_32bit_elf ? 12 : 20, ' ');
+         if (off < 0)
+           printf ("-%" BFD_VMA_FMT "x", - off);
+         else
+           printf ("%" BFD_VMA_FMT "x", off);
        }
 
       if (elf_header.e_machine == EM_SPARCV9
index 09cb6b92a362c146caeac12de39aba8fdf0f3387..63e8f90485ac36afbe07af3fac59286bca8ddc21 100644 (file)
@@ -1,3 +1,12 @@
+2012-05-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/14088
+       * ld-ia64/tlspic.rd: Updated.
+       * ld-x86-64/tlsdesc-nacl.rd: Likewise.
+       * ld-x86-64/tlsdesc.rd: Likewise.
+       * ld-x86-64/tlspic-nacl.rd: Likewise.
+       * ld-x86-64/tlspic.rd: Likewise.
+
 2012-05-10  H.J. Lu  <hongjiu.lu@intel.com>
 
        * ld-x86-64/ilp32-11.d: Updated.
index 8320365af15d5ca0d1997d040f01a7560853779a..bb2c8dadf02497c46d6ca9d21478b03b9ab2031c 100644 (file)
@@ -48,9 +48,9 @@ Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 6 entries:
 [0-9a-f ]+R_IA64_DTPMOD64LSB +0+ sg1 \+ 0
 [0-9a-f ]+R_IA64_DTPREL64LSB +0+ sg1 \+ 0
 [0-9a-f ]+R_IA64_TPREL64LSB +0+4 sg2 \+ 0
-[0-9a-f ]+R_IA64_DTPMOD64LSB +0+
-[0-9a-f ]+R_IA64_TPREL64LSB +0+44
-[0-9a-f ]+R_IA64_TPREL64LSB +0+24
+[0-9a-f ]+R_IA64_DTPMOD64LSB +0
+[0-9a-f ]+R_IA64_TPREL64LSB +44
+[0-9a-f ]+R_IA64_TPREL64LSB +24
 
 Relocation section '.rela.IA_64.pltoff' at offset 0x[0-9a-f]+ contains 1 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
index 3a3c6007f10b1c96ff58fb3bfb7a675e21d68c27..86240919247e622dfa627b7ecffabe5aaf6900ee 100644 (file)
@@ -71,22 +71,22 @@ Dynamic section at offset 0x[0-9a-f]+ contains 16 entries:
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 8 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+10010638 +[0-9a-f]+ R_X86_64_TPOFF64 +0+24
-0+10010640 +[0-9a-f]+ R_X86_64_TPOFF64 +0+30
-0+10010648 +[0-9a-f]+ R_X86_64_TPOFF64 +0+64
-0+10010658 +[0-9a-f]+ R_X86_64_TPOFF64 +0+50
-0+10010660 +[0-9a-f]+ R_X86_64_TPOFF64 +0+70
-0+10010670 +[0-9a-f]+ R_X86_64_TPOFF64 +0+44
+0+10010638 +[0-9a-f]+ R_X86_64_TPOFF64 +24
+0+10010640 +[0-9a-f]+ R_X86_64_TPOFF64 +30
+0+10010648 +[0-9a-f]+ R_X86_64_TPOFF64 +64
+0+10010658 +[0-9a-f]+ R_X86_64_TPOFF64 +50
+0+10010660 +[0-9a-f]+ R_X86_64_TPOFF64 +70
+0+10010670 +[0-9a-f]+ R_X86_64_TPOFF64 +44
 0+10010650 +[0-9a-f]+ R_X86_64_TPOFF64 +0+10 sg5 \+ 0
 0+10010668 +[0-9a-f]+ R_X86_64_TPOFF64 +0+4 sg2 \+ 0
 
 Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 5 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
 0+100106c8 +[0-9a-f]+ R_X86_64_TLSDESC +0+ sg1 \+ 0
-0+10010698 +[0-9a-f]+ R_X86_64_TLSDESC +0+20
-0+100106d8 +[0-9a-f]+ R_X86_64_TLSDESC +0+40
-0+100106a8 +[0-9a-f]+ R_X86_64_TLSDESC +0+60
-0+100106b8 +[0-9a-f]+ R_X86_64_TLSDESC +0+
+0+10010698 +[0-9a-f]+ R_X86_64_TLSDESC +20
+0+100106d8 +[0-9a-f]+ R_X86_64_TLSDESC +40
+0+100106a8 +[0-9a-f]+ R_X86_64_TLSDESC +60
+0+100106b8 +[0-9a-f]+ R_X86_64_TLSDESC +0
 
 Symbol table '\.dynsym' contains [0-9]+ entries:
  +Num: +Value +Size +Type +Bind +Vis +Ndx +Name
index df8d46695a0d4ab8fa1d24b1457a4f39ea7075b3..3c533ddc376f5842954ecedba1bab249cba2f2af 100644 (file)
@@ -69,22 +69,22 @@ Dynamic section at offset 0x[0-9a-f]+ contains 16 entries:
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 8 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+201308 +[0-9a-f]+ R_X86_64_TPOFF64 +0+24
-0+201310 +[0-9a-f]+ R_X86_64_TPOFF64 +0+30
-0+201318 +[0-9a-f]+ R_X86_64_TPOFF64 +0+64
-0+201328 +[0-9a-f]+ R_X86_64_TPOFF64 +0+50
-0+201330 +[0-9a-f]+ R_X86_64_TPOFF64 +0+70
-0+201340 +[0-9a-f]+ R_X86_64_TPOFF64 +0+44
+0+201308 +[0-9a-f]+ R_X86_64_TPOFF64 +24
+0+201310 +[0-9a-f]+ R_X86_64_TPOFF64 +30
+0+201318 +[0-9a-f]+ R_X86_64_TPOFF64 +64
+0+201328 +[0-9a-f]+ R_X86_64_TPOFF64 +50
+0+201330 +[0-9a-f]+ R_X86_64_TPOFF64 +70
+0+201340 +[0-9a-f]+ R_X86_64_TPOFF64 +44
 0+201320 +[0-9a-f]+ R_X86_64_TPOFF64 +0+10 sg5 \+ 0
 0+201338 +[0-9a-f]+ R_X86_64_TPOFF64 +0+4 sg2 \+ 0
 
 Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 5 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
 0+201398 +[0-9a-f]+ R_X86_64_TLSDESC +0+ sg1 \+ 0
-0+201368 +[0-9a-f]+ R_X86_64_TLSDESC +0+20
-0+2013a8 +[0-9a-f]+ R_X86_64_TLSDESC +0+40
-0+201378 +[0-9a-f]+ R_X86_64_TLSDESC +0+60
-0+201388 +[0-9a-f]+ R_X86_64_TLSDESC +0+
+0+201368 +[0-9a-f]+ R_X86_64_TLSDESC +20
+0+2013a8 +[0-9a-f]+ R_X86_64_TLSDESC +40
+0+201378 +[0-9a-f]+ R_X86_64_TLSDESC +60
+0+201388 +[0-9a-f]+ R_X86_64_TLSDESC +0
 
 Symbol table '\.dynsym' contains [0-9]+ entries:
  +Num: +Value +Size +Type +Bind +Vis +Ndx +Name
index 56a07bf75353d3dac8e71fe0dff80b7a7dae7f56..f04a53fdd1632ebf61af1850e7f7bc21056aaf68 100644 (file)
@@ -52,16 +52,16 @@ Program Headers:
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-[0-9a-f ]+R_X86_64_DTPMOD64 +0+
-[0-9a-f ]+R_X86_64_TPOFF64 +0+24
-[0-9a-f ]+R_X86_64_TPOFF64 +0+30
-[0-9a-f ]+R_X86_64_DTPMOD64 +0+
-[0-9a-f ]+R_X86_64_DTPMOD64 +0+
-[0-9a-f ]+R_X86_64_TPOFF64 +0+64
-[0-9a-f ]+R_X86_64_TPOFF64 +0+50
-[0-9a-f ]+R_X86_64_TPOFF64 +0+70
-[0-9a-f ]+R_X86_64_DTPMOD64 +0+
-[0-9a-f ]+R_X86_64_TPOFF64 +0+44
+[0-9a-f ]+R_X86_64_DTPMOD64 +0
+[0-9a-f ]+R_X86_64_TPOFF64 +24
+[0-9a-f ]+R_X86_64_TPOFF64 +30
+[0-9a-f ]+R_X86_64_DTPMOD64 +0
+[0-9a-f ]+R_X86_64_DTPMOD64 +0
+[0-9a-f ]+R_X86_64_TPOFF64 +64
+[0-9a-f ]+R_X86_64_TPOFF64 +50
+[0-9a-f ]+R_X86_64_TPOFF64 +70
+[0-9a-f ]+R_X86_64_DTPMOD64 +0
+[0-9a-f ]+R_X86_64_TPOFF64 +44
 [0-9a-f ]+R_X86_64_TPOFF64 +0+10 sg5 \+ 0
 [0-9a-f ]+R_X86_64_DTPMOD64 +0+ sg1 \+ 0
 [0-9a-f ]+R_X86_64_DTPOFF64 +0+ sg1 \+ 0
index 177f2060105dfc47389b57eb76d64e2677fc0cb1..b4e10e5b8b99b89ac979b276a6f0282658df43f3 100644 (file)
@@ -50,16 +50,16 @@ Program Headers:
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-[0-9a-f ]+R_X86_64_DTPMOD64 +0+
-[0-9a-f ]+R_X86_64_TPOFF64 +0+24
-[0-9a-f ]+R_X86_64_TPOFF64 +0+30
-[0-9a-f ]+R_X86_64_DTPMOD64 +0+
-[0-9a-f ]+R_X86_64_DTPMOD64 +0+
-[0-9a-f ]+R_X86_64_TPOFF64 +0+64
-[0-9a-f ]+R_X86_64_TPOFF64 +0+50
-[0-9a-f ]+R_X86_64_TPOFF64 +0+70
-[0-9a-f ]+R_X86_64_DTPMOD64 +0+
-[0-9a-f ]+R_X86_64_TPOFF64 +0+44
+[0-9a-f ]+R_X86_64_DTPMOD64 +0
+[0-9a-f ]+R_X86_64_TPOFF64 +24
+[0-9a-f ]+R_X86_64_TPOFF64 +30
+[0-9a-f ]+R_X86_64_DTPMOD64 +0
+[0-9a-f ]+R_X86_64_DTPMOD64 +0
+[0-9a-f ]+R_X86_64_TPOFF64 +64
+[0-9a-f ]+R_X86_64_TPOFF64 +50
+[0-9a-f ]+R_X86_64_TPOFF64 +70
+[0-9a-f ]+R_X86_64_DTPMOD64 +0
+[0-9a-f ]+R_X86_64_TPOFF64 +44
 [0-9a-f ]+R_X86_64_TPOFF64 +0+10 sg5 \+ 0
 [0-9a-f ]+R_X86_64_DTPMOD64 +0+ sg1 \+ 0
 [0-9a-f ]+R_X86_64_DTPOFF64 +0+ sg1 \+ 0