Commit graph

886 commits

Author SHA1 Message Date
Nick Clifton
5ed6aba41c Fix memory leaks 2003-03-31 18:13:25 +00:00
Nick Clifton
e16bb312f5 Add iWMMXt support 2003-03-25 20:56:01 +00:00
Nick Clifton
3fe38064ba ldmain.c (ld_canon_sysroot, ld_canon_sysroot_len): Define. (main): Initialize them.
ldfile.c: Include pathnames.h. (is_sysrooted_pathname): New. (ldfile_add_library_path): Use it.
  (ldfile_open_file_search): Likewise.  Use IS_ABSOLUTE_PATH.
  Don't search_dirs if given an absolute pathname.
  (ldfile_open_file): Issue error message for sysrooted	absolute pathnames.
2003-03-25 10:29:28 +00:00
Alexandre Oliva
fe6c07ac60 Replace oddly-encoded blank with regular blanks 2003-03-25 00:41:25 +00:00
Nick Clifton
9418ab9c20 Rename the all occurances of C54X to TIC54X. 2003-03-24 15:43:15 +00:00
Andreas Schwab
4f39e30283 * ldfile.c (ldfile_try_open_bfd): Pop lexer start condition after
eof.
2003-03-19 09:56:06 +00:00
Danny Smith
4064c85643 * defilep.y (opt_base): If no number given, set to default
(-1), not 0.
2003-03-18 21:33:43 +00:00
Danny Smith
053c44e1bf * deffilep.y (def_import): Use default extension of "dll"
if no extension provided in parsed IMPORT definition.

	* deffilep.y (def_lex): Revert 2003-03-12 change.
	(dot_name): New id type and rule.
	(expline): Use instead of ID.
	(opt_equal_name): Likewise.
2003-03-13 09:39:09 +00:00
Danny Smith
9be2edc5c4 * deffilep.y (def_lex): Accept '.' as valid non-lead char. 2003-03-12 08:38:16 +00:00
Christopher Faylor
d55b850c07 * configure.tgt: Add NATIVE_LIB_DIRS for cygwin target back after apparent
accidental removal on 2003-01-06.
2003-03-08 03:35:48 +00:00
Nick Clifton
b4275f439a Add new devices x1122 x1132 emulation. 2003-03-04 17:02:40 +00:00
Alexandre Oliva
4ca1b7908a * ldmain.c (set_scripts_dir): Look for relative to TOOLBINDIR as
well.
2003-03-03 20:01:02 +00:00
Alexandre Oliva
e3f2db7fa6 * ldfile.h (struct search_dirs): Added sysrooted field.
* ldlang.h (struct lang_input_statement_struct): Likewise.
* ldfile.c (ldfile_add_library_path): Mark sysrooted paths.
(ldfile_open_file_search): Look for sysrooted filename starting
with / in ld_sysroot instead of in the current directory.  Clear
sysrooted flag if it's found in the current directory.  Set it
from the search directory's sysrooted flag where it is found
otherwise.
* ldlang.c (ldlang_sysrooted_script): New static variable.
(new_afile): Mark search_file_enums as sysrooted if
ldlang_sysrooted_script.
(load_symbols): Set ldlang_sysrooted_script according to the
script's sysrooted field while processing it.
* ld.texinfo: Document INPUT behavior in sysroot.
2003-03-03 20:00:35 +00:00
Christopher Faylor
15c9f67344 * scripttempl/pe.sc: Use PROVIDE with etext, end, _end, 2003-03-03 02:38:10 +00:00
Alan Modra
c279ca3ee9 * emulparams/elf64alpha.sh (EXTRA_EM_FILE): Define.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
	PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES,
	PARSE_AND_LIST_EPILOGUE): Don't define.
	* emultempl/alphaelf.em: New file.
2003-03-02 22:07:10 +00:00
Alan Modra
fcf6587111 * ldemul.c: Include getopt.h.
* emultempl/elf32.em: Include getopt.h earlier.
	* emultempl/ticoff.em: Likewise.
