* 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. |
||
---|---|---|
.. | ||
common.c | ||
define.s | ||
elf-offset.ld | ||
elfvsb.dat | ||
elfvsb.exp | ||
hidden0.d | ||
hidden1.d | ||
hidden2.d | ||
hidden2.ld | ||
hidden2.s | ||
internal0.d | ||
internal1.d | ||
main.c | ||
protected0.d | ||
protected1.d | ||
sh1.c | ||
sh2.c | ||
sh3.c | ||
test.c | ||
undef.s |