old-cross-binutils/ld/testsuite/ld-mips-elf
Maciej W. Rozycki 1bbce13264 bfd/
* elfxx-mips.h (_bfd_mips_elf_get_synthetic_symtab): New
	prototype.
	* elf32-mips.c (elf_backend_plt_sym_val): Remove macro.
	(bfd_elf32_get_synthetic_symtab): New macro.
	* elfxx-mips.c (plt_entry): New structure.
	(mips_elf_link_hash_entry): Add use_plt_entry member.
	(mips_elf_link_hash_table): Rename plt_entry_size member to
	plt_mips_entry_size.  Add plt_comp_entry_size, plt_mips_offset,
	plt_comp_offset, plt_got_index entries and plt_header_is_comp
	members.
	(STUB_LW_MICROMIPS, STUB_MOVE_MICROMIPS): New macros.
	(STUB_LUI_MICROMIPS, STUB_JALR_MICROMIPS): Likewise.
	(STUB_ORI_MICROMIPS, STUB_LI16U_MICROMIPS): Likewise.
	(STUB_LI16S_MICROMIPS): Likewise.
	(MICROMIPS_FUNCTION_STUB_NORMAL_SIZE): Likewise.
	(MICROMIPS_FUNCTION_STUB_BIG_SIZE): Likewise.
	(micromips_o32_exec_plt0_entry): New variable.
	(mips16_o32_exec_plt_entry): Likewise.
	(micromips_o32_exec_plt_entry): Likewise.
	(mips_elf_link_hash_newfunc): Initialize use_plt_entry.
	(mips_elf_output_extsym): Update to use gotplt_union's plist
	member rather than offset.
	(mips_elf_gotplt_index): Likewise.  Remove the VxWorks
	restriction.  Use MIPS_ELF_GOT_SIZE to calculate GOT address.
	(mips_elf_count_got_symbols): Update to use gotplt_union's plist
	member rather than offset.
	(mips_elf_calculate_relocation): Handle MIPS16/microMIPS PLT
	entries.
	(_bfd_mips_elf_create_dynamic_sections): Don't set PLT sizes
	here.
	(mips_elf_make_plt_record): New function.
	(_bfd_mips_elf_check_relocs): Update comment.  Record occurences
	of JAL relocations that might need a PLT entry.
	(_bfd_mips_elf_adjust_dynamic_symbol): Update to use
	gotplt_union's plist member rather than offset.  Set individual
	PLT entry sizes here.  Handle MIPS16/microMIPS PLT entries.
	Don't set the symbol's value in the symbol table for PLT
	references here.  Don't set the PLT or PLT GOT section sizes
	here.
	(mips_elf_estimate_stub_size): Handle microMIPS stubs.
	(mips_elf_allocate_lazy_stub): Likewise.
	(mips_elf_lay_out_lazy_stubs): Likewise.  Define a _MIPS_STUBS_
	magic symbol.
	(mips_elf_set_plt_sym_value): New function.
	(_bfd_mips_elf_size_dynamic_sections): Set PLT header size and
	PLT and PLT GOT section sizes here.  Set the symbol values in
	the symbol table for PLT references here.  Handle microMIPS
	annotation of the _PROCEDURE_LINKAGE_TABLE_ magic symbol.
	(_bfd_mips_elf_finish_dynamic_symbol): Update to use
	gotplt_union's plist member rather than offset.  Handle
	MIPS16/microMIPS PLT entries.  Handle microMIPS stubs.
	(_bfd_mips_vxworks_finish_dynamic_symbol): Update to use
	gotplt_union's plist member rather than offset.  Use
	MIPS_ELF_GOT_SIZE to calculate GOT address.
	(mips_finish_exec_plt): Handle microMIPS PLT.  Return status.
	(_bfd_mips_elf_finish_dynamic_sections): Handle result from
	mips_finish_exec_plt.
	(_bfd_mips_elf_link_hash_table_create): Update to use
	gotplt_union's plist member rather than offset.
	(_bfd_mips_elf_get_synthetic_symtab): New function.

	include/elf/
	* mips.h (ELF_ST_IS_MIPS_PLT): Respect STO_MIPS16 setting.
	(ELF_ST_SET_MIPS_PLT): Likewise.

	gdb/
	* mips-tdep.c (mips_elf_make_msymbol_special): Handle MIPS16 and
	microMIPS synthetic symbols.

	ld/
	* emulparams/elf32btsmip.sh: Arrange for .got.plt to be placed
	as close to .plt as possible.
	* scripttempl/elf.sc: Handle $INITIAL_READWRITE_SECTIONS and
	$PLT_NEXT_DATA variables.

	ld/testsuite/
	* ld-mips-elf/jalx-2.dd: Update for microMIPS PLT support.
	* ld-mips-elf/pic-and-nonpic-3a.dd: Update for the _MIPS_STUBS_
	magic symbol.
	* ld-mips-elf/pic-and-nonpic-3b.dd: Likewise.
	* ld-mips-elf/pic-and-nonpic-6-n32.dd: Likewise.
	* ld-mips-elf/pic-and-nonpic-6-n64.dd: Likewise.
	* ld-mips-elf/pic-and-nonpic-6-o32.dd: Likewise.
	* ld-mips-elf/stub-dynsym-1-10000.d: Likewise.
	* ld-mips-elf/stub-dynsym-1-2fe80.d: Likewise.
	* ld-mips-elf/stub-dynsym-1-7fff.d: Likewise.
	* ld-mips-elf/stub-dynsym-1-8000.d: Likewise.
	* ld-mips-elf/stub-dynsym-1-fff0.d: Likewise.
	* ld-mips-elf/tlslib-o32.d: Likewise.

	opcodes/
	* mips-dis.c (is_mips16_plt_tail): New function.
	(print_insn_mips16): Handle MIPS16 PLT entry's GOT slot address
	word.
	(is_compressed_mode_p): Handle MIPS16/microMIPS PLT entries.
