bfd/
authorRichard Sandiford <rdsandiford@googlemail.com>
Thu, 2 Mar 2006 09:44:23 +0000 (09:44 +0000)
committerRichard Sandiford <rdsandiford@googlemail.com>
Thu, 2 Mar 2006 09:44:23 +0000 (09:44 +0000)
* elf32-ppc.c (is_ppc_elf_target): Return true if the target is
bfd_elf32_powerpc_vxworks_vec.

ld/testsuite/
* ld-i386/vxworks1.ld (.data): New section.
* ld-i386/vxworks1-lib.s: Add a pointer to a local symbol.
* ld-i386/vxworks1-lib.rd: Test for the associated reloc.
* ld-powerpc/vxworks1.ld (.data): New section.
* ld-powerpc/vxworks1-lib.s: Add a pointer to a local symbol.
* ld-powerpc/vxworks1-lib.rd: Test for the associated reloc.

bfd/ChangeLog
bfd/elf32-ppc.c
ld/testsuite/ChangeLog
ld/testsuite/ld-i386/vxworks1-lib.rd
ld/testsuite/ld-i386/vxworks1-lib.s
ld/testsuite/ld-i386/vxworks1.ld
ld/testsuite/ld-powerpc/vxworks1-lib.rd
ld/testsuite/ld-powerpc/vxworks1-lib.s
ld/testsuite/ld-powerpc/vxworks1.ld

index 5f3191c..1797c84 100644 (file)
@@ -1,3 +1,8 @@
+2006-03-02  Richard Sandiford  <richard@codesourcery.com>
+
+       * elf32-ppc.c (is_ppc_elf_target): Return true if the target is
+       bfd_elf32_powerpc_vxworks_vec.
+
 2006-03-02  Nick Clifton  <nickc@redhat.com>
 
        * elf32-m32c.c (m32c_elf_relax_section): Initialise 'gap'.
index 68cead2..b3d8308 100644 (file)
@@ -2679,9 +2679,12 @@ static bfd_boolean
 is_ppc_elf_target (const struct bfd_target *targ)
 {
   extern const bfd_target bfd_elf32_powerpc_vec;
+  extern const bfd_target bfd_elf32_powerpc_vxworks_vec;
   extern const bfd_target bfd_elf32_powerpcle_vec;
 
-  return targ == &bfd_elf32_powerpc_vec || targ == &bfd_elf32_powerpcle_vec;
+  return (targ == &bfd_elf32_powerpc_vec
+         || targ == &bfd_elf32_powerpc_vxworks_vec
+         || targ == &bfd_elf32_powerpcle_vec);
 }
 
 /* Hook called by the linker routine which adds symbols from an object
index b3a93ad..a7dabaf 100644 (file)
@@ -1,5 +1,14 @@
 2006-03-02  Richard Sandiford  <richard@codesourcery.com>
 
+       * ld-i386/vxworks1.ld (.data): New section.
+       * ld-i386/vxworks1-lib.s: Add a pointer to a local symbol.
+       * ld-i386/vxworks1-lib.rd: Test for the associated reloc.
+       * ld-powerpc/vxworks1.ld (.data): New section.
+       * ld-powerpc/vxworks1-lib.s: Add a pointer to a local symbol.
+       * ld-powerpc/vxworks1-lib.rd: Test for the associated reloc.
+
+2006-03-02  Richard Sandiford  <richard@codesourcery.com>
+
        * ld-i386/ld-i386/vxworks1-lib.nd: New test.
        * ld-i386/i386.exp: Run it.
        * ld-powerpc/ld-powerpc/vxworks1-lib.nd: New test.
index c86ec1d..ab567b6 100644 (file)
@@ -4,8 +4,9 @@ Relocation section '\.rel\.plt' at offset .* contains 2 entries:
 0008140c  .*07 R_386_JUMP_SLOT   00000000   sexternal
 00081410  .*07 R_386_JUMP_SLOT   00080c27   sglobal
 
-Relocation section '\.rel\.dyn' at offset .* contains 3 entries:
+Relocation section '\.rel\.dyn' at offset .* contains 4 entries:
  Offset     Info    Type            Sym\.Value  Sym\. Name
+00081c00  00000008 R_386_RELATIVE *
 00080c03  .*01 R_386_32          00000000   __GOTT_BASE__
 00080c09  .*01 R_386_32          00000000   __GOTT_INDEX__
 00081414  .*06 R_386_GLOB_DAT    00081800   x
index d2bbac0..f9f05dc 100644 (file)
@@ -25,4 +25,7 @@ sglobal:
        ret
        .size   sglobal, .-sglobal
 
+       .data
+       .4byte  slocal
+
        .comm   x,4,4
index 4e31523..ff25b39 100644 (file)
@@ -24,4 +24,7 @@ SECTIONS
 
   . = ALIGN (0x400);
   .bss : { *(.bss) *(.dynbss) }
+
+  . = ALIGN (0x400);
+  .data : { *(.data) }
 }
index 17087f1..2aaf878 100644 (file)
@@ -4,8 +4,9 @@ Relocation section '\.rela\.plt' at offset .* contains 2 entries:
 0008140c  .*15 R_PPC_JMP_SLOT    00000000   sexternal \+ 0
 00081410  .*15 R_PPC_JMP_SLOT    00080c48   sglobal \+ 0
 
-Relocation section '\.rela\.dyn' at offset .* contains 4 entries:
+Relocation section '\.rela\.dyn' at offset .* contains 5 entries:
  Offset     Info    Type            Sym\.Value  Sym\. Name \+ Addend
+00081c00  00000016 R_PPC_RELATIVE * 00080c44
 00080c0e  .*06 R_PPC_ADDR16_HA   00000000   __GOTT_BASE__ \+ 0
 00080c12  .*04 R_PPC_ADDR16_LO   00000000   __GOTT_BASE__ \+ 0
 00080c16  .*03 R_PPC_ADDR16      00000000   __GOTT_INDEX__ \+ 0
index 8e286c1..9dfcb0f 100644 (file)
@@ -32,4 +32,7 @@ sglobal:
        blr
        .size   sglobal, .-sglobal
 
+       .data
+       .4byte  slocal
+
        .comm   x,4,4
index 540e0eb..69fe044 100644 (file)
@@ -24,4 +24,7 @@ SECTIONS
 
   . = ALIGN (0x400);
   .bss : { *(.bss) }
+
+  . = ALIGN (0x400);
+  .data : { *(.data) }
 }