|
Packit |
ba3681 |
. ${srcdir}/emulparams/elf32ppccommon.sh
|
|
Packit |
ba3681 |
. ${srcdir}/emulparams/plt_unwind.sh
|
|
Packit |
ba3681 |
EXTRA_EM_FILE=ppc64elf
|
|
Packit |
ba3681 |
ELFSIZE=64
|
|
Packit |
ba3681 |
OUTPUT_FORMAT="elf64-powerpc"
|
|
Packit |
ba3681 |
TEXT_START_ADDR=0x10000000
|
|
Packit |
ba3681 |
#SEGMENT_SIZE=0x10000000
|
|
Packit |
ba3681 |
ARCH=powerpc:common64
|
|
Packit |
ba3681 |
NOP=0x60000000
|
|
Packit |
ba3681 |
unset EXECUTABLE_SYMBOLS
|
|
Packit |
ba3681 |
unset SDATA_START_SYMBOLS
|
|
Packit |
ba3681 |
unset SDATA2_START_SYMBOLS
|
|
Packit |
ba3681 |
unset SBSS_START_SYMBOLS
|
|
Packit |
ba3681 |
unset SBSS_END_SYMBOLS
|
|
Packit |
ba3681 |
unset OTHER_END_SYMBOLS
|
|
Packit |
ba3681 |
unset OTHER_RELRO_SECTIONS
|
|
Packit |
ba3681 |
OTHER_TEXT_SECTIONS="*(.sfpr .glink)"
|
|
Packit |
ba3681 |
OTHER_SDATA_SECTIONS="
|
|
Packit |
ba3681 |
.tocbss ${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { *(.tocbss)}"
|
|
Packit |
ba3681 |
|
|
Packit |
ba3681 |
if test x${RELOCATING+set} = xset; then
|
|
Packit |
ba3681 |
GOT="
|
|
Packit |
ba3681 |
.got : ALIGN(256) { *(.got .toc) }"
|
|
Packit |
ba3681 |
else
|
|
Packit |
ba3681 |
GOT="
|
|
Packit |
ba3681 |
.got 0 : { *(.got) }
|
|
Packit |
ba3681 |
.toc 0 : { *(.toc) }"
|
|
Packit |
ba3681 |
fi
|
|
Packit |
ba3681 |
# Put .opd relocs first so ld.so will process them before any ifunc relocs.
|
|
Packit |
ba3681 |
INITIAL_RELOC_SECTIONS="
|
|
Packit |
ba3681 |
.rela.opd ${RELOCATING-0} : { *(.rela.opd) }"
|
|
Packit |
ba3681 |
OTHER_GOT_RELOC_SECTIONS="
|
|
Packit |
ba3681 |
.rela.toc ${RELOCATING-0} : { *(.rela.toc) }
|
|
Packit |
ba3681 |
.rela.toc1 ${RELOCATING-0} : { *(.rela.toc1) }
|
|
Packit |
ba3681 |
.rela.tocbss ${RELOCATING-0} : { *(.rela.tocbss) }
|
|
Packit |
ba3681 |
.rela.branch_lt ${RELOCATING-0} : { *(.rela.branch_lt) }"
|
|
Packit |
ba3681 |
OTHER_RELRO_SECTIONS_2="
|
|
Packit |
ba3681 |
.opd ${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { KEEP (*(.opd)) }
|
|
Packit |
ba3681 |
.toc1 ${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { *(.toc1) }
|
|
Packit |
ba3681 |
.branch_lt ${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { *(.branch_lt) }"
|
|
Packit |
ba3681 |
INITIAL_READWRITE_SECTIONS="
|
|
Packit |
ba3681 |
.toc ${RELOCATING-0} :${RELOCATING+ ALIGN(8)} { *(.toc) }"
|
|
Packit |
ba3681 |
# Put .got before .data
|
|
Packit |
ba3681 |
DATA_GOT=" "
|
|
Packit |
ba3681 |
# Always make .got read-only after relocation
|
|
Packit |
ba3681 |
SEPARATE_GOTPLT=0
|
|
Packit |
ba3681 |
# Also put .sdata before .data
|
|
Packit |
ba3681 |
DATA_SDATA=" "
|
|
Packit |
ba3681 |
# and .plt/.iplt before .data
|
|
Packit |
ba3681 |
DATA_PLT=
|
|
Packit |
ba3681 |
PLT_BEFORE_GOT=" "
|