2013-06-24 23:55:46 +00:00
..
attr-gnu-4-00.d
attr-gnu-4-0.s
attr-gnu-4-01.d
attr-gnu-4-1.s
attr-gnu-4-02.d
attr-gnu-4-2.s
attr-gnu-4-03.d
attr-gnu-4-3.s
attr-gnu-4-04.d
attr-gnu-4-4.s
attr-gnu-4-05.d
attr-gnu-4-5.s
attr-gnu-4-10.d
attr-gnu-4-11.d
attr-gnu-4-12.d
attr-gnu-4-13.d
attr-gnu-4-14.d
attr-gnu-4-15.d
attr-gnu-4-20.d
attr-gnu-4-21.d
attr-gnu-4-22.d
attr-gnu-4-23.d
attr-gnu-4-24.d
attr-gnu-4-25.d
attr-gnu-4-30.d
attr-gnu-4-31.d
attr-gnu-4-32.d
attr-gnu-4-33.d
attr-gnu-4-34.d
attr-gnu-4-35.d
attr-gnu-4-40.d
attr-gnu-4-41.d
attr-gnu-4-42.d
attr-gnu-4-43.d
attr-gnu-4-44.d
attr-gnu-4-45.d
attr-gnu-4-51.d
branch-misc-1.d
comm-data.exp
dyn-sec64.d
dyn-sec64.ld
dyn-sec64.s
eh-frame1-n32.d
eh-frame1-n64.d
eh-frame1.ld
eh-frame1.s
eh-frame2-n32.d
eh-frame2-n64.d
eh-frame3.d
eh-frame4.d
eh-frame5.d
eh-frame5.ld
eh-frame5.s
ehdr_start-1.ld
ehdr_start-1.nd
ehdr_start-2.ld
ehdr_start-2.nd
ehdr_start-new.s
ehdr_start-o32.s
elf-rel-got-n32-embed.d
elf-rel-got-n32.d
elf-rel-got-n64-embed.d
elf-rel-got-n64-linux.d
elf-rel-got-n64.d
elf-rel-xgot-n32-embed.d
elf-rel-xgot-n32.d
elf-rel-xgot-n64-embed.d
elf-rel-xgot-n64-linux.d
elf-rel-xgot-n64.d
emit-relocs-1.d
emit-relocs-1.ld
emit-relocs-1a.s
emit-relocs-1b.s
export-class-call16-def.s
export-class-call16-n32.dd
export-class-call16-n32.gd
export-class-call16-n32.s
export-class-call16-n64.dd
export-class-call16-n64.gd
export-class-call16-n64.s
export-class-call16-o32-irix.dd
export-class-call16-o32.dd
export-class-call16-o32.gd
export-class-call16-o32.s
export-class-call16.ld
export-class.exp
got-dump-1.d
got-dump-1.ld
got-dump-1.s
got-dump-2.d
got-dump-2.ld
got-dump-2.s
got-page-1.d
got-page-1.ld
got-page-1.s
got-page-2.d
got-page-2.s
got-page-3.d
got-page-3a.s
got-page-3b.s
got-page-3c.s
got-page-4a.d
got-page-4a.got
got-page-4a.s
got-page-4b.d
got-page-4b.got
got-page-4b.s
got-page-5.d
got-page-5.got
got-page-5.s
got-page-6.d
got-page-6.got
got-page-6.s
got-page-7.d
got-page-7.got
got-page-7a.s
got-page-7b.s
got-page-7c.s
got-page-7d.s
got-page-7e.s
got-vers-1.dd
got-vers-1.rd
got-vers-1.sd
got-vers-1.ver
got-vers-1a.s
got-vers-1b.s
gp-hidden-64.rd
gp-hidden-lib-64.rd
gp-hidden-lib.rd
gp-hidden-lib.s
gp-hidden-ver-64.rd
gp-hidden-ver.rd
gp-hidden-ver.s
gp-hidden-ver.ver
gp-hidden.rd
gp-hidden.s
gp-hidden.sd
hash1.s
hash1a.d
hash1b.d
hash1c.d
jalbal.d
jalbal.s
jaloverflow-2.d
jaloverflow-2.s
jaloverflow.d
jaloverflow.s
jalr3.dd
jalr3.ld
jalx-1.d
jalx-1.ld
jalx-1.s
jalx-2-ex.s
jalx-2-main.s
jalx-2-printf.s
jalx-2.dd
jalx-2.ld
jr-to-b-1.d
jr-to-b-1.s
jr-to-b-2.d
jr-to-b-2.s
jr.s
mips-32-export-class.rd
mips-32-export-class.xd
mips-64-export-class.rd
mips-64-export-class.xd
mips-dyn.ld
mips-elf-flags.exp
mips-elf.exp
mips-lib.ld
mips16-1.d
mips16-1a.s
mips16-1b.s
mips16-and-micromips.d
mips16-call-global-1.s
mips16-call-global-2.s
mips16-call-global-3.s
mips16-call-global.d
mips16-hilo-n32.d
mips16-hilo.d
mips16-hilo.ld
mips16-hilo.s
mips16-intermix-1.s
mips16-intermix-2.s
mips16-intermix.d
mips16-local-stubs-1.d
mips16-local-stubs-1.s
mips16-pic-1-dummy.s
mips16-pic-1.dd
mips16-pic-1.gd
mips16-pic-1.inc
mips16-pic-1.ld
mips16-pic-1a.s
mips16-pic-1b.s
mips16-pic-2.ad
mips16-pic-2.dd
mips16-pic-2.gd
mips16-pic-2.nd
mips16-pic-2.rd
mips16-pic-2a.s
mips16-pic-2b.s
mips16-pic-3.dd
mips16-pic-3.gd
mips16-pic-3.inc
mips16-pic-3.rd
mips16-pic-3a.s
mips16-pic-3b.s
mips16-pic-4.ver
mips16-pic-4a.dd
mips16-pic-4a.gd
mips16-pic-4a.nd
mips16-pic-4a.s
mips16-pic-4b.dd
mips16-pic-4b.s
mips16-pic-4c.s
mode-change-error-1.d
mode-change-error-1a.s
mode-change-error-1b.s
multi-got-1-1.s
multi-got-1-2.s
multi-got-1.d
multi-got-hidden-1.d
multi-got-hidden-1.s
multi-got-hidden-2.d
multi-got-hidden-2.s
multi-got-no-shared-1.s
multi-got-no-shared-2.s
multi-got-no-shared.d
no-shared-1-n32.d
no-shared-1-n64.d
no-shared-1-n64.s
no-shared-1-o32.d
no-shared-1-o32.s
no-shared-1.ld
pic-and-nonpic-1-rel.dd
pic-and-nonpic-1-rel.nd
pic-and-nonpic-1.dd
pic-and-nonpic-1.ld
pic-and-nonpic-1.nd
pic-and-nonpic-1a.s
pic-and-nonpic-1b.s
pic-and-nonpic-2.d
pic-and-nonpic-2a.s
pic-and-nonpic-2b.s
pic-and-nonpic-3-error.d
pic-and-nonpic-3a.dd
pic-and-nonpic-3a.gd
pic-and-nonpic-3a.ld
pic-and-nonpic-3a.s
pic-and-nonpic-3a.sd
pic-and-nonpic-3b.ad
pic-and-nonpic-3b.dd
pic-and-nonpic-3b.gd
pic-and-nonpic-3b.ld
pic-and-nonpic-3b.nd
pic-and-nonpic-3b.pd
pic-and-nonpic-3b.rd
pic-and-nonpic-3b.s
pic-and-nonpic-3b.sd
pic-and-nonpic-4-error.d
pic-and-nonpic-4a.s
pic-and-nonpic-4b.ad
pic-and-nonpic-4b.dd
pic-and-nonpic-4b.gd
pic-and-nonpic-4b.ld
pic-and-nonpic-4b.nd
pic-and-nonpic-4b.rd
pic-and-nonpic-4b.s
pic-and-nonpic-4b.sd
pic-and-nonpic-5a.s
pic-and-nonpic-5b.ad
pic-and-nonpic-5b.dd
pic-and-nonpic-5b.gd
pic-and-nonpic-5b.ld
pic-and-nonpic-5b.nd
pic-and-nonpic-5b.pd
pic-and-nonpic-5b.rd
pic-and-nonpic-5b.s
pic-and-nonpic-5b.sd
pic-and-nonpic-6-n32.ad
pic-and-nonpic-6-n32.dd
pic-and-nonpic-6-n32.gd
pic-and-nonpic-6-n32.nd
pic-and-nonpic-6-n32.pd
pic-and-nonpic-6-n32.rd
pic-and-nonpic-6-n32.sd
pic-and-nonpic-6-n32a.s
pic-and-nonpic-6-n32b.s
pic-and-nonpic-6-n32c.s
pic-and-nonpic-6-n64.ad
pic-and-nonpic-6-n64.dd
pic-and-nonpic-6-n64.gd
pic-and-nonpic-6-n64.nd
pic-and-nonpic-6-n64.pd
pic-and-nonpic-6-n64.rd
pic-and-nonpic-6-n64.sd
pic-and-nonpic-6-n64a.s
pic-and-nonpic-6-n64b.s
pic-and-nonpic-6-n64c.s
pic-and-nonpic-6-o32.ad
pic-and-nonpic-6-o32.dd
pic-and-nonpic-6-o32.gd
pic-and-nonpic-6-o32.nd
pic-and-nonpic-6-o32.pd
pic-and-nonpic-6-o32.rd
pic-and-nonpic-6-o32.sd
pic-and-nonpic-6-o32a.s
pic-and-nonpic-6-o32b.s
pic-and-nonpic-6-o32c.s
pic-and-nonpic-6.ld
region1.d
region1.t
region1a.s
region1b.s
rel32-n32.d
rel32-o32.d
rel32.s
rel64.d
rel64.s
relax-jalr-n32-shared.d
relax-jalr-n32.d
relax-jalr-n64-shared.d
relax-jalr-n64.d
relax-jalr.s
reloc-1-n32.d
reloc-1-n64.d
reloc-1-rel.d
reloc-1a.s
reloc-1b.s
reloc-2.d
reloc-2.ld
reloc-2a.s
reloc-2b.s
reloc-3-n32.d
reloc-3.d
reloc-4.d
reloc-4.s
reloc-5.d
reloc-5.s
reloc-6a.s
reloc-6b.s
reloc-estimate-1.d
reloc-estimate-1.ld
reloc-estimate-1a.s
reloc-estimate-1b.s
reloc-merge-lo16.d
reloc-merge-lo16.ld
reloc-merge-lo16.s
stub-dynsym-1-2fe80.d
stub-dynsym-1-7fff.d
stub-dynsym-1-8000.d
stub-dynsym-1-10000.d
stub-dynsym-1-fff0.d
stub-dynsym-1.ld
stub-dynsym-1.s
textrel-1.d
textrel-1.s
tls-hidden2-got.d
tls-hidden2.d
tls-hidden2a.s
tls-hidden2b.s
tls-hidden3.d
tls-hidden3.got
tls-hidden3.ld
tls-hidden3.r
tls-hidden3a.s
tls-hidden3b.s
tls-hidden4.got
tls-hidden4.r
tls-hidden4a.s
tls-hidden4b.s
tls-multi-got-1-1.s
tls-multi-got-1-2.s
tls-multi-got-1.d
tls-multi-got-1.got
tls-multi-got-1.r
tlsbin-o32.d
tlsbin-o32.got
tlsbin-o32.s
tlsdyn-o32-1.d
tlsdyn-o32-1.got
tlsdyn-o32-2.d
tlsdyn-o32-2.got
tlsdyn-o32-2.s
tlsdyn-o32-3.d
tlsdyn-o32-3.got
tlsdyn-o32.d
tlsdyn-o32.got
tlsdyn-o32.s
tlslib-hidden.ver
tlslib-o32-hidden.got
tlslib-o32-ver.got
tlslib-o32.d
tlslib-o32.got
tlslib-o32.s
tlslib.ver
undefined.d
undefined.s
vxworks-forced-local-1.d
vxworks-forced-local-1.s
vxworks-forced-local-1.ver
vxworks1-lib.dd
vxworks1-lib.nd
vxworks1-lib.rd
vxworks1-lib.s
vxworks1-lib.td
vxworks1-static.d
vxworks1.dd
vxworks1.ld
vxworks1.rd
vxworks1.s
vxworks2-static.sd
vxworks2.s
vxworks2.sd