Commit Graph

1237 Commits

Author SHA1 Message Date
H.J. Lu 22d5e33918 bfd/
2003-05-20  Jakub Jelinek  <jakub@redhat.com>

	* elflink.h (elf_link_output_extsym): Only issue error about !=
	STV_DEFAULT symbols if they are bfd_link_hash_undefined.

2003-05-20  H.J. Lu <hongjiu.lu@intel.com>

	* elflink.c (_bfd_elf_merge_symbol): Check ELF_LINK_DYNAMIC_DEF
	when removing the old definition for symbols with non-default
	visibility.

ld/testsuite/

2003-05-20  Jakub Jelinek  <jakub@redhat.com>

	* ld-elfvsb/common.c: New file.
	* ld-elfvsb/elfvsb.exp: Add common.

2003-05-20  H.J. Lu <hongjiu.lu@intel.com>

	* ld-elfvsb/sh3.c: New file.
	* ld-elfvsb/test.c: Likewise.

	* ld-elfvsb/elfvsb.exp: Add new weak hidden symbol tests.
2003-05-20 14:35:01 +00:00
Nick Clifton 80c7c40aef Replace i[3456]86 with i[3-7]86 2003-05-16 16:30:27 +00:00
H.J. Lu b765d4e375 2003-05-15 H.J. Lu <hongjiu.lu@intel.com>
* config/default.exp (gcc_ld_flag): New. Make the newly built
	linker available to gcc.
	* lib/ld-lib.exp (default_ld_simple_link): Pass $gcc_ld_flag
	to gcc.

	* ld-elfvers/vers.exp: Use "ld_simple_link $CC" to build shared
	libraries.
	* ld-elfvsb/elfvsb.exp: Likewise.
	* ld-elfweak/elfweak.exp: Likewise.
	* ld-shared/shared.exp: Likewise.

	* ld-elfvers/vers.exp: Use "-Wl,-rpath,." to build shared
	libraries.
	* ld-elfvsb/elfvsb.exp: Likewise.

	* ld-elfvsb/elfvsb.exp: Remove xfail for powerpc-*-linux*.

	* ld-elfweak/elfweak.exp: Use PIC for shared libraries.
2003-05-16 05:04:34 +00:00
H.J. Lu a6c0916fe9 2003-05-15 H.J. Lu <hongjiu.lu@intel.com>
* emulparams/elf64_ia64.sh: Don't set COMMONPAGESIZE for now.
2003-05-15 14:56:33 +00:00
Stephane Carrez 99573a9826 * ld-m68hc11/link-hcs12.d: New test.
* ld-m68hc11/link-hcs12.s: New file.
	* ld-m68hc11/link-hc12.s: New file.
2003-05-13 19:11:45 +00:00
H.J. Lu 5c449c3fa6 2003-05-13 H.J. Lu <hongjiu.lu@intel.com>
* ld-elfweak/elfweak.exp: Fix typo.
2003-05-13 16:13:28 +00:00
Nick Clifton 59758b1cc8 Run on sh[34]*-*-linux*. 2003-05-13 11:39:58 +00:00
Hans-Peter Nilsson 5ff4a71ef3 * ld-mmix/b-fixo2.d, ld-mmix/bpo-18.d, ld-mmix/bpo-18m.d,
ld-mmix/loc4.d, ld-mmix/loc4m.d, ld-mmix/loc6.d, ld-mmix/loc6m.d,
	ld-mmix/locdo-1.d, ld-mmix/sec-1.d, ld-mmix/sec-2.d,
	ld-mmix/sec-3.d, ld-mmix/sec-4.d, ld-mmix/sec-5.d,
	ld-mmix/sec-7m.d, ld-mmix/sec-8m.d, ld-mmix/spec802.d,
	ld-mmix/spec803.d, ld-mmix/spec804.d, ld-mmix/spec805.d,
	ld-mmix/spec806.d, ld-mmix/spec807.d, ld-mmix/spec808.d: Tweak for
	objdump no longer truncating dump addresses.
