diff options
author | Alan Modra <amodra@gmail.com> | 2015-01-20 21:11:37 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2015-01-20 21:46:07 +1030 |
commit | 5ad18f16abf3555582782a86cc1daa751ea8b9b8 (patch) | |
tree | cb1793c968131fa6c1a86c2462bb24d33f9fb137 /ld/scripttempl | |
parent | c05b575a8dfabab6af5d8586d1a5c0c67f819ac2 (diff) | |
download | gdb-5ad18f16abf3555582782a86cc1daa751ea8b9b8.zip gdb-5ad18f16abf3555582782a86cc1daa751ea8b9b8.tar.gz gdb-5ad18f16abf3555582782a86cc1daa751ea8b9b8.tar.bz2 |
Reorder more powerpc64 sections again for -z relro
.toc1 is the second level TOC section used by gcc's -mminimal-toc. It
too should be read-only after relocation. Also, the last patch
description mentioned .sbss moving but didn't actually do that, so fix
that problem. .tocbss (whatever that is) was before .sbss previously,
so move that one too.
* emulparams/elf64ppc.sh (OTHER_SDATA_SECTIONS): Use in place of..
(OTHER_BSS_SYMBOLS): ..this.
(OTHER_PLT_RELOC_SECTIONS): Don't define.
(OTHER_GOT_RELOC_SECTIONS): Add rela.toc1 and rela.tocbss.
(OTHER_READWRITE_SECTIONS): Don't define. Move .toc1 to..
(OTHER_RELRO_SECTIONS_2): ..here.
* scripttempl/elf.sc: Move SBSS too when DATA_SDATA.
Diffstat (limited to 'ld/scripttempl')
-rw-r--r-- | ld/scripttempl/elf.sc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc index eb3312a..c9c80b0 100644 --- a/ld/scripttempl/elf.sc +++ b/ld/scripttempl/elf.sc @@ -582,6 +582,7 @@ cat <<EOF ${INITIAL_READWRITE_SECTIONS} ${DATA_SDATA+${SDATA}} ${DATA_SDATA+${OTHER_SDATA_SECTIONS}} + ${DATA_SDATA+${SBSS}} ${DATA_GOT+${RELRO_NOW-${DATA_PLT+${PLT_BEFORE_GOT+${PLT}}}}} ${DATA_GOT+${RELRO_NOW-${SEPARATE_GOTPLT-${GOT}}}} ${DATA_GOT+${RELRO_NOW-${GOTPLT}}} @@ -609,7 +610,7 @@ cat <<EOF ${RELOCATING+. = .;} ${RELOCATING+${USER_LABEL_PREFIX}__bss_start = .;} ${RELOCATING+${OTHER_BSS_SYMBOLS}} - ${SBSS} + ${DATA_SDATA-${SBSS}} ${BSS_PLT+${PLT}} .${BSS_NAME} ${RELOCATING-0} : { |