diff --git a/ld/ChangeLog b/ld/ChangeLog index 2d007ca333..c77b0873dc 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,5 +1,7 @@ 2003-07-28 Alan Modra + * emulparams/elf64ppc.sh (GOT): Fix for shell brace matching. + * emulparams/elf64ppc.sh (GOT): Don't merge .toc into .got for ld -r. 2003-07-27 Alan Modra diff --git a/ld/emulparams/elf64ppc.sh b/ld/emulparams/elf64ppc.sh index fe58c74258..c190b189f6 100644 --- a/ld/emulparams/elf64ppc.sh +++ b/ld/emulparams/elf64ppc.sh @@ -18,9 +18,15 @@ OTHER_BSS_SYMBOLS=" .tocbss ${RELOCATING-0}${RELOCATING+ALIGN(8)} : { *(.tocbss)}" OTHER_PLT_RELOC_SECTIONS=" .rela.tocbss ${RELOCATING-0} : { *(.rela.tocbss) }" -GOT=" - .got ${RELOCATING-0}${RELOCATING+ALIGN(8)} : { *(.got${RELOCATING+ .toc}) } - ${RELOCATING-.toc 0 : { *(.toc) }}" + +if test x${RELOCATING+set} = xset; then + GOT=" + .got ALIGN(8) : { *(.got .toc) }" +else + GOT=" + .got 0 : { *(.got) } + .toc 0 : { *(.toc) }" +fi OTHER_GOT_RELOC_SECTIONS=" .rela.toc ${RELOCATING-0} : { *(.rela.toc) }" OTHER_READWRITE_SECTIONS="