2003-05-12 05:45:38 +00:00
Daniel Jacobowitz df9a14a132 Add missing changelog entry for last commit:
* configure.tgt: Add armeb-elf and arm*b-*-linux-gnu.
2003-05-09 20:05:46 +00:00
Daniel Jacobowitz d2012d1718 * Makefile.am (ALL_EMULATIONS): Add earmelfb.o and earmelfb_linux.o.
(earmelfb.c, earmelfb_linux.c): New rules.
	* Makefile.in: Regenerated.
	* emulparams/armelfb.sh, emulparams/armelfb_linux.sh: New files.
2003-05-09 20:05:04 +00:00
Nick Clifton 3cd9fdd546 oops - update date in ChangeLog entry 2003-05-09 16:13:45 +00:00
Nick Clifton 661849791b Default to generating a fatal error message if a loadable section is not
allocated to a memory region when regions are defined.
2003-05-09 16:12:07 +00:00
Martin Schwidefsky 4648dfcf5b * ld-elfvsb/elf-offset.ld: Add .rel.eh_frame and .rela.eh_frame
to linker script.
	* ld-elfvsb/elfvsb.exp (visibility_run): Add setup_xfails for s390x.
	* ld-selective/selective.exp: Disable for s390 and s390x.
	* ld-shared/elf-offset.ld: Add .rel.eh_frame and .rela.eh_frame
	to linker script.
	* ld-shared/shared.exp (shared_test): Add setup_xfails for s390x.
	* ld-undefined/undefined.exp (checkund): Remove setup_xfail for s390x.
2003-05-09 15:35:09 +00:00
Alan Modra efdffbe268 * Makefile.am (em68hc11elf.c): Correct dependencies.
(em68hc11elfb.c, em68hc12elf.c, em68hc12elfb.c): Likewise.
	* Makefile.in: Regenerate.
	* emultempl/elf32.em (find_exp_assignment): Adjust for changed
	bfd_elf_record_link_assignment name.
2003-05-09 02:28:01 +00:00
H.J. Lu 54c9a60f31 2003-05-08 H.J. Lu <hongjiu.lu@intel.com>
* ld-elfvers/vers.exp: Add vers27d4 and vers27d5 to test
	versioned reference for hidden symbol.

	* ld-elfvers/vers27d4.dsym: New file.
	* ld-elfvers/vers27d4.ver: Likewise.
2003-05-08 19:51:48 +00:00
H.J. Lu 95b4a16ea5 2003-05-07 H.J. Lu <hongjiu.lu@intel.com>
* ld-elfvers/vers27d3.c (__start): New.
	(start): New.
2003-05-08 07:01:11 +00:00
H.J. Lu 0ae911fecd 2003-05-07 H.J. Lu <hongjiu.lu@intel.com>
* ld-elfvers/vers.exp (build_binary): Support build exeutable.
	(build_binary): Renamed from ...
	(build_vers_lib): This.
	(build_vers_lib_no_pic): Updated.
	(build_vers_lib_pic): Likewise.
	Add vers27d1, vers27d2 and vers27d3 to test versioned
	definition for hidden symbol referenced by a DSO.

	* ld-elfvers/vers27d.dsym: New file.
	* ld-elfvers/vers27d.sym: Likewise.
	* ld-elfvers/vers27d.ver: Likewise.
	* ld-elfvers/vers27d1.c: Likewise.
	* ld-elfvers/vers27d2.c: Likewise.
	* ld-elfvers/vers27d3.c: Likewise.
