binutils-gdb/ld/testsuite/ld-mmix/bpo-18.d
Alan Modra afd7a018c9 ld/
PR 63
	* ldlang.h (lang_output_section_statement_type): Make "next" a
	struct lang_output_section_statement_struct *.
	(struct orphan_save): Move from elf32.em.  Add "name" and "flags".
	(lang_output_section_find_by_flags, lang_insert_orphan): Declare.
	* ldlang.c (lang_output_section_find_1): Adjust for changed
	output_section_statement "next".
	(strip_excluded_output_sections): Likewise.
	(lang_record_phdrs): Likewise.
	(lang_output_section_find_by_flags): New function.
	(output_prev_sec_find): Move from pe.em.  Adjust iterator.
	(lang_insert_orphan): New function.  Tail end of elf32.em's
	place_orphan merged with that from pe.em.  Allow bfd_section to
	be placed first.  New heuristic for placing new output section
	statement in existing script, and accompanying split of __start
	symbol alignment into a separate assignment to dot.
	(lang_add_section): Consistently use output->bfd_section rather than
	an alias, section->output_section.
	(map_input_to_output_sections): Rename overly long arg.  Move
	initialization of data_statement output section to here..
	(lang_check_section_addresses): ..from here.
	(print_assignment): Correct printing of etree_assert.
	(print_all_symbols): Don't bomb if userdata is NULL.
	(IGNORE_SECTION): Rearrange.
	* emultempl/elf32.em (output_rel_find): Adjust interator.
	(output_prev_sec_find): Delete.
	(struct orphan_save): Delete.
	(gld${EMULATION_NAME}_place_orphan): Cater for zero bfd_section
	flags without creating a duplicate output section statement.
	Revise code holding history of various orphan section placements.
	Allow orphan sections to place before script specified output
	sections.  Call lang_output_section_find_by_flags when placement
	by name fails.  Use lang_insert_orphan.
	* emultempl/mmo.em (output_prev_sec_find): Delete.
	(struct orphan_save): Delete.
	(mmo_place_orphan): Revise code holding history of orphan placement.
	Allow orphans to place before existing output sections.  Use
	lang_insert_orphan.
	* emultempl/pe.em (output_prev_sec_find): Delete.
	(struct orphan_save): Delete.
	(gld_${EMULATION_NAME}_place_orphan): Revise to suit use of
	lang_insert_orphan.
ld/testsuite/
	* ld-scripts/overlay-size.d: Update for changed orphan section
	placement.
	* ld-mmix/bpo-18.d: Likewise.
2004-10-14 12:54:47 +00:00

35 lines
1004 B
Makefile

#source: start.s
#source: bpo-1.s
#source: bpo-2.s
#source: bpo-5.s
#source: bpo-6.s
#as: -linker-allocated-gregs
#ld: -m elf64mmix -T$srcdir/$subdir/bpo64addr.ld
#objdump: -st
.*: file format elf64-mmix
SYMBOL TABLE:
0+100 l d \.text 0+
4000000000001060 l d \.text\.away 0+
400000000000106c l d \.data 0+
400000000000106c l d \.bss 0+
0+7e0 l d \.MMIX\.reg_contents 0+
0+ l d \*ABS\* 0+
0+ l d \*ABS\* 0+
0+ l d \*ABS\* 0+
4000000000001064 l \.text\.away 0+ x
0+100 g \.text 0+ x
4000000000001060 g \.text\.away 0+ Main
0+104 g \.text 0+ x2
4000000000001060 g \.text\.away 0+ _start
4000000000001068 g \.text\.away 0+ y
Contents of section \.text:
0100 232dfc00 232dfd00 .*
Contents of section \.text\.away:
4000000000001060 e3fd0001 232afe1e 2321fe00 .*
Contents of section \.MMIX\.reg_contents:
07e0 00000000 00001168 00000000 0000a514 .*
07f0 40000000 00001070 .*