diff options
author | Richard Sandiford <rdsandiford@googlemail.com> | 2006-10-20 07:58:17 +0000 |
---|---|---|
committer | Richard Sandiford <rdsandiford@googlemail.com> | 2006-10-20 07:58:17 +0000 |
commit | bcfdf036c8f094a9e43e2de47dd5e6ea00e1f816 (patch) | |
tree | 8560a4415b4f26bbe8769a72eca9611b6860e89d | |
parent | 98c904a8640de8891570902ac9d1ef6153092a18 (diff) | |
download | gdb-bcfdf036c8f094a9e43e2de47dd5e6ea00e1f816.zip gdb-bcfdf036c8f094a9e43e2de47dd5e6ea00e1f816.tar.gz gdb-bcfdf036c8f094a9e43e2de47dd5e6ea00e1f816.tar.bz2 |
bfd/
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make the
size of .rel.dyn reflect the value of DT_RELSZ.
ld/testsuite/
* ld-mips-elf/multi-got-1.d: Remove trailing R_MIPS_NONE entries.
* ld-mips-elf/tls-multi-got-1.got: Likewise.
* ld-mips-elf/tls-multi-got-1.r: Likewise.
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elfxx-mips.c | 4 | ||||
-rw-r--r-- | ld/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | ld/testsuite/ld-mips-elf/multi-got-1.d | 12 | ||||
-rw-r--r-- | ld/testsuite/ld-mips-elf/tls-multi-got-1.got | 22 | ||||
-rw-r--r-- | ld/testsuite/ld-mips-elf/tls-multi-got-1.r | 3 |
6 files changed, 17 insertions, 35 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5a1cbd3..304783a 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,10 @@ 2006-10-20 Richard Sandiford <richard@codesourcery.com> + * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make the + size of .rel.dyn reflect the value of DT_RELSZ. + +2006-10-20 Richard Sandiford <richard@codesourcery.com> + * elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Allocate a PT_NULL header for dynamic objects. (_bfd_mips_elf_modify_segment_map): Add it. diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c index 639a065..34a06c8 100644 --- a/bfd/elfxx-mips.c +++ b/bfd/elfxx-mips.c @@ -8873,6 +8873,10 @@ _bfd_mips_elf_finish_dynamic_sections (bfd *output_bfd, * (ABI_64_P (output_bfd) ? sizeof (Elf64_Mips_External_Rel) : sizeof (Elf32_External_Rel))); + /* Adjust the section size too. Tools like the prelinker + can reasonably expect the values to the same. */ + elf_section_data (s->output_section)->this_hdr.sh_size + = dyn.d_un.d_val; break; default: diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 22cdf09..2c8ea09 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,5 +1,11 @@ 2006-10-20 Richard Sandiford <richard@codesourcery.com> + * ld-mips-elf/multi-got-1.d: Remove trailing R_MIPS_NONE entries. + * ld-mips-elf/tls-multi-got-1.got: Likewise. + * ld-mips-elf/tls-multi-got-1.r: Likewise. + +2006-10-20 Richard Sandiford <richard@codesourcery.com> + * ld-mips-elf/multi-got-1.d: Do not expect a particular address for DT_HASH. * ld-mips-elf/rel32-o32.d: Bump addresses by 0x20 to account for diff --git a/ld/testsuite/ld-mips-elf/multi-got-1.d b/ld/testsuite/ld-mips-elf/multi-got-1.d index 3912439..db76eea 100644 --- a/ld/testsuite/ld-mips-elf/multi-got-1.d +++ b/ld/testsuite/ld-mips-elf/multi-got-1.d @@ -25,7 +25,7 @@ Dynamic section at offset .* contains 17 entries: 0x70000013 \(MIPS_GOTSYM\) 0x[0-9a-f]+ 0x00000000 \(NULL\) 0x0 -Relocation section '\.rel\.dyn' at offset 0x[0-9a-f]+ contains 8203 entries: +Relocation section '\.rel\.dyn' at offset 0x[0-9a-f]+ contains 8193 entries: Offset Info Type Sym.Value Sym. Name 00000000 00000000 R_MIPS_NONE ^[0-9a-f]+ [0-9a-f]+ R_MIPS_REL32 [0-9a-f]+ sym_2_[0-9]+ @@ -8220,13 +8220,3 @@ Relocation section '\.rel\.dyn' at offset 0x[0-9a-f]+ contains 8203 entries: ^[0-9a-f]+ [0-9a-f]+ R_MIPS_REL32 [0-9a-f]+ sym_2_[0-9]+ ^[0-9a-f]+ [0-9a-f]+ R_MIPS_REL32 [0-9a-f]+ sym_2_[0-9]+ ^[0-9a-f]+ [0-9a-f]+ R_MIPS_REL32 [0-9a-f]+ sym_2_[0-9]+ -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE -00000000 00000000 R_MIPS_NONE diff --git a/ld/testsuite/ld-mips-elf/tls-multi-got-1.got b/ld/testsuite/ld-mips-elf/tls-multi-got-1.got index 4ee502f..649baae 100644 --- a/ld/testsuite/ld-mips-elf/tls-multi-got-1.got +++ b/ld/testsuite/ld-mips-elf/tls-multi-got-1.got @@ -15,28 +15,6 @@ OFFSET TYPE VALUE 00143f7c R_MIPS_REL32 sym_1_9526 #... 00139bd0 R_MIPS_REL32 sym_2_8654 -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* -00000000 R_MIPS_NONE \*ABS\* Contents of section .got: diff --git a/ld/testsuite/ld-mips-elf/tls-multi-got-1.r b/ld/testsuite/ld-mips-elf/tls-multi-got-1.r index c63d230..db44114 100644 --- a/ld/testsuite/ld-mips-elf/tls-multi-got-1.r +++ b/ld/testsuite/ld-mips-elf/tls-multi-got-1.r @@ -20,7 +20,7 @@ Dynamic section at offset .* contains 18 entries: 0x0000001e \(FLAGS\) STATIC_TLS 0x00000000 \(NULL\) 0x0 -Relocation section '\.rel\.dyn' at offset 0x[0-9a-f]+ contains 20031 entries: +Relocation section '\.rel\.dyn' at offset 0x[0-9a-f]+ contains 20009 entries: Offset Info Type Sym.Value Sym. Name [0-9a-f ]+R_MIPS_NONE [0-9a-f ]+R_MIPS_TLS_DTPMOD @@ -36,4 +36,3 @@ Relocation section '\.rel\.dyn' at offset 0x[0-9a-f]+ contains 20031 entries: #... [0-9a-f ]+R_MIPS_REL32 000cf2b4 sym_1_0465 [0-9a-f ]+R_MIPS_REL32 000e0ef8 sym_2_8654 -#... |