diff options
author | Alan Modra <amodra@gmail.com> | 2012-06-15 15:13:41 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2012-06-15 15:13:41 +0000 |
commit | d2667025dd30611514810c28bee9709e4623012a (patch) | |
tree | 7364422fa955cf289aef9008298bb0bc79394d65 /ld/scripttempl | |
parent | 8e09ad05eda21f6772d6bcca1eb8b42e5d77be03 (diff) | |
download | gdb-d2667025dd30611514810c28bee9709e4623012a.zip gdb-d2667025dd30611514810c28bee9709e4623012a.tar.gz gdb-d2667025dd30611514810c28bee9709e4623012a.tar.bz2 |
ld/
* ldlang.h (lang_output_section_statement_type): Add after_end field.
(lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
(section_for_dot): Declare.
* ldlang.c (lang_size_sections_1): Correct comment.
(current_section): Move earlier.
(current_assign, prefer_next_section): New static vars.
(lang_do_assignments_1): Add found_end param. Detect _end
assignment to set found_end. Set os->after_end. Set above statics.
(lang_do_assignments): Adjust lang_do_assignments_1 call. Init
vars.
(section_for_dot): New function.
(lang_set_startof): Don't make an absolute symbol.
(lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
* ldexp.c (new_rel_from_abs): Use section_for_dot.
* emultempl/lnk960.em (symbol_at_beginning_of): New function.
(symbol_at_end_of): Likewise.
(lnk960_after_allocation): Use them.
* scripttempl/elf.sc: Precede OTHER_GOT_SYMBOLS with . = .; and
likewise before __bss_start.
ld/testsuite/
Update far too many tests.
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 37a3124..1a92466 100644 --- a/ld/scripttempl/elf.sc +++ b/ld/scripttempl/elf.sc @@ -568,12 +568,13 @@ cat <<EOF ${SMALL_DATA_CTOR+${RELOCATING+${CTOR}}} ${SMALL_DATA_DTOR+${RELOCATING+${DTOR}}} ${DATA_PLT+${PLT_BEFORE_GOT+${PLT}}} - ${SDATA_GOT+${RELOCATING+${OTHER_GOT_SYMBOLS}}} + ${SDATA_GOT+${RELOCATING+${OTHER_GOT_SYMBOLS+. = .; ${OTHER_GOT_SYMBOLS}}}} ${SDATA_GOT+${GOT}} ${SDATA_GOT+${OTHER_GOT_SECTIONS}} ${SDATA} ${OTHER_SDATA_SECTIONS} ${RELOCATING+${DATA_END_SYMBOLS-${USER_LABEL_PREFIX}_edata = .; PROVIDE (${USER_LABEL_PREFIX}edata = .);}} + ${RELOCATING+. = .;} ${RELOCATING+${USER_LABEL_PREFIX}__bss_start = .;} ${RELOCATING+${OTHER_BSS_SYMBOLS}} ${SBSS} |