2003-05-08 05:10:47 +00:00
Andreas Schwab 3a8260b266 * ld-elfvsb/elfvsb.exp: Run dump tests even when cross
compiling.
2003-05-07 09:21:27 +00:00
Alexandre Oliva 697380b39c * config/default.exp (gcc_gas_flags): Force ABI to n32 on
mips64-linux.
* ld-elf/merge.d: Xfail on mips64*-linux-gnu*.
* ld-mips-elf/mips-elf-flags.exp (ldemul): Set to o32-compatible
on mips-sgi-irix6*, mips64-linux-gnu and mips64el-linux-gnu.
(good_combination, bad_combination): Use it.
Add -32 or -mabi=o64 wherever the ABI was formerly implied.
2003-05-07 05:08:02 +00:00
Alexandre Oliva 8aae64e67e * ldmain.h (overflow_cutoff_limit): Declare.
* ldmain.c (overflow_cutoff_limit): Define, initialized to 10.
(reloc_overflow): Limit error messages based on it.
* lexsup.c (parse_args) <OPTION_VERBOSE>: Set cutoff to
unlimited.
2003-05-07 04:14:57 +00:00
H.J. Lu 08d5f1b40e 2003-05-06 H.J. Lu <hjl@gnu.org>
* ld-elfvers/vers.exp (objdump_versionstuff): Support comment
	in expected version file.

	* ld-elfvers/vers25b.c: Add a line of comment.
	* ld-elfvers/vers25b.dsym: Likwise.
	* ld-elfvers/vers25b.ver: Likwise.
	* ld-elfvers/vers26b.dsym: Likwise.
	* ld-elfvers/vers26b.ver: Likwise.
	* ld-elfvers/vers27b.dsym: Likwise.
	* ld-elfvers/vers27b.ver: Likwise.
	* ld-elfvers/vers27c.c: Likwise.
	* ld-elfvers/vers27c.dsym: Likwise.
	* ld-elfvers/vers27c.ver: Likwise.
2003-05-06 15:55:09 +00:00
Alan Modra 5c7966bf11 * ldlex.l: Accept C style comments in version scripts. 2003-05-05 06:28:00 +00:00
H.J. Lu ef5aade5ac bfd/
2003-05-04  H.J. Lu <hjl@gnu.org>

	* elf32-i386.c (allocate_dynrelocs): Don't allocate dynamic
	relocation entries for weak undefined symbols with non-default
	visibility.
	(elf_i386_relocate_section): Initialize the GOT entries and
	skip R_386_32/R_386_PC32 for weak undefined symbols with
	non-default visibility.

	* elfxx-ia64.c (allocate_fptr): Don't allocate function
	descriptors for weak undefined symbols with non-default
	visibility.
	(allocate_dynrel_entries): Don't allocate relocation entries
	for symbols resolved to 0.
	(set_got_entry): Don't install dynamic relocation for weak
	undefined symbols with non-default visibility.
	(set_pltoff_entry): Likewise.

	* elflink.h (elf_fix_symbol_flags): Hide weak undefined symbols
	with non-default visibility.
	(elf_link_output_extsym): Don't make weak undefined symbols
	with non-default visibility dynamic.

ld/testsuite/

2003-05-04  H.J. Lu <hjl@gnu.org>

	* ld-elfvsb/main.c: Updated.
	* ld-elfvsb/sh1.c: Likewise.
2003-05-05 05:46:53 +00:00
H.J. Lu 839efa267f Add missing entries for the last checkin. 2003-05-05 03:44:59 +00:00
H.J. Lu c424e0e973 bfd/
2003-05-04  H.J. Lu <hjl@gnu.org>

	* elflink.h (elf_merge_symbol): Correctly handle weak definiton.

ld/testsuite/

2003-05-04  H.J. Lu <hjl@gnu.org>

	* ld-elfvers/vers18.dsym: Updated for weak definiton change.
	* ld-elfvers/vers18.ver: Likewise.
	* ld-elfvers/vers19.ver: Likewise.

	* ld-elfweak/elfweak.exp: Remove xfail.
2003-05-05 03:33:09 +00:00
Alexandre Oliva 508073f77f * ld-mips-elf/multi-got-1.d: Force into big-endian mode.
Turn relocation offsets into regexps.
2003-05-04 21:06:35 +00:00
H.J. Lu 95aa61ce02 2003-05-03 H.J. Lu <hjl@gnu.org>
* ld-elfvers/vers.exp: Add vers27a, vers27b, vers27c1 and
	vers27c2 to test versioned definition vs. hidden definition in
	different files.

	* ld-elfvers/vers27a.c: New file.
	* ld-elfvers/vers27a.dsym: Likewise.
	* ld-elfvers/vers27a.map: Likewise.
	* ld-elfvers/vers27a.ver: Likewise.
	* ld-elfvers/vers27b.c: Likewise.

	* ld-elfvers/vers27b.dsym: New empty file.
	* ld-elfvers/vers27b.ver: Likwise.
	* ld-elfvers/vers27c.c: Likwise.
	* ld-elfvers/vers27c.dsym: Likwise.
	* ld-elfvers/vers27c.ver: Likwise.
