diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2009-07-10 14:03:03 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2009-07-10 14:03:03 +0000 |
commit | 1d7708459220fa4c011f7e7bea9e58a808cb2289 (patch) | |
tree | a5225c621917659e64b38c99eb48ca841ff3d74a | |
parent | 52cfded73cc013294bb0599e13bf5544341373c6 (diff) | |
download | binutils-1d7708459220fa4c011f7e7bea9e58a808cb2289.zip binutils-1d7708459220fa4c011f7e7bea9e58a808cb2289.tar.gz binutils-1d7708459220fa4c011f7e7bea9e58a808cb2289.tar.bz2 |
bfd/
2009-07-10 H.J. Lu <hongjiu.lu@intel.com>
* elf.c (_bfd_elf_get_synthetic_symtab): Remove leading zeros
when reporting addends.
ld/testsuite/
2009-07-10 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc-1-local-x86.d: Updated.
* ld-ifunc/ifunc-1-x86.d: Likewise.Likewise.
* ld-ifunc/ifunc-2-local-x86-64.d: Likewise.Likewise.
* ld-ifunc/ifunc-2-x86-64.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.Likewise.
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf.c | 10 | ||||
-rw-r--r-- | ld/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-ifunc/ifunc-1-local-x86.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-ifunc/ifunc-1-x86.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-ifunc/ifunc-2-local-x86-64.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-ifunc/ifunc-2-x86-64.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-ifunc/ifunc-3a-x86.d | 2 |
8 files changed, 28 insertions, 9 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e53ff76..3495161 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2009-07-10 H.J. Lu <hongjiu.lu@intel.com> + + * elf.c (_bfd_elf_get_synthetic_symtab): Remove leading zeros + when reporting addends. + 2009-07-10 Alan Modra <amodra@bigpond.net.au> * elf32-spu.c (spu_elf_size_stubs): Do set up soft-icache manager @@ -8965,10 +8965,16 @@ _bfd_elf_get_synthetic_symtab (bfd *abfd, names += len; if (p->addend != 0) { + char buf[30], *a; + int len; memcpy (names, "+0x", sizeof ("+0x") - 1); names += sizeof ("+0x") - 1; - bfd_sprintf_vma (abfd, names, p->addend); - names += strlen (names); + bfd_sprintf_vma (abfd, buf, p->addend); + for (a = buf; *a == '0'; ++a) + ; + len = strlen (a); + memcpy (names, a, len); + names += len; } memcpy (names, "@plt", sizeof ("@plt")); names += sizeof ("@plt"); diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index be6e2e5..0c560bd 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2009-07-10 H.J. Lu <hongjiu.lu@intel.com> + + * ld-ifunc/ifunc-1-local-x86.d: Updated. + * ld-ifunc/ifunc-1-x86.d: Likewise.Likewise. + * ld-ifunc/ifunc-2-local-x86-64.d: Likewise.Likewise. + * ld-ifunc/ifunc-2-x86-64.d: Likewise. + * ld-ifunc/ifunc-3a-x86.d: Likewise.Likewise. + 2009-07-10 Alan Modra <amodra@bigpond.net.au> * ld-ifunc/ifunc.exp: Run for powerpc. Really generate static diff --git a/ld/testsuite/ld-ifunc/ifunc-1-local-x86.d b/ld/testsuite/ld-ifunc/ifunc-1-local-x86.d index ee043b1207..244ef8c 100644 --- a/ld/testsuite/ld-ifunc/ifunc-1-local-x86.d +++ b/ld/testsuite/ld-ifunc/ifunc-1-local-x86.d @@ -3,5 +3,5 @@ #target: x86_64-*-* i?86-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*\+0x200@plt> #pass diff --git a/ld/testsuite/ld-ifunc/ifunc-1-x86.d b/ld/testsuite/ld-ifunc/ifunc-1-x86.d index ee043b1207..b0f7ccb 100644 --- a/ld/testsuite/ld-ifunc/ifunc-1-x86.d +++ b/ld/testsuite/ld-ifunc/ifunc-1-x86.d @@ -3,5 +3,5 @@ #target: x86_64-*-* i?86-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*\+0x220@plt> #pass diff --git a/ld/testsuite/ld-ifunc/ifunc-2-local-x86-64.d b/ld/testsuite/ld-ifunc/ifunc-2-local-x86-64.d index fa87102..f72359d 100644 --- a/ld/testsuite/ld-ifunc/ifunc-2-local-x86-64.d +++ b/ld/testsuite/ld-ifunc/ifunc-2-local-x86-64.d @@ -4,6 +4,6 @@ #target: x86_64-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*@plt> -[ \t0-9a-f]+:[ \t0-9a-f]+lea[ \t]+.*\(%rip\),%rax.*[ \t0-9a-fq]+<\*ABS\*@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*\+0x220@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+lea[ \t]+.*\(%rip\),%rax.*[ \t0-9a-fq]+<\*ABS\*\+0x220@plt> #pass diff --git a/ld/testsuite/ld-ifunc/ifunc-2-x86-64.d b/ld/testsuite/ld-ifunc/ifunc-2-x86-64.d index fa87102..f72359d 100644 --- a/ld/testsuite/ld-ifunc/ifunc-2-x86-64.d +++ b/ld/testsuite/ld-ifunc/ifunc-2-x86-64.d @@ -4,6 +4,6 @@ #target: x86_64-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*@plt> -[ \t0-9a-f]+:[ \t0-9a-f]+lea[ \t]+.*\(%rip\),%rax.*[ \t0-9a-fq]+<\*ABS\*@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*\+0x220@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+lea[ \t]+.*\(%rip\),%rax.*[ \t0-9a-fq]+<\*ABS\*\+0x220@plt> #pass diff --git a/ld/testsuite/ld-ifunc/ifunc-3a-x86.d b/ld/testsuite/ld-ifunc/ifunc-3a-x86.d index 97225ba..88897c2 100644 --- a/ld/testsuite/ld-ifunc/ifunc-3a-x86.d +++ b/ld/testsuite/ld-ifunc/ifunc-3a-x86.d @@ -4,5 +4,5 @@ #target: x86_64-*-* i?86-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+call[ \t0-9a-fq]+<\*ABS\*\+0x258@plt> #pass |