2003-02-28 22:55:11 +00:00
Alan Modra
a060b769bb * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Add combreloc
support when scripts read from files.
2003-02-28 04:46:04 +00:00
Alan Modra
3aa97c5886 * ldemul.c (ldemul_parse_args): Return FALSE by default.
* ldemul.h (struct ld_emulation_xfer_struct): Update parse_args
	comment.
2003-02-28 02:10:06 +00:00
Alan Modra
3bcf55573d * ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
(ldemul_parse_args): Return bfd_boolean.  Formatting.
	* ldemul.h (ldemul_add_options, ldemul_handle_option): Declare.
	(ldemul_parse_args): Adjust.
	(struct ld_emulation_xfer_struct): Add add_options and handle_option.
	Return bfd_boolean from parse_args.
	* lexsup.c (parse_args): Malloc shortopts, longopts and
	really_longopts.  Call ldemul_add_options and ldemul_handle_option.
	* emultempl/aix.em (gld${EMULATION_NAME}_add_options): Split out from
	gld${EMULATION_NAME}_parse_args.
	(gld${EMULATION_NAME}_handle_option): Likewise.
	(ld_${EMULATION_NAME}_emulation): Adjust initializer.
	* emultempl/armcoff.em: As for aix.em, but remove parse_args.
	* emultempl/beos.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/ticoff.em: Likewise.
	* emultempl/elf32.em: Likewise.  Don't duplicate long options either.
	(gld${EMULATION_NAME}_add_sysroot): Prototype.
	* emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
	options.
	* emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/ppc32elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/ppc64elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/armelf_oabi.em (ld_${EMULATION_NAME}_emulation): Adjust
	initializer.
	* emultempl/generic.em: Likewise.
	* emultempl/gld960.em: Likewise.
	* emultempl/gld960c.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/lnk960.em: Likewise.
	* emultempl/m68kcoff.em: Likewise.
	* emultempl/mipsecoff.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* emultempl/vanilla.em: Likewise.
	* emultempl/netbsd.em (gldnetbsd_before_parse): Prototype.
2003-02-28 01:32:31 +00:00
Alexandre Oliva
42644a8920 * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Fix
memory allocation error.
2003-02-26 00:56:14 +00:00
Nick Clifton
0125cdf20c (ld_sysroot): Try to set from TOOLBINDIR too. 2003-02-25 10:32:33 +00:00
Nick Clifton
cf888e70e2 Disable region size checking whilst relaxing sections. 2003-02-21 10:51:24 +00:00
Nick Clifton
36f63dca98 Apply Bob Wilson's linker documenation clean ups. 2003-02-21 10:27:06 +00:00
Alexandre Oliva
715d16565f * configure.in (TARGET_SYSTEM_ROOT): Set default to
${exec_prefix}/${target_alias}/sys-root.  Match explicit
'${exec_prefix}' (in addition to the expansion thereof) as
relocatable.
* configure: Rebuilt.
2003-02-20 23:38:58 +00:00
Alan Modra
8e23b15d1c * ldgram.y (vers_defns): Also recurse with 'EXTERN NAME' patterns.
* ldgram.y (vers_defns): Allow optional trailing semicolon in
	EXTERN NAME block;
2003-02-20 01:02:39 +00:00
Alan Modra
f9e6bfa8dc * emultempl/ppc32elf.em: New file.
* emulparams/elf32ppc.sh (EXTRA_EM_FILE): Define.
	* Makefile.am (eelf32lppc.c): Depend on emultempl/ppc32elf.em.
	(eelf32lppcnto.c): Likewise.
	(eelf32lppcsim.c): Likewise.
	(eelf32ppcnto.c): Likewise.
	(eelf32ppc.c): Likewise.
	(eelf32ppc_fbsd.c): Likewise.
	(eelf32ppcsim.c): Likewise.
	(eelf32ppclinux.c): Likewise.
2003-02-18 06:05:07 +00:00
Alan Modra
9a6c7def26 * ld.texinfo: Remove spaces between @samp and opening brace. 2003-02-18 04:52:21 +00:00
Alan Modra
a015f5eccc * emultempl/ppc64elf.em (ppc_create_output_section_statements): Check
hash creator.
	(ppc_before_allocation): Don't do optimizations if wrong hash table.
	(gld${EMULATION_NAME}_finish): Ditto.
