bfd/
authorRichard Sandiford <rdsandiford@googlemail.com>
Fri, 20 Oct 2006 07:58:17 +0000 (07:58 +0000)
committerRichard Sandiford <rdsandiford@googlemail.com>
Fri, 20 Oct 2006 07:58:17 +0000 (07:58 +0000)
* 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.

bfd/ChangeLog
bfd/elfxx-mips.c
ld/testsuite/ChangeLog
ld/testsuite/ld-mips-elf/multi-got-1.d
ld/testsuite/ld-mips-elf/tls-multi-got-1.got
ld/testsuite/ld-mips-elf/tls-multi-got-1.r

index 5a1cbd3..304783a 100644 (file)
@@ -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.
index 639a065..34a06c8 100644 (file)
@@ -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:
index 22cdf09..2c8ea09 100644 (file)
@@ -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
index 3912439..db76eea 100644 (file)
@@ -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      
index 4ee502f..649baae 100644 (file)
@@ -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:
index c63d230..db44114 100644 (file)
@@ -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
-#...