d2667025dd
* 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.
31 lines
821 B
Makefile
31 lines
821 B
Makefile
#source: weakhid.s
|
|
#as: --pic --no-underscore --em=criself
|
|
#ld: --shared -m crislinux -z nocombreloc
|
|
#objdump: -s -R -T
|
|
|
|
# Check that .weak and .weak .hidden object references are handled
|
|
# correctly when generating a DSO. For now, we have to live with the
|
|
# R_CRIS_NONE entry.
|
|
|
|
.*: file format elf32-cris
|
|
|
|
DYNAMIC SYMBOL TABLE:
|
|
0+2214 l d \.data 0+ \.data
|
|
0+2214 g DO \.data 0+c x
|
|
0+ D \*UND\* 0+ xregobj
|
|
0+2220 g D \.data 0+ __bss_start
|
|
0+ w D \*UND\* 0+ xweakobj
|
|
0+2220 g D \.data 0+ _edata
|
|
0+2220 g D \.data 0+ _end
|
|
|
|
|
|
DYNAMIC RELOCATION RECORDS
|
|
OFFSET TYPE VALUE
|
|
0+ R_CRIS_NONE \*ABS\*
|
|
0+2218 R_CRIS_32 xweakobj
|
|
0+221c R_CRIS_32 xregobj
|
|
|
|
Contents of section \.hash:
|
|
#...
|
|
Contents of section \.data:
|
|
2214 00000000 00000000 00000000 .*
|