Hack crossref tests for powerpc64
authorAlan Modra <amodra@gmail.com>
Wed, 18 May 2016 14:40:13 +0000 (00:10 +0930)
committerAlan Modra <amodra@gmail.com>
Thu, 19 May 2016 04:37:06 +0000 (14:07 +0930)
A different set of hacks to make the crossref tests pass on powerpc64
and powerpc64le.

* testsuite/ld-scripts/crossref.exp: Remove -mcall-aixdesc hack.
* testsuite/ld-scripts/cross2.t: Tweak .opd and .toc placement.
* testsuite/ld-scripts/cross3.t: Likewise.
* testsuite/ld-scripts/cross4.t: Likewise.
* testsuite/ld-scripts/cross5.t: Likewise.
* testsuite/ld-scripts/cross6.t: Likewise.
* testsuite/ld-scripts/cross7.t: Likewise.

ld/ChangeLog
ld/testsuite/ld-scripts/cross2.t
ld/testsuite/ld-scripts/cross3.t
ld/testsuite/ld-scripts/cross4.t
ld/testsuite/ld-scripts/cross5.t
ld/testsuite/ld-scripts/cross6.t
ld/testsuite/ld-scripts/cross7.t
ld/testsuite/ld-scripts/crossref.exp

index 774401618675822e3e2dff0770cbc3fe669e69dd..e0b8766df5181ff72ef4ba7284b3095fece5f536 100644 (file)
@@ -1,3 +1,13 @@
+2016-05-19  Alan Modra  <amodra@gmail.com>
+
+       * testsuite/ld-scripts/crossref.exp: Remove -mcall-aixdesc hack.
+       * testsuite/ld-scripts/cross2.t: Tweak .opd and .toc placement.
+       * testsuite/ld-scripts/cross3.t: Likewise.
+       * testsuite/ld-scripts/cross4.t: Likewise.
+       * testsuite/ld-scripts/cross5.t: Likewise.
+       * testsuite/ld-scripts/cross6.t: Likewise.
+       * testsuite/ld-scripts/cross7.t: Likewise.
+
 2016-05-19  Alan Modra  <amodra@gmail.com>
 
        * testsuite/ld-elf/shared.exp (mix_pic_and_non_pic): Pass in
index a0cdcbb6acc1cfcd8d7799a801d5fe3da6952762..07c1d8497eb8a4aed56460d8828e1e9b6bbd161c 100644 (file)
@@ -1,6 +1,6 @@
 NOCROSSREFS ( .text .data )
 SECTIONS
 {
-  .text : { *(.text) *(.text.*) *(.pr) }
+  .text : { *(.text) *(.text.*) *(.pr) *(.opd) }
   .data : { *(.data) *(.data.*) *(.sdata) *(.rw) *(.tc0) *(.tc) *(.toc) }
 }
index e48b9479fd19b3a55ddf38b0e188b5f8a535f62a..9da31afaf9295d2401ed3646f281da0138680227 100644 (file)
@@ -4,7 +4,7 @@ SECTIONS
 {
   .text : { *(.text) *(.text.*) }
   .nocrossrefs : { *(.nocrossrefs) }
-  .data : { *(.data) *(.data.*) *(.sdata) *(.opd) }
+  .data : { *(.data) *(.data.*) *(.sdata) *(.opd) *(.toc) }
   .bss : { *(.bss) *(COMMON) }
   /DISCARD/ : { *(*) }
 }
index 4e5d28a3656fdca02f017e99ac746621d460eabc..fa3401c1300cd24d8993a08485ca05c47fa571e8 100644 (file)
@@ -2,9 +2,9 @@ NOCROSSREFS_TO(.data .nocrossrefs)
 
 SECTIONS
 {
-  .text : { *(.text) *(.text.*) }
+  .text : { *(.text) *(.text.*) *(.opd) }
   .nocrossrefs : { *(.nocrossrefs) }
-  .data : { *(.data) *(.data.*) *(.sdata) *(.opd) }
+  .data : { *(.data) *(.data.*) *(.sdata) *(.toc) }
   .bss : { *(.bss) *(COMMON) }
   /DISCARD/ : { *(*) }
 }
index a581b92d3bb7f0a267e0fd3843abb7084c2ad470..c86d878ae16000b5ef39aba0e11742db1fd67217 100644 (file)
@@ -4,7 +4,7 @@ SECTIONS
 {
   .text : { *(.text) *(.text.*) }
   .nocrossrefs : { *(.nocrossrefs) }
-  .data : { *(.data) *(.data.*) *(.sdata) *(.opd) }
+  .data : { *(.data) *(.data.*) *(.sdata) *(.opd) *(.toc) }
   .bss : { *(.bss) *(COMMON) }
   /DISCARD/ : { *(*) }
 }
index 0f23ca062ea04f11eddb1c041cb7a850f630073b..20f5b5907437090312bba327baf3a70536979da7 100644 (file)
@@ -2,8 +2,8 @@ NOCROSSREFS_TO(.text .data)
 
 SECTIONS
 {
-  .text : { *(.text) *(.text.*) }
-  .data : { *(.data) *(.data.*) *(.sdata) *(.opd) }
+  .text : { *(.text) *(.text.*) *(.opd) }
+  .data : { *(.data) *(.data.*) *(.sdata) *(.toc) }
   .bss : { *(.bss) *(COMMON) }
   /DISCARD/ : { *(*) }
 }
index 29173fcbf9e1d180a704886f343819b841482c83..8477cfadbc2fd909c9f00ebd8504978b41078dd2 100644 (file)
@@ -2,8 +2,8 @@ NOCROSSREFS_TO(.data .text)
 
 SECTIONS
 {
-  .text : { *(.text) *(.text.*) }
-  .data : { *(.data) *(.data.*) *(.sdata) *(.opd) }
+  .text : { *(.text) *(.text.*) *(.opd) }
+  .data : { *(.data) *(.data.*) *(.sdata) *(.toc) }
   .bss : { *(.bss) *(COMMON) }
   /DISCARD/ : { *(*) }
 }
index 437132083e246fced4d602b0846c9120bec4d453..c9023c1881f77324d49852f1f113b57db7fa6599 100644 (file)
@@ -52,13 +52,6 @@ if [istarget xtensa*-*-*] {
     set CFLAGS "$CFLAGS -mtext-section-literals"
 }
 
-# If we have a compiler that doesn't use/reference dot-symbols, then
-# calls to functions reference the .opd section function descriptor.
-# This makes NOCROSSREFS rather useless on powerpc64.
-if [istarget powerpc64-*-*] {
-    set CFLAGS "$CFLAGS -mcall-aixdesc"
-}
-
 # Prevent the use of the MeP's small data area which references a symbol
 # called __sdabase which will not be defined by our test linker scripts.
 if [istarget mep*-*-elf] {