2003-02-17 22:49:24 +00:00
Nick Clifton
ae9a127f86 Fix the behaviour of --allow-shlib-undefined, so that it does what it claims
to do.  Add an inverse switch.  Update the documentation.
2003-02-17 18:24:40 +00:00
Nick Clifton
7e4482c1bb Fix spelling typo in previous delta 2003-02-11 18:03:44 +00:00
Nick Clifton
db6a591064 Add new data anchors defenitions. 2003-02-11 18:02:55 +00:00
Nick Clifton
42b5d0eaa9 Add support for configuring *-*-kaos targets. 2003-02-11 13:47:08 +00:00
Dave Anglin
cfbd8dfaa6 * hppaelf.em (group_size): Change default back to 1. 2003-02-11 02:20:30 +00:00
Alan Modra
e5096e3f2d * emultempl/ppc64elf.em: Add "no-tls-optimize" option and support code. 2003-02-09 04:36:44 +00:00
Dave Anglin
5e1e138d28 * hppaelf.em (group_size): Change default to -1. 2003-02-07 15:55:49 +00:00
Nick Clifton
ef5bdbd1fe Add duplicate entry for no-pipeline-knowledge. This will prevent the getopt
package from thinking that there are any shorter abbreviations for
--no-pipeline-knowledge.
2003-02-07 15:32:22 +00:00
Jakub Jelinek
d460ab5823 * genscripts.sh (LIB_PATH): Don't append LIBPATH_SUFFIX to paths
which already have it.  Avoid duplicates.
2003-02-07 14:21:03 +00:00
Jakub Jelinek
cad91d28c9 * emulparams/elf64_s390.sh (LIBPATH_SUFFIX): Set to 64.
* emulparams/elf_x86_64.sh (LIBPATH_SUFFIX): Likewise.
	* emulparams/elf64_sparc.sh (LIBPATH_SUFFIX): Set instead of suffix.
2003-02-06 14:45:04 +00:00
Alan Modra
e0468e59ad * emultempl/ppc64elf.em (ppc_before_allocation): Size sections then
call ppc64_elf_tls_optimize.
2003-02-04 14:51:35 +00:00
Daniel Jacobowitz
3dc16cab3d * emultempl/elf32.em: Move gld${EMULATION_NAME}_add_sysroot
outside of GNU/Linux conditional.
2003-02-03 17:47:23 +00:00
Nick Clifton
a35bc64f56 Add code to prevent importing a dll multiple times. 2003-01-28 11:39:43 +00:00
Alan Modra
f0abc2a11f include/elf/ChangeLog
* sh.h: Split out various bits to bfd/elf32-sh64.h.

include/opcode/ChangeLog
	* m68hc11.h (cpu6812s): Define.