2003-05-03 16:51:05 +00:00
Nick Clifton 2968149b03 Fix xstormy16's handling of pc-relative relocs against defined symbols. 2003-05-02 12:42:13 +00:00
Andreas Jaeger fcd06cfe45 * ld-elfvers/vers.exp (build_exec): Disable vers26b3 on x86-64-linux. 2003-05-02 08:16:25 +00:00
H.J. Lu bf57c3c94d gas/
2003-04-30  H.J. Lu <hjl@gnu.org>

	* config/tc-ia64.c (md_section_align): Deleted.

	* config/tc-ia64.h (SUB_SEGMENT_ALIGN): New.
	(md_section_align): New.

gas/testsuite/

2003-04-29  H.J. Lu <hjl@gnu.org>

	* gas/ia64/ia64.exp: Add align.

	* gas/ia64/align.d: New file.
	* gas/ia64/align.s: Likewise.

	* ia64/dependency-1.d: Remove the padding.

ld/testsuite/

2003-04-29  H.J. Lu <hjl@gnu.org>

	* ld-ia64/tlsbin.dd: Updated.
	* ld-ia64/tlsbin.rd: Likewise.
	* ld-ia64/tlsbin.sd: Likewise.
	* ld-ia64/tlsbin.td: Likewise.
	* ld-ia64/tlspic.rd: Likewise.
	* ld-ia64/tlspic.sd: Likewise.
	* ld-ia64/tlspic.td: Likewise.
2003-05-01 00:53:39 +00:00
Joern Rennecke 5ad8914f65 * ld-selective/3.cc (start): New function.
* ld-selective/4.cc: Likewise.
	* ld-selective/5.cc: Likewise.
2003-04-30 12:07:19 +00:00
H.J. Lu c7996ad628 bfd/
2003-04-28  H.J. Lu <hjl@gnu.org>

	* elfxx-ia64.c (elfNN_ia64_relax_section): Relax ldxmov during
	the relax finalize pass.

	* section.c (struct sec): Add need_finalize_relax and remove
	flag11.
	(STD_SECTION): Update struct sec initializer.
	* bfd-in2.h: Regenerated.

include/

2003-04-28  H.J. Lu <hjl@gnu.org>

	* bfdlink.h (bfd_link_info): Add relax_finalizing.

ld/

2003-04-28  H.J. Lu <hjl@gnu.org>

	* ldlang.c (lang_process): Add the relax finalize pass.

	* ldmain.c (main): Initialize link_info.relax_finalizing to
	FALSE.
2003-04-29 01:53:46 +00:00
H.J. Lu f006af20ee bfd/
2003-04-28  H.J. Lu <hjl@gnu.org>

	* elflink.h (elf_merge_symbol): Call elf_backend_copy_indirect_symbol
	to copy any information related to dynamic linking when we flip
	the indirection.

ld/testsuite/

2003-04-28  H.J. Lu <hjl@gnu.org>

	* ld-elfvers/vers.exp (picflag): Set PIC flag for compiler.
	(build_vers_lib): Support PIC.
	(build_vers_lib_no_pic): New. Change all calls to build_vers_lib
	to build_vers_lib_no_pic.
	(build_vers_lib_pic): New.
	Add tests vers26a, vers26b1, vers26b2 and vers26b3 for versioned
	definition vs. normal definition in different files.

	* ld-elfvers/vers26a.c: New file.
	* ld-elfvers/vers26a.dsym: Likewise.
	* ld-elfvers/vers26a.map: Likewise.
	* ld-elfvers/vers26a.ver: Likewise.
	* ld-elfvers/vers26b.c: Likewise.

	* ld-elfvers/vers26b.dsym: New empty file.
	* ld-elfvers/vers26b.ver: Likewise.
