old-cross-binutils/ld/testsuite/ld-mmix/undef-3.d
Alan Modra d2667025dd 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.
2012-06-15 15:13:41 +00:00

32 lines
1,005 B
Makefile

#source: start.s
#ld: -u undefd -m elf64mmix
#readelf: -S -s
There are 5 section headers, starting at offset 0xa0:
Section Headers:
+\[Nr\] Name +Type +Address +Offset
+Size +EntSize +Flags +Link +Info +Align
+\[ 0\] +NULL +0+ +0+
+0+ +0+ +0 +0 +0
+\[ 1\] \.text +PROGBITS +0+ +0+78
+0+4 +0+ +AX +0 +0 +4
+\[ 2\] \.shstrtab +STRTAB +0+ +0+7c
+0+21 +0+ +0 +0 +1
+\[ 3\] \.symtab +SYMTAB +0+ +0+1e0
+0+c0 +0+18 +4 +2 +8
+\[ 4\] \.strtab +STRTAB +0+ +0+2a0
+0+2f +0+ +0 +0 +1
Key to Flags:
#...
Symbol table '\.symtab' contains 8 entries:
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
+0: 0+ +0 +NOTYPE +LOCAL +DEFAULT +UND
+1: 0+ +0 +SECTION +LOCAL +DEFAULT +1
+2: 0+ +0 +NOTYPE +GLOBAL +DEFAULT +UND undefd
+3: 0+ +0 +NOTYPE +GLOBAL +DEFAULT +1 _start
+4: 2000000000000000 +0 +NOTYPE +GLOBAL +DEFAULT +1 __bss_start
+5: 2000000000000000 +0 +NOTYPE +GLOBAL +DEFAULT +1 _edata
+6: 2000000000000000 +0 +NOTYPE +GLOBAL +DEFAULT +1 _end
+7: 0+ +0 +NOTYPE +GLOBAL +DEFAULT +1 _start\.