bfd/ChangeLog
	* elf-bfd.h (struct bfd_elf_section_data): Remove tdata.  Change
	dynindx to an int.  Rearrange for better packing.
	* elf.c (_bfd_elf_new_section_hook): Don't alloc if already done.
	* elf32-mips.c (bfd_elf32_new_section_hook): Define.
	* elf32-sh64.h: New.  Split out from include/elf/sh.h.
	(struct _sh64_elf_section_data): New struct.
	(sh64_elf_section_data): Don't dereference sh64_info (was tdata).
	* elf32-sh64-com.c: Include elf32-sh64.h.
	* elf32-sh64.c: Likewise.
	(sh64_elf_new_section_hook): New function.
	(bfd_elf32_new_section_hook): Define.
	(sh64_elf_fake_sections): Adjust for sh64_elf_section_data change.
	(sh64_bfd_elf_copy_private_section_data): Likewise.
	(sh64_elf_final_write_processing): Likewise.
	* elf32-sparc.c (struct elf32_sparc_section_data): New.
	(elf32_sparc_new_section_hook): New function.
	(SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete.
	(sec_do_relax): Define.
	(elf32_sparc_relax_section): Adjust to use sec_do_relax.
	(elf32_sparc_relocate_section): Likewise.
	* elf64-mips.c (bfd_elf64_new_section_hook): Define.
	* elf64-mmix.c (struct _mmix_elf_section_data): New.
	(mmix_elf_section_data): Define.  Use throughout file.
	(mmix_elf_new_section_hook): New function.
	(bfd_elf64_new_section_hook): Define.
	* elf64-ppc.c (struct _ppc64_elf_section_data): New.
	(ppc64_elf_section_data): Define.  Use throughout.
	(ppc64_elf_new_section_hook): New function.
	(bfd_elf64_new_section_hook): Define.
	* elf64-sparc.c (struct sparc64_elf_section_data): New.
	(sparc64_elf_new_section_hook): New function.
	(SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete.
	(sec_do_relax): Define.
	(sparc64_elf_relax_section): Adjust to use sec_do_relax.
	(sparc64_elf_relocate_section): Likewise.
	(bfd_elf64_new_section_hook): Define.
	* elfn32-mips.c (bfd_elf32_new_section_hook): Define.
	* elfxx-mips.c (struct _mips_elf_section_data): New.
	(mips_elf_section_data): Define.  Use throughout.
	(_bfd_mips_elf_new_section_hook): New function.
	(mips_elf_create_got_section): Don't alloc used_by_bfd.
	* elfxx-mips.h (_bfd_mips_elf_new_section_hook): Declare.
	* elfxx-target.h (bfd_elfNN_new_section_hook): Add #ifndef.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.

opcodes/ChangeLog
	* sh64-dis.c: Include elf32-sh64.h.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.

gas/ChangeLog
	* config/tc-sh64.c (shmedia_frob_section_type): Adjust for changed
	sh64_elf_section_data.
	* config/tc-sh64.h: Include elf32-sh64.h.
	* config/tc-m68hc11.c: Don't include stdio.h.
	(md_show_usage): Fix missing continuation.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.

ld/ChangeLog
	* emultempl/sh64elf.em: Include elf32-sh64.h.
	(sh64_elf_${EMULATION_NAME}_before_allocation): Adjust for changed
	sh64_elf_section_data.
	(sh64_elf_${EMULATION_NAME}_after_allocation): Likewise.
2003-01-23 11:51:35 +00:00
Nick Clifton
489d0400af Remove an extra "i" in --dll-search-prefix.
Move a cross-80th-column-margin "an" to the next line.
2003-01-23 09:30:44 +00:00
Nick Clifton
dd1e43b69f fix typo in previous entry 2003-01-21 17:11:56 +00:00
Nick Clifton
019ac0e357 Fix generation of tic3xcoff_onchip.c 2003-01-21 17:09:47 +00:00
Nick Clifton
da896d3fcc Add support for i386-*-aros triple. 2003-01-21 16:08:31 +00:00
Svein Seldal
0da35f8be8 Updates for fixing tic4x arch tagging of its object files.
* bfd/coffcode.h (coff_set_flags): Added get/set arch hooks.
	* include/coff/tic4x.h (TICOFF_TARGET_MACHINE_GET): Fixed define bug
	* include/coff/ti.h (TICOFF_TARGET_MACHINE_GET): Added macros
	* ld/Makefile.am: Added etic3xcoff.o and etic4xcoff_onchip.o
	* ld/Makefile.in: Regenerate
	* ld/configure.tgt: Added extra target emulations
	* ld/emulparams/tic3xcoff.sh: Remove old settings
	* ld/emulparams/tic4xcoff.sh: Ditto
	* ld/emulparams/tic3xcoff-onchip.sh: Added new
	* ld/scripttempl/tic4xcoff.sc: Revise and combine both c3x and c4x
	* ld/scripttempl/tic3xcoff.sc: Remove
2003-01-20 22:34:39 +00:00
Andreas Jaeger
ae42d3a94d * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Do not
skip ':'.
2003-01-17 10:36:49 +00:00
Alan Modra
6f78fb71bb * Makefile.in: Regenerate. 2003-01-16 04:11:53 +00:00
Nick Clifton
0a5d968ed1 (node WIN32): Some clarifications and formatting fixups. 2003-01-14 11:25:58 +00:00