2003-04-28 16:58:01 +00:00
H.J. Lu 1b1fe8feb3 bfd/
2003-04-27  H.J. Lu <hjl@gnu.org>

	* elf-bfd.h (ELF_LINK_DYNAMIC_DEF): New.
	(ELF_LINK_DYNAMIC_WEAK): New.

	* elflink.h (elf_merge_symbol): Add one argument to indicate if
	a symbol should be skipped. Ignore definitions in dynamic
	objects for symbols with non-default visibility.
	(elf_add_default_symbol): Adjusted.
	(elf_link_add_object_symbols): Check if a symbol should be
	skipped. Don't merge the visibility field with the one from
	a dynamic object.
	(elf_link_check_versioned_symbol): Use undef_bfd.
	(elf_link_output_extsym): Warn if a forced local symbol is
	referenced from dynamic objects. Make non-weak undefined symbol
	with non-default visibility a fatal error.

ld/testsuite/

2003-04-27  H.J. Lu <hjl@gnu.org>

	* ld-elfvsb/elfvsb.dat: Updated.
	* ld-elfvsb/elfvsb.exp: Likewise.
	* ld-elfvsb/main.c: Likewise.
	* ld-elfvsb/sh1.c: Likewise.
	* ld-elfvsb/sh2.c: Likewise.
2003-04-28 03:31:36 +00:00
Stephane Carrez d204f4c0f9 PR savannah/3331:
* elf32-m68hc11.c (m68hc11_elf_relax_section): Clear prev_insn_group
	when we couldn't relax something.
	* ld-m68hc11/bug-3331.d: New test.
	* ld-m68hc11/bug-3331.s: New file.
2003-04-26 11:53:36 +00:00
Joern Rennecke 635f10624f * lib/ld-lib.exp (big_or_little_endian): Also check for -mb and -ml. 2003-04-25 14:23:31 +00:00
H.J. Lu 09bf97202b 2003-04-24 J"orn Rennecke <joern.rennecke@superh.com>
* ld-elfcomm/elfcomm.exp: Allow symbols to have '_' prepended.
2003-04-24 21:00:06 +00:00
Roland McGrath d145330dd9 . 2003-04-24 17:19:55 +00:00
Roland McGrath d038301c19 2003-04-24 Roland McGrath <roland@redhat.com>
* ldgram.y (phdr_type): Grok PT_TLS and PT_GNU_EH_FRAME names.
	If a name string is unknown, give an error rather than crashing later.
