Using a symbol other than .TOC. with @tocbase is an extension to the
ABI. It is never valid to use a symbol without a definition in the
binary, and symbols on these expressions cannot be overridden. Make
this explicit by using ".hidden" in the testcase.
* testsuite/ld-powerpc/symtocbase-1.s: Align data. Make function
entry symbol hidden.
* testsuite/ld-powerpc/symtocbase-2.s: Likewise.
* testsuite/ld-powerpc/symtocbase.d: Adjust expected output.
-.section .toc,"aw",@progbits
+ .section .toc,"aw",@progbits
.align 15
.globl x
x: .quad .x,.x@tocbase,0
.LCi: .quad i
.space 48 * 1024
-.data
+
+ .data
+ .p2align 2
.globl i
i: .long 0
.L1bases:
.quad .TOC.@tocbase
.quad .x@tocbase
.quad .y@tocbase
-.text
+
+ .text
.globl .x
+ .hidden .x
.x:
ld 9,.LCi@toc(2)
blr
-.section .toc,"aw",@progbits
+ .section .toc,"aw",@progbits
.align 15
.globl y
y: .quad .y,.y@tocbase,0
.LCi: .quad i
.space 48 * 1024
-.data
+
+ .data
+ .p2align 3
.L2bases:
.quad .TOC.@tocbase
.quad .x@tocbase
.quad .y@tocbase
-.text
+
+ .text
.globl .y
+ .hidden .y
.y:
ld 9,.LCi@toc(2)
blr
.* \.long 0x28000
.* \.long 0x0
.* \.long 0x38000
-.* \.long 0x0
+#...
.* \.long 0x38000
.* \.long 0x0
.* \.long 0x28000