2003-04-24 17:15:25 +00:00
Nick Clifton 0dbc2a48b4 oops - omitted from previous delta 2003-04-24 15:25:24 +00:00
Nick Clifton 8d9cd6b19b Add support for h8300hn and h8300sn 2003-04-24 12:36:08 +00:00
Kaz Kojima 267fb3c1ce * elf32-sh.c (tpoff): New.
(struct elf_sh_dyn_relocs): Remove tls_tpoff32.
	(WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
        (allocate_dynrelocs): Don't make unnecessary dynamic TLS
	relocations.  Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses.
        (sh_elf_relocate_section): Likewise. Remove unnecessary tests.
	(dtpoff_base): Fix wrong indentation.
	(sh_elf_check_relocs): Don't set DF_STATIC_TLS flag with non-TLS
	relocations.  Don't set tls_tpoff32 flag.  Don't make unnecessary
	R_SH_TLS_TPOFF32 relocations.

	* ld-sh/tlsbin-1.d, ld-sh/tlsbin-2.d, ld-sh/tlsbin-3.d,
	ld-sh/tlstpoff-1.d, ld-sh/tlstpoff-2.d: Update for removing
	unnecessary TLS relocs.
2003-04-24 05:19:09 +00:00
H.J. Lu 0f0569c4ae include/
* bfdlink.h (bfd_link_callbacks): Add error_handler.

ld/

	* ldmain.c (link_callbacks): Initialize error_handler.

	* ldmisc.c (error_handler): New function.

	* ldmisc.h (error_handler): New prototype.
2003-04-24 01:43:33 +00:00
Joern Rennecke ef23021837 bfd:
* archures.c (enum bfd_architecture): Amend comment to refer to SuperH.
        * cpu-sh.c: Likewise.
        * elf32-sh.c: Likewise.
        * reloc.c (bfd_reloc_code_real): Likewise.
        * elf32-sh64-com.c: Change comment to refer to SuperH.
        * elf32-sh64.c: Likewise.
        * elf64-sh64.c: Likewise.
        * bfd-in2.h (enum bfd_architecture): Regenerate.
binutils:
        * readelf.c (get_machine_name) <EM_SH>: Amend return value
        to refer to SuperH.
gas:
        * config/tc-sh.c: Amend comment to refer to SuperH.
        * config/tc-sh.h: Likewise.
        (LISTING_HEADER): Amend to refer to SuperH.
        * config/tc-sh64.c: Change comment to refer to SuperH.
        * config/tc-sh64.h (LISTING_HEADER): Change to refer to SuperH.
        * doc/as.texinfo [SH, GENERIC]: Amend / Change to refer to SuperH.
        * doc/c-sh.texi: Amend to refer to SuperH.
        Add SuperH architecture documentation references.
        * doc/c-sh64.texi: Change to refer to SuperH.
include/elf:
        * common.h (EM_SH): Amend comment to refer to SuperH.
ld/testsuite:
        * ld-sh/sh64/crange3-cmpct.rd (Machine): Change to refer to SuperH.
        * ld-sh/sh64/crange3-media.rd (Machine): Likewise.
2003-04-23 21:09:04 +00:00
H.J. Lu 834216a99a Check in the new files. 2003-04-23 16:40:04 +00:00
H.J. Lu 365f913182 2003-04-23 H.J. Lu <hjl@gnu.org>
* ld-elfvers/vers.exp (objdump_dynsymstuff): Support empty
	files.
	(objdump_versionstuff): Likewise.
	Add tests vers25a, vers25b1 and vers25b2 for versioned
	definition vs. normal definition in different files.

	* ld-elfvers/vers25a.c: New file.
	* ld-elfvers/vers25a.dsym: Likewise.
	* ld-elfvers/vers25a.map: Likewise.
	* ld-elfvers/vers25a.ver: Likewise.

	* ld-elfvers/vers25b.c: New empty file.
	* ld-elfvers/vers25b.dsym: Likewise.
	* ld-elfvers/vers25b.ver: Likewise.
2003-04-23 16:34:39 +00:00
H.J. Lu ab7be2df2a 2003-04-22 H.J. Lu <hjl@gnu.org>
* ld-elfcomm/elfcomm.exp: Support 64bit targets.
2003-04-22 15:00:02 +00:00
Stephane Carrez 6c6532f753 * ld-m68hc11/far-hc11.s: New file.
* ld-m68hc11/far-hc11.d: New test for HC11 trampoline generation.
	* ld-m68hc11/far-hc12.s: New file.
	* ld-m68hc11/far-hc12.d: New test for HC12 trampoline generation.
	* ld-m68hc11/far-hc12.ld: New file.
2003-04-21 13:30:14 +00:00
Stephane Carrez e2cebd4bde * emulparams/m68hc11elf.sh: Use m68hc1xelf.em extra.
* emulparams/m68hc11elfb.sh: Likewise.
	* emulparams/m68hc12elf.sh: Likewise.
	* emulparams/m68hc12elfb.sh: Likewise.
2003-04-21 13:29:05 +00:00
Stephane Carrez 67bb994066 * emultempl/m68hc1xelf.em: New file to generate far trampolines on
68HC11 and 68HC12.
	(LDEMUL_BEFORE_ALLOCATION): Override to gather the trampolines to
	generate.
	(LDEMUL_FINISH): Override to generate the trampolines after gc and
	linker relaxation.
	(LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Override to create the
	stub file for trampolines.
	(PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_LONGOPTS): New options
	--no-trampoline and --bank-window to control the memory bank window.
2003-04-19 08:26:38 +00:00