Commit Graph

2489 Commits

Author SHA1 Message Date
Alan Modra
264b62058b * ldlang.c (lang_size_sections_1): Don't warn on backwards dot
move unless section size is non-zero.
2007-02-06 13:56:38 +00:00
Dave Brolley
19d9b7d3f8 Support for Toshiba MeP. 2007-02-05 20:16:32 +00:00
H.J. Lu
eb7834a66d Fix year in entries. 2007-02-05 19:37:12 +00:00
H.J. Lu
65ca155d27 ld/testsuite/
2076-02-05  H.J. Lu  <hongjiu.lu@intel.com>

	* ld-i386/pcrel16.d: Undo the last change.
	* ld-x86-64/pcrel16.d: Likewise.

opcodes/

2076-02-05  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-dis.c (OP_J): Undo the last change. Properly handle 64K
	wrap around within the same segment in 16bit mode.
2007-02-05 18:22:49 +00:00
H.J. Lu
206717e8e5 ld/testsuite/
2076-02-02  H.J. Lu  <hongjiu.lu@intel.com>

	* ld-i386/pcrel16.d: Updated.
	* ld-x86-64/pcrel16.d: Likewise.

opcodes/

2076-02-02  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-dis.c (OP_J): Mask to 16bit only if there is a data16
	prefix.
2007-02-03 00:46:22 +00:00
Alan Modra
b25b09cb7e * ld-scripts/default-script.exp: Add "--local-store 0:0" to
LDFLAGS for spu.
2007-02-01 05:12:11 +00:00
Julian Brown
c6dd86c695 * NEWS: Mention --vfp11-denorm-fix option.
* ld.texinfo: Document above.
	* emulparams/armelf_linux.sh (OTHER_TEXT_SECTIONS): Add
	.vfp11_veneer section.
	* emulparams/armelf.sh (OTHER_TEXT_SECTIONS): Likewise.
	* emultempl/armelf.em (vfp11_denorm_fix): New static variable.
	(arm_elf_before_allocation): Call bfd_elf32_arm_set_vfp11_fix,
	bfd_elf32_arm_init_maps and bfd_elf32_arm_vfp11_erratum_scan.
	(arm_elf_after_allocation): New function. Call
	bfd_elf32_arm_vfp11_fix_veneer_locations for all input statements.
	(arm_elf_create_output_section_statements): Pass vfp11 fix command
	line option to BFD.
	(OPTION_VFP11_DENORM_FIX): New option.
	(PARSE_AND_LIST_LONGOPTS): Handle new option.
	(PARSE_AND_LIST_OPTIONS): Likewise.
	(PARSE_AND_LIST_ARGS_CASES): Likewise.
	(LDEMUL_AFTER_ALLOCATION): Define.
2007-01-29 16:28:40 +00:00
Julian Brown
b785d0e121 * ld-arm/arm-elf.exp: Add VFP11 tests.
* ld-arm/vfp11-fix-none.s: New file.
	* ld-arm/vfp11-fix-none.d: Expected disassembly of above.
	* ld-arm/vfp11-fix-scalar.s: New file.
	* ld-arm/vfp11-fix-scalar.d: Expected disassembly of above.
	* ld-arm/vfp11-fix-vector.s: New file.
	* ld-arm/vfp11-fix-vector.d: Expected disassembly of above.
2007-01-29 16:27:34 +00:00
H.J. Lu
5f40043739 Add a space between date and name. 2007-01-25 03:41:17 +00:00
H.J. Lu
ed9ef26324 2007-01-24 H.J. Lu <hongjiu.lu@intel.com>
* ldgram.y (SIZEOF_HEADERS): Remove duplicated one.
	(DEFSYMEND): Likewise.
	(NAME): Likewise.
	(LNAME): Likewise.
2007-01-24 16:08:53 +00:00
Nathan Sidwell
723cda2582 * ld-elf/header.d: Reduce page size, restrict to linux & vxworks
* ld-elf/header.s: Adjust.
	* ld-elf/header.t: Reduce initial offset.
2007-01-23 16:42:43 +00:00
Andreas Schwab
7b69d46638 * lib/ld-lib.exp (run_dump_test): Don't prematurely remove
assembler output.
2007-01-23 13:30:47 +00:00
Nick Clifton
5472771991 * pe-dll.c: (make_one) Conditionally include jump stubs.
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Identify
  redundant jump stubs from import libraries and exclude them from link.
2007-01-19 15:40:55 +00:00
H.J. Lu
d8cf8b5133 ld/
2007-01-19 H.J. Lu  <hongjiu.lu@intel.com>

	* ld.h (args_type): Add new symbolic and dynamic_list fields.

	* ld.texinfo: Update -Bsymbolic-functions.

	* ldmain.c (main): Initialize command_line.symbolic to
	symbolic_unset and command_line.dynamic_list to
	dynamic_list_unset.  Check -Bsymbolic, -Bsymbolic-functions and
	--dynamic-list* before setting link_info.symbolic,
	link_info.dynamic and link_info.dynamic_data.

	* lexsup.c (option_values): Add OPTION_SYMBOLIC_FUNCTIONS.
	(ld_options): Use OPTION_SYMBOLIC_FUNCTIONS with
	-Bsymbolic-functions.
	(parse_args): Handle -Bsymbolic-functions.  Don't set
	link_info.dynamic, link_info.dynamic_data and link_info.symbolic
	here.  Set command_line.symbolic for -Bsymbolic.  Set
	command_line.dynamic_list and command_line.symbolic for
	--dynamic-list-data, --dynamic-list-cpp-new,
	--dynamic-list-cpp-typeinfo and --dynamic-list.

ld/testsuite/

2007-01-19 H.J. Lu  <hongjiu.lu@intel.com>

	* ld-elf/dl6.c: New file.
	* ld-elf/dl6a.out: Likewise.
	* ld-elf/dl6amain.c: Likewise.
	* ld-elf/dl6b.out: Likewise.
	* ld-elf/dl6bmain.c: Likewise.
	* ld-elf/dl6cmain.c: Likewise.
	* ld-elf/dl6dmain.c: Likewise.

	* ld-elf/shared.exp: Add new tests for -Bsymbolic,
	-Bsymbolic-functions, --dynamic-list-data and
	--dynamic-list-cpp-new.
2007-01-19 15:13:29 +00:00
H.J. Lu
b814286567 ld/
2007-01-19  Jakub Jelinek  <jakub@redhat.com>
	    H.J. Lu  <hongjiu.lu@intel.com>

	* emultempl/elf32.em (handle_option): Make sure -z max-page-size
	or -z common-page-size argument is a power of 2.  Call
	bfd_emul_set_maxpagesize and bfd_emul_set_commonpagesize.

2007-01-19  H.J. Lu  <hongjiu.lu@intel.com>

	* ldmain.c (main): Don't call bfd_emul_set_maxpagesize nor
	bfd_emul_set_commonpagesize.

ld/testsuite/

2007-01-19  H.J. Lu  <hongjiu.lu@intel.com>

	* ld-elf/maxpage3.t: New file.
	* ld-elf/maxpage3a.d: Likewise.
	* ld-elf/maxpage3b.d: Likewise.
	* ld-elf/maxpage3c.d: Likewise.
2007-01-19 15:06:27 +00:00
H.J. Lu
14be856495 ld/
2007-01-19 H.J. Lu  <hongjiu.lu@intel.com>

	* NEWS: Mention --default-script/-dT.

	* ld.h (args_type): Add a default_script field.

	* ld.texinfo: Document --default-script/-dT.

	* ldmain.c (main): Handle command_line.default_script.

	* lexsup.c (option_values): Add OPTION_DEFAULT_SCRIPT.
	(ld_options): Add entries for --default-script and -dT.
	(parse_args): Handle --default-script/-dT.

ld/testsuite/

2007-01-19 H.J. Lu  <hongjiu.lu@intel.com>

	* ld-scripts/default-script.exp: New file.
	* ld-scripts/default-script.s: Likewise.
	* ld-scripts/default-script.t: Likewise.
	* ld-scripts/default-script1.d: Likewise.
	* ld-scripts/default-script2.d: Likewise.
	* ld-scripts/default-script3.d: Likewise.
	* ld-scripts/default-script4.d: Likewise.
2007-01-19 14:51:27 +00:00
H.J. Lu
30dabe8a61 2007-01-18 H.J. Lu <hongjiu.lu@intel.com>
PR ld/1283
	* lib/ld-lib.exp (run_dump_test): Remove output file first.
2007-01-18 19:21:15 +00:00
H.J. Lu
e47251a9cb 2007-01-17 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/header.d: Adjust for .text section with 16byte
	alignment.
2007-01-17 19:17:15 +00:00
H.J. Lu
f7a46012c7 2007-01-16 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/dl1main.c (main): Fix a typo.
2007-01-16 18:55:06 +00:00
H.J. Lu
40b36307e3 bfd/
2007-01-16  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3831
	* elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
	argument, Elf_Internal_Sym *.

	* elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
	symbol dynamic if info->dynamic_data is TRUE.
	(bfd_elf_record_link_assignment): Updated call to
	bfd_elf_record_link_assignment.
	(_bfd_elf_merge_symbol): Likewise.  Always call
	bfd_elf_link_mark_dynamic_symbol.

include/

2007-01-16  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3831
	* bfdlink.h (bfd_link_info): Rename dynamic to dynamic_list.
	Add dynamic and dynamic_data.

ld/

2007-01-16  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3831
	* NEWS: Mention -Bsymbolic-functions, --dynamic-list-data and
	--dynamic-list-cpp-new.

	* ld.texinfo: Document -Bsymbolic-functions, --dynamic-list-data
	and --dynamic-list-cpp-new.

	* ldlang.c (lang_append_dynamic_list_cpp_new): New.
	(lang_process): Change link_info.dynamic to
	link_info.dynamic_list.
	(lang_append_dynamic_list): Likewise.
	* ldmain.c (main): Likewise.  Initialize link_info.dynamic and
	link_info.dynamic_data to FALSE.

	* ldlang.h (lang_append_dynamic_list_cpp_new): New.

	* lexsup.c (option_values): Add OPTION_DYNAMIC_LIST_DATA and
	OPTION_DYNAMIC_LIST_CPP_NEW.
	(ld_options): Add entries for -Bsymbolic-functions,
	--dynamic-list-data and --dynamic-list-cpp-new.  Make
	-Bsymbolic-functions an alias of --dynamic-list-data.
	(parse_args): Change link_info.dynamic to link_info.dynamic_list.
	Set link_info.dynamic to TRUE for --dynamic-list and
	--dynamic-list-cpp-typeinfo.  Handle --dynamic-list-data and
	--dynamic-list-cpp-new.

ld/testsuite/

2007-01-16  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3831
	* ld-elf/del.cc: New.
	* ld-elf/dl5.cc: Likewise.
	* ld-elf/dl5.out: Likewise.
	* ld-elf/new.cc: Likewise.

	* ld-elf/shared.exp: Add tests for --dynamic-list-data and
	 --dynamic-list-cpp-new.
2007-01-16 14:56:32 +00:00
Hans-Peter Nilsson
c3c6b70e63 * ld-elf/header.d: Allow arbitrary lines between "Program Header"
and "Sections".  Only run on *-*-linux*.
2007-01-12 01:57:28 +00:00
Nathan Sidwell
59e0647f0d bfd/
* elf.c (assign_file_positions_for_load_sections): We can
	require fewer phdrs than expected.
ld/
	* emultempl/elf-generic.em (gdl_map_segments): Only allow header
	shrinkage for the first few iterations.
ld/testsuite/
	* ld-elf/header.d: New.
	* ld-elf/header.t: New.
	* ld-elf/header.s: New.
2007-01-11 12:23:53 +00:00
H.J. Lu
5ccca1c071 Move 2006 ChangeLog entries to ChangeLog-2006. 2007-01-09 17:30:59 +00:00
H.J. Lu
10a2343ede Move 2006 ChangeLog entries to ChangeLog-2006. 2007-01-09 14:29:31 +00:00
Nick Clifton
42037fe5bb Renamed target x86_64-*-mingw64 to x86_64-*-mingw*. 2007-01-08 17:21:50 +00:00
Nick Clifton
f9967789c6 * configure.host: Add i[3-7]86-*-mingw* case. 2007-01-08 16:53:33 +00:00
Nick Clifton
033432d0f5 * pep-dll.h (pep_bfd_is_dll): Add prototype. 2007-01-08 16:16:37 +00:00
Nick Clifton
916c46cb42 PR ld/3843
* configure.tgt (x86_64_[k]freebsd*): Add targ_extra_libpath and tdir_elf_i386_fbsd.
2007-01-08 15:38:59 +00:00
Nathan Sidwell
cc3e2771c5 ld/
* ldexp.c (fold_name): Issue error on undefined sections.
ld/testsuite/
	* ld-scripts/expr.exp: New.
	* ld-scripts/expr1.s: New.
	* ld-scripts/expr1.d: New.
	* ld-scripts/expr1.t: New.
2007-01-06 22:03:46 +00:00
Alan Modra
799133e8cd * pe-dll.c: Include pe-dll.h.
* pep-dll.c (pe_bfd_is_dll): Define.
2007-01-02 07:43:13 +00:00
H.J. Lu
83ad0046cf bfd/
2006-12-29  H.J. Lu  <hongjiu.lu@intel.com>

	* elflink.c (elf_link_add_object_symbols): Remember the symbol
	size only if it is defined.

ld/testsuite/

2006-12-29  H.J. Lu  <hongjiu.lu@intel.com>

	* ld-elf/wrap.exp: New file.
	* ld-elf/wrap1.c: Likewise.
	* ld-elf/wrap1.out: Likewise.
	* ld-elf/wrap1a.c: Likewise.
	* ld-elf/wrap1b.c: Likewise.
2006-12-29 17:56:32 +00:00
Kazu Hirata
ebff6cd5e5 bfd/
* config.bfd: Recognize fido.

gas/
	* configure.tgt: Recognize fido.

ld/
	* configure.tgt: Recognize fido.
2006-12-24 02:48:59 +00:00
Christopher Faylor
f6fe8b4514 Commit missing pieces. 2006-12-19 01:51:02 +00:00
Christopher Faylor
ff2bdb9c0d * pe-dll.c (pe_bfd_is_dll): New function.
* pe-dll.h (pe_bfd_is_dll): Declare.
* emultempl/pe.em (gld_${EMULATION_NAME}_recognized_file): Recognize dlls using
pe_bfd_is_dll instead of using the filename extension.
2006-12-18 22:38:53 +00:00
Ben Elliston
a6c73b34d0 * configure.tgt (NATIVE_LIB_DIRS): Specify for spu-*-elf*. 2006-12-15 05:49:28 +00:00
Dave Brolley
906156c429 2006-12-13 Dave Brolley <brolley@redhat.com>
* lib/ld-lib.exp (big_or_little_endian): Accept -meb and
        -mel for big and little endian respectively.
2006-12-13 16:38:37 +00:00
Daniel Jacobowitz
37d037c12d bfd/
* doc/Makefile.am (bfd_TEXINFOS): Set.
	(bfd.info bfd.dvi bfd.html): Delete rule.
	* doc/Makefile.in: Regenerated.
gas/
	* doc/Makefile.am (as_TEXINFOS): Set.
	(as.info as.dvi as.html): Delete rule.
	* doc/Makefile.in: Regenerated.
gprof/
	* Makefile.am (gprof_TEXINFOS): Set.
	(gprof.info gprof.dvi gprof.html): Delete rule.
	* Makefile.in: Regenerated.
ld/
	* Makefile.am (ld_TEXINFOS): Set.
	(ld.info ld.dvi ld.html): Delete rule.
	* Makefile.in: Regenerated.
2006-12-12 14:31:48 +00:00
Alan Modra
67f744f3bc * ldlang.c (print_output_section_statement): Print load address
when lma differs from vma.
testsuite/
	* ld-scripts/overlay-size-map.d: Update.
2006-12-12 08:10:40 +00:00
Daniel Jacobowitz
d5fbea21a5 bfd/
* configure.in: Define GENINSRC_NEVER.
	* doc/Makefile.am (bfd.info): Remove srcdir prefix.
	(MAINTAINERCLEANFILES): Add info file.
	(DISTCLEANFILES): Pretend to add info file.
	* po/Make-in (.po.gmo): Put gmo files in objdir.
	* configure, Makefile.in, doc/Makefile.in: Regenerated.
binutils/
	* configure.in: Define GENINSRC_NEVER.
	* doc/Makefile.am (MAINTAINERCLEANFILES): Add info file.
	(DISTCLEANFILES): Pretend to add info file.
	* po/Make-in (.po.gmo): Put gmo files in objdir.
	* configure, Makefile.in, doc/Makefile.in: Regenerated.
gas/
	* configure.in: Define GENINSRC_NEVER.
	* doc/Makefile.am (as.info): Remove srcdir prefix.
	(MAINTAINERCLEANFILES): Add info file.
	(DISTCLEANFILES): Pretend to add info file.
	* po/Make-in (.po.gmo): Put gmo files in objdir.
	* configure, Makefile.in, doc/Makefile.in: Regenerated.
gprof/
	* configure.in: Define GENINSRC_NEVER.
	* doc/Makefile.am (gprof.info): Remove srcdir prefix.
	(MAINTAINERCLEANFILES): Add info file.
	(DISTCLEANFILES): Pretend to add info file.
	* po/Make-in (.po.gmo): Put gmo files in objdir.
	* configure, Makefile.in: Regenerated.
ld/
	* configure.in: Define GENINSRC_NEVER.
	* doc/Makefile.am (ld.info): Remove srcdir prefix.
	(MAINTAINERCLEANFILES): Add info file.
	(DISTCLEANFILES): Pretend to add info file.
	* po/Make-in (.po.gmo): Put gmo files in objdir.
	* configure, Makefile.in: Regenerated.
opcodes/
	* po/Make-in (.po.gmo): Put gmo files in objdir.
2006-12-11 15:09:46 +00:00
H.J. Lu
e5d080028d bfd/
2006-12-07  H.J. Lu <hjl@gnu.org>

	PR ld/3666
	* elflink.c (elf_link_add_object_symbols): Keep symbol
	visibility for symbols from discarded section.

ld/testsuite/

2006-12-07  H.J. Lu <hjl@gnu.org>

	PR ld/3666
	* ld-elf/group3a.d: New file.
	* ld-elf/group3a.s: Likewise.
	* ld-elf/group3b.d: Likewise.
	* ld-elf/group3b.s: Likewise.
2006-12-07 13:32:02 +00:00
Alan Modra
fc0c78a1d9 * ld-alpha/tlspic.rd: Update for unused section removal.
* ld-frv/fdpic-shared-6.d: Likewise.
	* ld-frv/tls-dynamic-1.d: Update for symbol changes.
	* ld-frv/tls-dynamic-2.d: Likewise.
	* ld-frv/tls-dynamic-3.d: Likewise.
	* ld-frv/tls-initial-shared-2.d: Likewise.
	* ld-frv/tls-pie-1.d: Likewise.
	* ld-frv/tls-pie-3.d: Likewise.
	* ld-frv/tls-relax-dynamic-1.d: Likewise.
	* ld-frv/tls-relax-dynamic-2.d: Likewise.
	* ld-frv/tls-relax-dynamic-3.d: Likewise.
	* ld-frv/tls-relax-initial-shared-2.d: Likewise.
	* ld-frv/tls-relax-pie-1.d: Likewise.
	* ld-frv/tls-relax-pie-3.d: Likewise.
	* ld-frv/tls-relax-shared-1.d: Likewise.
	* ld-frv/tls-relax-shared-2.d: Likewise.
	* ld-frv/tls-relax-shared-3.d: Likewise.
	* ld-frv/tls-relax-static-3.d: Likewise.
	* ld-frv/tls-shared-1.d: Likewise.
	* ld-frv/tls-shared-2.d: Likewise.
	* ld-frv/tls-shared-3.d: Likewise.
	* ld-frv/tls-static-1.d: Likewise.
	* ld-frv/tls-static-3.d: Likewise.
2006-12-05 02:40:57 +00:00
Alan Modra
125c64931b * ld-elfvsb/sh1.c (overriddenvar, shlib_overriddencall2,
shared_data): If !SHARED, move to...
	* ld-elfvsb/sh2.c: ... here.
	* ld-elfvsb/elfvsb.exp: Add -DSHARED to compiler options when
	building with $picflag.
2006-12-05 01:29:58 +00:00
Jan Beulich
eb3d5f3b94 bfd/
2006-12-04  Jan Beulich  <jbeulich@novell.com>

	* elflink.c (_bfd_elf_link_create_dynamic_sections): Don't create
	.eh_frame_hdr section from here anymore.
	(bfd_elf_size_dynamic_sections): Call _bfd_elf_maybe_strip_eh_frame_hdr
	a little earlier.

ld/
2006-12-04  Jan Beulich  <jbeulich@novell.com>

	* emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Create
	.eh_frame_hdr section here.

ld/testsuite/
2006-12-04  Jan Beulich  <jbeulich@novell.com>

	* ld-elf/eh-frame-hdr.d: New.
	* ld-elf/eh-frame-hdr.s: New.
	* ld-ia64/tlsbin.dd, ld-ia64/tlsbin.sd: Don't depend on exact linkage
	table layout.
2006-12-04 08:57:09 +00:00
Ian Lance Taylor
71afa71118 * Makefile.am (EXTRA_DIST): Put spu_ovl.o in the emultempl
subdirectory.
	* Makefile.in: Regenerate.
2006-11-28 04:54:06 +00:00
Bob Wilson
2caa7ca0aa bfd/
* elf32-xtensa.c (elf_xtensa_special_sections): Add .xtensa.info.
gas/
	* config/tc-xtensa.c (XSHAL_ABI): Add default definition.
	(directive_state): Disable scheduling by default.
	(xtensa_add_config_info): New.
	(xtensa_end): Call xtensa_add_config_info.
gas/testsuite/
	* gas/elf/section2.e-xtensa: New file.
	* gas/elf/elf.exp: Use it.
include/
	* xtensa-config.h (XSHAL_ABI): New.
	(XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New.
ld/
	* emultempl/xtensaelf.em (XSHAL_ABI): Add default definition.
	(replace_insn_sec_with_prop_sec): Use bfd_make_section_with_flags.
	Delete redundant code to set sections flags and alignment.
	(xt_config_info_unpack_and_check, check_xtensa_info): New.
	(elf_xtensa_after_open): Iterate over input statements instead of
	link_info.input_bfds.
	(elf_xtensa_before_allocation): Likewise.  Call check_xtensa_info for
	each input, and write a new .xtensa.info section in the output.
2006-11-27 20:14:53 +00:00
Thiemo Seufer
0e2bc53a68 * ld-elf/warn2.d: Match regex also for the second segment. 2006-11-23 16:50:39 +00:00
Daniel Jacobowitz
e821645dee opcodes/
* arm-dis.c (last_is_thumb): Delete.
	(enum map_type, last_type): New.
	(print_insn_data): New.
	(get_sym_code_type): Take MAP_TYPE argument.  Check the type of
	the right symbol.  Handle $d.
	(print_insn): Check for mapping symbols even without a normal
	symbol.  Adjust searching.  If $d is found see how much data
	to print.  Handle data.
gas/
	* config/tc-arm.h (md_cons_align): Define.
	(mapping_state): New prototype.
	* config/tc-arm.c (mapping_state): Make global.
gas/testsuite/
	* gas/arm/arm7t.d, gas/arm/neon-ldst-rm.d, gas/arm/thumb2_pool.d,
	gas/arm/tls.d: Update for $d support.
	* gas/arm/mapshort.d, gas/arm/mapshort.s: New test.
	* gas/elf/section2.e-armeabi: Update.
	* gas/elf/section2.e-armelf: New file.
	* gas/elf/elf.exp: Use it.
ld/testsuite/
	* ld-arm/mixed-app.d, ld-arm/tls-app.d, ld-arm/tls-lib.d: Update
	for $d support.
2006-11-22 17:45:57 +00:00
Nick Clifton
221ca4668b Add Irish translation for ld and Malay translation for gprof 2006-11-22 09:45:12 +00:00
Jakub Jelinek
bce613b9bf * elf-eh-frame.c (struct cie): New type.
(cie_compare): Removed.
	(cie_eq, cie_hash, cie_compute_hash): New functions.
	(_bfd_elf_discard_section_eh_frame): Rewrite not to rely on FDEs
	pointing only to last CIE and allow merging of any duplicate CIEs,
	not just duplicate consecutive CIEs.
	(_bfd_elf_discard_section_eh_frame_hdr): Delete cies hash table.
	* elf-bfd.h (struct cie_header, struct cie): Removed.
	(struct eh_frame_sec_info): Remove alloced field.
	(struct eh_frame_hdr_info): Remove last_cie, last_cie_sec
	and last_cie_inf fields.  Add cies field.

	* ld-elf/eh5.d: New test.
	* ld-elf/eh5.s: New file.
	* ld-elf/eh5a.s: New file.
	* ld-elf/eh5b.s: New file.
2006-11-21 11:25:17 +00:00
H.J. Lu
0f6bf4518a 2006-11-20 H.J. Lu <hongjiu.lu@intel.com>
* ld.texinfo: Fix a typo.
2006-11-20 20:07:51 +00:00
Alan Modra
f99ab86efa * emulparams/elf32_spu.sh (OTHER_SECTIONS): Define. 2006-11-20 02:17:06 +00:00
Daniel Jacobowitz
f53e1b4030 * ld-arm/arm-dyn.ld, ld-arm/arm-lib.ld: Remove .stack.
* ld-arm/armthumb-lib.d, ld-arm/mixed-app.d, ld-arm/mixed-lib.d:
	Allow smaller section gap.
	* ld-arm/armthumb-lib.sym, ld-arm/mixed-lib.sym: Reorder.  Remove
	_stack.
	* ld-arm/mixed-app.sym: Remove _stack.
	* ld-arm/tls-app.d: Update start address.
2006-11-13 21:18:36 +00:00
Daniel Jacobowitz
d504ffc851 bfd/
* bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
	prototype.
	(bfd_elf32_arm_set_byteswap_code): New prototype.
	* bfd-in2.h: Regenerate.
	* elf32-arm.c (bfd_elf32_arm_process_before_allocation): Don't take
	byteswap_code as an argument.  Revert 2006-11-01 change.
	(bfd_elf32_arm_set_byteswap_code): New.
	(elf32_arm_size_dynamic_sections): Call
	bfd_elf32_arm_process_before_allocation.
ld/
	* emultempl/armelf.em (arm_elf_before_allocation): Only call
	bfd_elf32_arm_process_before_allocation if no dynamic sections.
2006-11-13 20:39:21 +00:00
Alan Modra
9e3be61d60 ld/
* emultempl/elf32.em (gld*_before_allocation): Adjust output section
	size for warning sections.
ld/testsuite/
	* ld-elf/group.ld: Handle .rodata.brlt for powerpc64.
2006-11-08 11:29:16 +00:00
Vladimir Prus
d661a1c202 2006-11-07 Vladimir Prus <vladimir@codesourcery.com>
* testsuite/ld-elf/symbol2w.s: Use "%" instead
        of "@" to avoid breakage on ARM.
2006-11-08 10:21:12 +00:00
Vladimir Prus
7d0317c40f 2006-11-06 Vladimir Prus <vladimir@codesourcery.com>
* testsuite/ld-elf/symbol1ref.s: Use ".dc.a" instead
       of ".long".
2006-11-06 12:15:35 +00:00
Vladimir Prus
bc251d509b * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
Don't prepend "warning" to the message.
	* testsuite/ld-elf/warn2.d: New.
	* testsuite/ld-elf/symbol2w.s: New.
	* testsuite/ld-elf/symbol2ref.s: New.
2006-11-06 10:39:17 +00:00
Hans-Peter Nilsson
c70cf8c0a1 * ld-cris/ldsym1.d: Adjust for semi-recent ld changes. 2006-11-05 19:15:32 +00:00
Daniel Jacobowitz
b1e24c0220 bfd/
* libbfd-in.h (_bfd_clear_contents): New prototype.
	* reloc.c (_bfd_clear_contents): New.
	* libbfd.h: Regenerated.

	* elf32-arm.c (elf32_arm_final_link_relocate): Use
	_bfd_clear_contents.
	* elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
	* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
	* elf32-i386.c (elf_i386_relocate_section): Likewise.
	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
	* elf32-s390.c (elf_s390_relocate_section): Likewise.
	* elf32-sh.c (sh_elf_relocate_section): Likewise.
	* elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
	* elf64-s390.c (elf_s390_relocate_section): Likewise.
	* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
	* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.

	* elfxx-ia64.c (elfNN_ia64_relocate_section): Set value to
	zero for discarded symbols.
	* elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
ld/testsuite/
	* ld-discard/zero-rel.d, ld-discard/zero-rel.s: New files.
2006-11-03 00:58:10 +00:00
Thiemo Seufer
b9d58d7191 [ bfd/ChangeLog ]
* elf-bfd.h (local_call_stubs): New member.
	* elfxx-mips.c (FN_STUB_P, CALL_STUB_P, CALL_FP_STUB_P): New macros.
	(mips_elf_calculate_relocation): Handle local mips16 call stubs.
	(mips16_stub_section_p): Rename from mips_elf_stub_section_p, use
	the new stub macros.
	(_bfd_mips_elf_check_relocs): Handle call stubs for code which
	mixes mips16 and mips32 functions. Use mips16_stub_section_p. Mark
	used stubs with SEC_KEEP. Use the new stub macros.

	[ gas/testsuite/ChangeLog ]
	* gas/mips/mips16-intermix.d, gas/mips/mips16-intermix.s: New
	testcase.
	* gas/mips/mips.exp: Run new testcase.

	[ ld/testsuite/ChangeLog ]
	* ld-mips-elf/mips16-intermix-1.s, ld-mips-elf/mips16-intermix-2.s,
	ld-mips-elf/mips16-intermix.d: New testcase.
	* ld-mips-elf/mips-elf.exp (mips16_intermix_test): Run new testcases.
2006-11-02 15:20:31 +00:00
Christopher Faylor
e916811ac6 * pe-dll.c (autofilter_entry_type): Change name to const.
(pe_details_type) : Change target_name, object_target and autofilter_symbollist
to const.
(autofilter_symbollist_generic): Change to const.
(autofilter_symbollist_i386, pe_detail_list, pe_details, autofilter_liblist,
autofilter_objlist autofilter_symbolprefixlist, autofilter_symbolsuffixlist):
Likewise.
(is_import): Fix indentation.
(auto_export): Change afptr to const.  Move name declaration to beginning of
scope.
(make_tail): Clear undefined byte.
(jmp_ix86_bytes, jmp_sh_bytes, jmp_mips_bytes, jmp_arm_bytes): Change to const.
(make_one): Change jmp_bytes to const.  Make idata$6 member size arithmetic
explicit and add comment.
2006-11-01 00:48:25 +00:00
H.J. Lu
c0f0068602 bfd/
2006-10-30  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3111
	* elf-bfd.h (elf_obj_tdata): Add symbuf.
	(_bfd_elf_section_already_linked): Add struct bfd_link_info *.
	(_bfd_elf_check_kept_section): Likewise.
	(bfd_elf_match_symbols_in_sections): Likewise.

	* elf.c (assign_section_numbers): Updated to add
	struct bfd_link_info *.
	(bfd_elf_match_symbols_in_sections): Updated. Cache symbol
	buffer if info->reduce_memory_overheads is false.

	* elflink.c (match_group_member): Updated to add
	struct bfd_link_info *.
	(_bfd_elf_check_kept_section): Likewise.
	(elf_link_input_bfd): Likewise.
	(_bfd_elf_section_already_linked): Likewise.
	(bfd_elf_final_link): Free symbol buffer if
	info->reduce_memory_overheads is false.

	* libbfd-in.h (_bfd_nolink_section_already_linked): Add
	struct bfd_link_info *.
	(_bfd_generic_section_already_linked): Likewise.
	* libbfd.h: Regenerated.

	* linker.c (bfd_section_already_linked): Add
	struct bfd_link_info *.
	(_bfd_generic_section_already_linked): Likewise.
	* targets.c (bfd_target): Add struct bfd_link_info * to
	_section_already_linked.
	* bfd-in2.h: Regenerated.

include/

2006-10-30  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3111
	* bfdlink.h (bfd_link_info): Add reduce_memory_overheads.

ld/

2006-10-30  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3111
	* ld.h (args_type): Remove reduce_memory_overheads.

	* ldlang.c (lang_map): Updated.
	(section_already_linked): Likewise.
	(print_input_section): Likewise.
	* ldmain.c (main): Likewise.
	* lexsup.c (parse_args): Likewise.
2006-10-30 23:25:51 +00:00
Kaz Kojima
3091e75f27 * ld-sh/sh64/abi32.xd, ld-sh/sh64/abi64.xd, ld-sh/sh64/cmpct1.xd,
* ld-sh/sh64/crange1.rd, ld-sh/sh64/crange2.rd,
	* ld-sh/sh64/crange3-cmpct.rd, ld-sh/sh64/crange3-media.rd,
	* ld-sh/sh64/crange3.rd, ld-sh/sh64/mix1.xd, ld-sh/sh64/mix2.xd,
	* ld-sh/sh64/shdl32.xd, ld-sh/sh64/shdl64.xd: Update for removal
	of empty sections.
2006-10-30 00:48:03 +00:00
Christopher Faylor
4e98625713 * pe-dll.c (make_singleton_name_thunk): Re-add the NULL terminator. 2006-10-29 17:14:37 +00:00
Alan Modra
a14a5de357 bfd/
* section.c (SEC_KEEP): Update comment.
	* bfd-in2.h: Regenerate.
	* elflink.c (bfd_elf_gc_sections): Ignore SEC_EXCLUDE sections.
	* merge.c (_bfd_merge_sections): Set SEC_KEEP on excluded sections.
	* stabs.c (_bfd_discard_section_stabs): Likewise.
	(_bfd_link_section_stabs): Likewise.  Simplify abs_section check.
ld/
	* ldlang.c (lang_map): Don't say SEC_LINKER_CREATED and SEC_KEEP
	sections have been discarded.
	(lang_do_version_exports_section): Set SEC_KEEP on export section.
	* emultempl/elf32.em (before_allocation): Set SEC_KEEP on warning
	sections.
2006-10-27 03:22:09 +00:00
Joseph Myers
fffbd2ef6b 2006-10-26 Joseph S. Myers <joseph@codesourcery.com>
Mark Mitchell  <mark@codesourcery.com>

	* configure.tgt (arm*linux*): Support both big- and little-endian.
2006-10-26 12:52:39 +00:00
H.J. Lu
1bc214bab3 2006-10-25 H.J. Lu <hongjiu.lu@intel.com>
* emulparams/hppa64linux.sh (LARGE_SECTIONS): Renamed to ...
	(OTHER_BSS_SECTIONS): This.
	* scripttempl/elf.sc (OTHER_BSS_SECTIONS): Support LARGE_SECTIONS.
	(LARGE_SECTIONS): Move .lbss sections to OTHER_BSS_SECTIONS.
2006-10-26 00:31:59 +00:00
Alan Modra
e9f5312993 New Cell SPU port. 2006-10-25 06:49:21 +00:00
Alan Modra
e3b356e039 missed from last commit 2006-10-25 00:44:26 +00:00
Alan Modra
faead5625e * ld-powerpc/plt1.s: New.
* ld-powerpc/plt1.d: New.
	* ld-powerpc/relbrlt.s: New.
	* ld-powerpc/relbrlt.d: New.
	* ld-powerpc/powerpc.exp: Run them.
2006-10-24 13:29:37 +00:00
Ben Elliston
058a363ddc * lexsup.c (parse_args): Add a comment noting a fall-through. 2006-10-24 03:35:49 +00:00
H.J. Lu
a3ffa599fe 2006-10-24 H.J. Lu <hongjiu.lu@intel.com>
* configure.in (AC_CHECK_HEADERS): Add limits.h and sys/param.h.
	* configure: Regenerated.
	* config.in: Likewise.
2006-10-23 16:44:17 +00:00
Alan Modra
19163ab3bd * emulparams/h8300elf.sh (TINY_DATA_SECTION, TINY_BSS_SECTION): Don't
set section address on a relocatable link.
2006-10-23 03:30:02 +00:00
Alan Modra
a0976ea472 * ld.texinfo (Output Section Discarding): Fix xref. 2006-10-23 03:09:35 +00:00
Alan Modra
063d4ee10c missed from 2006-10-19 commit. 2006-10-23 03:07:49 +00:00
Kaz Kojima
23bacdc9bf * gas/sh/sh64/syntax-1.d: Update.
* ld-sh/sh64/abi32.xd, ld-sh/sh64/abi64.xd, ld-sh/sh64/cmpct1.xd,
	* ld-sh/sh64/crange1.rd, ld-sh/sh64/crange2.rd,
	* ld-sh/sh64/crange3-cmpct.rd, ld-sh/sh64/crange3-media.rd,
	* ld-sh/sh64/crange3.rd, ld-sh/sh64/crangerel1.rd,
	* ld-sh/sh64/crangerel2.rd, ld-sh/sh64/mix1.xd,
	* ld-sh/sh64/mix2.xd, ld-sh/sh64/rel32.xd, ld-sh/sh64/rel64.xd,
	* ld-sh/sh64/reldl32.rd, ld-sh/sh64/reldl64.rd,
	* ld-sh/sh64/shdl32.xd, ld-sh/sh64/shdl64.xd: Update.
2006-10-22 01:19:06 +00:00
Kaz Kojima
30bebb95d6 * emulparams/shelf32.sh: Set default stack to 0x80000.
* emulparams/shelf64.sh: Likewise.
2006-10-22 01:07:30 +00:00
Kaz Kojima
af4658dc3d * ld-sh/tlsbin-1.d: Update.
* ld-sh/tlspic-1.d: Likewise.
	* ld-sh/tlstpoff-1.d: Likewise.
2006-10-20 15:16:44 +00:00
Richard Sandiford
bcfdf036c8 bfd/
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make the
	size of .rel.dyn reflect the value of DT_RELSZ.

ld/testsuite/
	* ld-mips-elf/multi-got-1.d: Remove trailing R_MIPS_NONE entries.
	* ld-mips-elf/tls-multi-got-1.got: Likewise.
	* ld-mips-elf/tls-multi-got-1.r: Likewise.
2006-10-20 07:58:17 +00:00
Richard Sandiford
98c904a864 bfd/
* elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Allocate
	a PT_NULL header for dynamic objects.
	(_bfd_mips_elf_modify_segment_map): Add it.

ld/testsuite/
	* ld-mips-elf/multi-got-1.d: Do not expect a particular address
	for DT_HASH.
	* ld-mips-elf/rel32-o32.d: Bump addresses by 0x20 to account for
	the extra program header.
	* ld-mips-elf/rel32-n32.d: Likewise.
	* ld-mips-elf/tlslib-o32.got: Likewise.
	* ld-mips-elf/tlslib-o32-hidden.got: Likewise.
	* ld-mips-elf/tlslib-o32-ver.got: Likewise.
	* ld-mips-elf/tls-multi-got-1.got: Likewise.
	* ld-mips-elf/tls-multi-got-1.r: Likewise.
	* ld-mips-elf/rel64.d: Bump addresses by 0x30 to account for the
	extra program header.
	* ld-mips-elf/tlsdyn-o32.d: Reduce the GOT offset by 32 to account
	for the extra program header, and thus the shorter gap between the
	text and data segments.
	* ld-mips-elf/tlsdyn-o32-1.d: Likewise.
	* ld-mips-elf/tlsdyn-o32-2.d: Likewise.
	* ld-mips-elf/tlsdyn-o32-3.d: Likewise.
	* ld-mips-elf/tlsdyn-o32.got: Bump GOT text addresses by 0x20
	to account for the extra program header.
	* ld-mips-elf/tlsdyn-o32-1.got: Likewise.
	* ld-mips-elf/tlsdyn-o32-2.got: Likewise.
	* ld-mips-elf/tlsdyn-o32-3.got: Likewise.
2006-10-20 07:57:03 +00:00
Richard Sandiford
5427f821ae ld/
* emulparams/elf32bmip.sh (OTHER_GOT_RELOC_SECTIONS): Define.
	* emulparams/elf32bmipn32-defs.sh (OTHER_GOT_RELOC_SECTIONS): Likewise.

ld/testsuite/
	* ld-mips-elf/rel32-o32.d: Bump the section number of .text by 1
	to account for the fact that .rel.dyn is now before .text in the
	section table.
	* ld-mips-elf/rel32-n32.d: Likewise.
	* ld-mips-elf/rel64.d: Likewise.
2006-10-20 07:55:37 +00:00
Nick Clifton
b354976135 Fix score bugs 2006-10-19 15:47:34 +00:00
Richard Sandiford
6870500c04 bfd/
* elfxx-mips.c (sort_dynamic_relocs): Sort relocations against the
	same symbol by increasing r_offset.
	(sort_dynamic_relocs_64): Likewise.  Fix comparisons between very
	large and very small symbol indexes.

ld/testsuite/
	* ld-mips-elf/tlslib-o32-hidden.got: Sort relocations against the
	same symbol in order of increasing r_offset.
	* ld-mips-elf/tls-multi-got-1.got: Likewise.
	* ld-mips-elf/tls-hidden3.r: Likewise.
	* ld-mips-elf/tls-hidden4.r: Likewise.
2006-10-19 13:47:10 +00:00
Richard Sandiford
6a4837657a bfd/
* elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG
	and DT_MIPS_RLD_MAP tags for position-independent executables.
	Do not add DT_DEBUG to shared libraries for any MIPS target.

ld/testsuite/
	* ld-mips-elf/multi-got-1.d: Remove DT_DEBUG tag.  Do not require
	a specific file offset for .dynamic.  Reduce DT_HASH by 8 to account
	for removed tag.
	* ld-mips-elf/tls-multi-got-1.r: Likewise.  Also reduce DT_REL by 8.
	Reduce PLTGOT and symbol values by 16 to account for the removed tag.
	* ld-mips-elf/textrel-1.d: Remove DT_DEBUG tag.
	* ld-mips-elf/rel32-n32.d: Reduce addresses by 16 to account for
	removed DT_DEBUG tag.
	* ld-mips-elf/rel64.d: Likewise.
	* ld-mips-elf/tls-multi-got-1.got: Likewise.
	* ld-mips-elf/tlslib-o32-hidden.got: Likewise.
2006-10-19 13:42:17 +00:00
H.J. Lu
92b7c7b6e9 bfd/
2006-10-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3290
	* elflink.c (elf_link_add_object_symbols): Hide definitions in
	debug sections.

ld/testsuite/

2006-10-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3290
	* ld-elf/dummy.c: New file.
	* ld-elf/dwarf.exp: Likewise.
	* ld-elf/dwarf1.c: Likewise.
	* ld-elf/dwarf1.h: Likewise.
	* ld-elf/dwarf1.out: Likewise.
	* ld-elf/dwarf1main.c: Likewise.
2006-10-19 02:40:14 +00:00
Alan Modra
2f4754876f bfd/
* elf32-arm.c (bfd_elf32_arm_allocate_interworking_sect): Check,
	don't set, glue section size.
	(record_arm_to_thumb_glue): Set glue section size here.
	(record_thumb_to_arm_glue): Likewise.
	(bfd_elf32_arm_add_glue_sections_to_bfd): Formatting.
	(bfd_elf32_arm_process_before_allocation): Ignore exluded sections.

ld/
	* emultempl/armelf.em (arm_elf_before_allocation): Run
	gld${EMULATION_NAME}_before_allocation later.
	* ldlang.c (lang_size_sections_1): Revert 2006-09-15 change.
2006-10-19 02:10:41 +00:00
Mike Frysinger
71a75f6f15 2006-10-18 Roy Marples <uberlord@gentoo.org>
* bfd/elf64-sparc.c: Add FreeBSD support.
	(elf64_sparc_fbsd_post_process_headers): New function.
	* bfd/targets.c (_bfd_target_vector): Add bfd_elf64_sparc_freebsd_vec.
	* bfd/config.bfd (sparc64-*-freebsd*): Set targ_defvec to bfd_elf64_sparc_freebsd_vec.
	* bfd/configure.in: Add entry for bfd_elf64_sparc_freebsd_vec.
	* bfd/configure: Regenerate.
	* gas/config/tc-sparc.c (md_parse_option): Treat any target starting with elf32-sparc
	as a viable target for the -32 switch and any target starting with elf64-sparc as a
	viable target for the -64 switch.
	(sparc_target_format): For 64-bit ELF flavoured output use ELF_TARGET_FORMAT64
	while for 32-bit ELF flavoured output use ELF_TARGET_FORMAT.
	* gas/config/tc-sparc.h (ELF_TARGET_FORMAT, ELF_TARGET_FORMAT64): Define.
	* ld/emulparams/elf64_sparc_fbsd.sh (OUTPUT_FORMAT): Define as elf64-sparc-freebsd.
2006-10-18 23:58:52 +00:00
Joseph Myers
e4818e07f3 * configure.tgt (i[3-7]86-*-linux-*): Also define
targ_extra_libpath in want64 case.
	* emulparams/elf_x86_64.sh: Handle i[3-7]86-*-linux-* the same as
	x86_64*-linux*.
2006-10-18 16:24:01 +00:00
H.J. Lu
c555238b1a 2006-10-18 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/dl4.c: New file.
	* ld-elf/dl4.list: Likewise.
	* ld-elf/dl4a.out: Likewise.
	* ld-elf/dl4b.out: Likewise.
	* ld-elf/dl4main.c: Likewise.
	* ld-elf/dl4xxx.c: Likewise.
	* ld-elf/dl4xxx.list: Likewise.

	* ld-elf/shared.exp (build_tests): Add libdl4a.so and
	libdl4b.so.
	(run_tests): Likewise.
2006-10-18 16:23:24 +00:00
Richard Sandiford
0d22c9559b ld/testsuite/
* ld-mips-elf/reloc-1-n64.d: Match 16-character VMAs on LP64 hosts.
2006-10-18 13:02:01 +00:00
Richard Sandiford
269186e397 Fix typo in last changelog. 2006-10-18 12:38:26 +00:00
Richard Sandiford
7e1fa4ad31 ld/testsuite/
* ld-mips-elf/rel32-n32.d: Bump addresses by 0x30 to account for
	the fact that .reginfo is now placed before .text.  Change the
	section number of .text accordingly.
2006-10-18 12:34:19 +00:00
Richard Sandiford
2838ec41f8 ld/testsuite/
* ld-mips-elf/elf-rel-got-n32.d: Adjust page gap from 0x100000
	to 0x10000.  Move .reginfo before .text and bump .text addresses
	by 0x10 to make room.  Move data segment down by 0x10 bytes to
	account for new size of text segment.
	* ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
	* ld-mips-elf/elf-rel-got-n64-linux.d: Adjust page gap from
	0x100000 to 0x10000.
	* ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise.
2006-10-18 07:13:47 +00:00
Mark Shinwell
e95de06338 bfd/
* elf32-arm.c (elf32_arm_howto_table_1): Change offset for
	R_THM_CALL to 25 and remove FIXME comment.
	(using_thumb2): New function.
	(elf32_arm_final_link_relocate): Cope with Thumb-2 BL encoding.

	include/
	* elf/arm.h: Define TAG_CPU_ARCH_* constants.

	ld/testsuite/
	* ld-arm/arm-elf.exp: Add thumb1-bl, thumb2-bl,
	thumb2-bl-as-thumb1-bad and thumb2-bl-bad tests.
	* ld-arm/thumb1-bl.d: New.
	* ld-arm/thumb1-bl.s: New.
	* ld-arm/thumb2-bl-as-thumb1-bad.d: New.
	* ld-arm/thumb2-bl-as-thumb1-bad.s: New.
	* ld-arm/thumb2-bl-bad.d: New.
	* ld-arm/thumb2-bl-bad.s: New.
	* ld-arm/thumb2-bl.d: New.
	* ld-arm/thumb2-bl.s: New.
2006-10-17 15:46:21 +00:00
Alan Modra
5a8e7be242 * scripttempl/elf.sc (INTERP): Delete. Move definition to..
(INITIAL_READONLY_SECTIONS): ..here.
	* emulparams/criself.sh (INITIAL_READONLY_SECTIONS): Include .interp.
	* emulparams/elf32bmip.sh (INITIAL_READONLY_SECTIONS): Ditto.
	* emulparams/elf32bmipn32-defs.sh (INITIAL_READONLY_SECTIONS): Ditto.
2006-10-17 13:55:11 +00:00
Alan Modra
74541ad4c0 bfd/
* elf-bfd.h (struct elf_link_hash_table): Reorder.  Add
	text_index_section and data_index_section.
	(struct elf_backend_data): Add elf_backend_init_index_section.
	(_bfd_elf_init_1_index_section): Declare.
	(_bfd_elf_init_2_index_sections): Declare.
	* elfxx-target.h (elf_backend_init_index_section): Define.
	(elfNN_bed): Init new field.
	* elflink.c (_bfd_elf_link_omit_section_dynsym): Keep first tls
	section and text_index_section plus data_index_section.
	(_bfd_elf_link_renumber_dynsyms): Clear dynindx on omitted sections.
	(_bfd_elf_init_1_index_section): New function.
	(_bfd_elf_init_2_index_sections): New function.
	(bfd_elf_size_dynsym_hash_dynstr): Call elf_backend_init_index_section.
	(elf_link_input_bfd): When emitting relocs, use text_index_section
	and data_index_section for removed sections.
	* elf-m10300.c (elf_backend_omit_section_dynsym): Define.
	* elf32-i386.c: Likewise.
	* elf32-m32r.c: Likewise.
	* elf32-sh.c: Likewise.
	* elf32-xstormy16.c: Likewise.
	* elf32-xtensa.c: Likewise.
	* elf64-alpha.c: Likewise.
	* elf64-hppa.c: Likewise.
	* elf64-mmix.c: Likewise.
	* elf64-sh64.c: Likewise.
	* elfxx-ia64.c: Likewise.
	* elf32-arm.c (elf32_arm_final_link_relocate): Use text_index_section
	and data_index_section sym for relocs against sections with no dynamic
	section sym.
	(elf_backend_init_index_section): Define.
	* elf32-cris.c: Similarly.
	* elf32-hppa.c: Similarly.
	* elf32-i370.c: Similarly.
	* elf32-m68k.c: Similarly.
	* elf32-mips.c: Similarly.
	* elf32-ppc.c: Similarly.
	* elf32-s390.c: Similarly.
	* elf32-sparc.c: Similarly.
	* elf32-vax.c: Similarly.
	* elf64-mips.c: Similarly.
	* elf64-ppc.c: Similarly.
	* elf64-s390.c: Similarly.
	* elf64-sparc.c: Similarly.
	* elf64-x86-64.c: Similarly.
	* elfn32-mips.c: Similarly.
	* elfxx-mips.c: Similarly.
	* elfxx-sparc.c: Similarly.
	* linker.c (fix_syms): Base symbols in removed sections on
	previous section in preference to using absolute section.

ld/
	* ldlang.c (strip_excluded_output_sections): Do strip sections
	that define syms, but don't ignore them.
	* ld.texinfo (Output Section Discarding): Revise.
	* emultempl/armcoff.em (gld${EMULATION_NAME}_finish): Always call
	finish_default.

ld/testsuite/
	Update for section sym changes.
2006-10-17 13:41:49 +00:00
Richard Sandiford
94bb04b3c6 ld/
* Makefile.am (eelf64bmip.c): Depend on emulparams/elf64bmip-defs.sh.
	(eelf64btsmip.c, eelf64ltsmip.c): Likewise.
	* Makefile.in: Regenerate.
	* emulparams/elf32bmipn32-defs.sh (INITIAL_READONLY_SECTIONS): Include
	.reginfo rather than .MIPS.options.
	* emulparams/elf64bmip-defs.sh: New file.
	* emulparams/elf64bmip.sh: Include it.
	(COMMONPAGESIZE): Delete.
	* emulparams/elf64btsmip.sh: As for elf64bmip.sh.

ld/testsuite/
	* ld-mips-elf/branch-misc-1.d: Set the start address to 0x20000000.
	* ld-mips-elf/jalbal.d: Likewise 0x200000a0.
	* ld-mips-elf/jaloverflow-2.d: Likewise 0x20000000.
	* ld-mips-elf/reloc-3-n32.d: Likewise.
	* ld-mips-elf/reloc-3.d: Likewise.
	* ld-mips-elf/textrel-1.d: Don't require a specific file offset for
	.dynamic.
2006-10-16 21:34:25 +00:00
Bob Wilson
a77dc2cc26 bfd/
* elf32-xtensa.c (elf_xtensa_action_discarded): New.
	(elf_backend_action_discarded): Define.
ld/
	* emultempl/xtensaelf.em (is_inconsistent_linkonce_section): Check
	for linkonce XCC exception tables (".e" and ".h").
2006-10-12 21:56:19 +00:00
Bob Wilson
3c173cb121 * emulparams/elf32xtensa.sh (TEXT_PLT): Enable.
(OTHER_READONLY_SECTIONS): Add linkonce .xt_except_table sections.
	(OTHER_READWRITE_SECTIONS): Add linkonce .xt_except_desc sections.
	(OTHER_SDATA_SECTIONS): New.
	* scripttempl/elfxtensa.sc: Import changes from elf.sc.
2006-10-11 22:18:31 +00:00
Jakub Jelinek
07806542d5 * ldlang.c (lang_append_dynamic_list): When appending, add all elements
of the dynamic list rather than just the first entry.
2006-10-11 14:58:19 +00:00
Bob Wilson
ba05963f0d bfd/
* elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Add DT_DEBUG
	for PIE executables.
ld/
	* emulparams/elf32xtensa.sh (GENERATE_PIE_SCRIPT): Enable.
2006-10-10 20:57:37 +00:00
Mike Frysinger
33423b7ffe * genscripts.sh: Respect LIBPATH_SUFFIX when not using sysroot. 2006-10-06 20:10:37 +00:00
Bob Wilson
a9c70046ea * emulparams/xtensa-config.sh: Delete file.
* emulparams/elf32xtensa.sh: Set MAXPAGESIZE here instead of including
        xtensa-config.sh.
        * Makefile.am (eelf32xtensa.c): Remove dependency on xtensa-config.sh.
        * Makefile.in: Regenerate.
2006-10-05 01:06:13 +00:00
Jakub Jelinek
ac685e6adf * elf-bfd.h (struct eh_cie_fde): Add set_loc pointer.
* elf-eh-frame.c (skip_cfa_op): Fix handling of DW_CFA_advance_loc.
	Handle DW_CFA_{remember,restore}_state, DW_CFA_GNU_window_save,
	DW_CFA_val_{offset{,_sf},expression}.
	(skip_non_nops): Record number of DW_CFA_set_loc ops.
	(_bfd_elf_discard_section_eh_frame): Require skip_non_nops recognizes
	all ops.  If there are any DW_CFA_set_loc ops and they are pcrel
	or going to be pcrel, compute set_loc array.
	(_bfd_elf_eh_frame_section_offset): If make_relative, kill relocations
	against DW_CFA_set_loc operands.
	(_bfd_elf_write_section_eh_frame): Handle DW_CFA_set_loc adjusting.

	* ld-elf/eh4.d: New test.
	* ld-elf/eh4.s: New file.
	* ld-elf/eh4a.s: New file.
2006-10-03 13:15:39 +00:00
Nick Clifton
00479ba8f9 * pe-dll.c : Fix typo.
(autofilter_symbolprefixlist) : Remove __imp_.
  (is_import) : New.
  (auto-export) : Remove  re-import check. Moved to callers.
  (process_def_file) : Check is symbol is an import. Always underscore __imp_.
  Only skip underscore on underscored targets.
  (make_one) : Always underscore __imp_.
  (pe_create_runtime_relocator_reference) : Only underscore _pei386_runtime_relocator on underscored targets.
  (pe_process_import_defs) : Always underscore __imp_.
* pe.em (U) : New macro.
  (set_pe_subsystem) : Remove underscore from _WinMainCRTStartup on wince subsystem case.
  (pe_find_data_imports) : Use U on "_head_".
  (gld_${EMULATION_NAME}_unrecognized_file) : Use U.
2006-10-03 10:06:26 +00:00
Nick Clifton
4303612646 * ld-arm/use-thumb-lib.sym: Robustify, by ignoring symbols we're
not interested in and bucket number.
2006-10-02 17:10:56 +00:00
Nick Clifton
0be14fe08c * ld-fastcall/fastcall.exp: Add x86_64-pc-mingw64 as valid target.
* ld-pe/pe.exp: Likewise.
* lib/ld-lib.exp ( is_pecoff_format): Accept x86_64-pc-mingw64.
2006-10-02 16:53:04 +00:00
Kaz Kojima
aeb0c9c635 * ld-sh/tlspic-2.d: Update. 2006-09-29 12:37:28 +00:00
H.J. Lu
49c13adb16 bfd/
2006-09-26  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3223
	PR ld/3267
	* elf.c (assign_file_positions_for_non_load_sections): Don't
	warn zero size allocated sections.

ld/

2006-09-26  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3223
	PR ld/3267
	* ld.texinfo: Updated Output Section Discarding.

	* ldlang.h (lang_output_section_statement_type): Add
	section_relative_symbol.
	* ldlang.c (strip_excluded_output_sections): Don't strip a
	section with a symbol relative to it.
	(lang_size_sections_1): Mark if an output section has a symbol
	symbol relative to it.

ld/testsuite/

2006-09-26  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3223
	PR ld/3267
	* ld-scripts/empty-address-1.d: New file.
	* ld-scripts/empty-address-1.s: Likewise.
	* ld-scripts/empty-address-1.t: Likewise.
	* ld-scripts/empty-address-2.s: Likewise.
	* ld-scripts/empty-address-2a.d: Likewise.
	* ld-scripts/empty-address-2a.t: Likewise.
	* ld-scripts/empty-address-2b.d: Likewise.
	* ld-scripts/empty-address-2b.t: Likewise.
	* ld-scripts/empty-address-3.s: Likewise.
	* ld-scripts/empty-address-3a.d: Likewise.
	* ld-scripts/empty-address-3a.t: Likewise.
	* ld-scripts/empty-address-3b.d: Likewise.
	* ld-scripts/empty-address-3b.t: Likewise.
	* ld-scripts/empty-address-3c.d: Likewise.
	* ld-scripts/empty-address-3c.t: Likewise.
	* ld-scripts/empty-address.exp: Likewise.
2006-09-27 04:18:16 +00:00
Bob Wilson
3c68c38feb * ld.texinfo (Options): Update description of local symbols for -X. 2006-09-25 16:26:57 +00:00
H.J. Lu
779dafb461 2006-09-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/3249
	* scripttempl/elf.sc: Don't combine .gnu.linkonce.d.*personality*
	and .gnu.linkonce.wi.* sections with .data and .debug_info for
	relocatable link.
2006-09-24 06:23:15 +00:00
Andreas Schwab
5bd4b6af45 * ld-m68k/plt1-68020.d: Fix patterns to match also for 64-bit
hosts.
2006-09-21 09:41:34 +00:00
Nick Clifton
99ad839030 Add x86_64-mingw64 target 2006-09-20 11:35:11 +00:00
Thiemo Seufer
3b7882616d * ld-mips-elf/mips-elf.exp: Add test for R_MIPS16_GPREL relocations.
* ld-mips-elf/reloc-3-n32.d, ld-mips-elf/reloc-3.d: New files.
2006-09-18 18:21:42 +00:00
Thiemo Seufer
674e82fc12 * ld-elfcomm/elfcomm.exp: Enable the alignment test for
mips*-*-*.
2006-09-18 14:41:10 +00:00
Thiemo Seufer
6f69307352 * configure.tgt: Add mips*el-sde-elf* and mips*-sde-elf*
configurations.
2006-09-18 13:18:44 +00:00
Nick Clifton
1c0d3aa6ae Add support for Score target. 2006-09-16 23:51:50 +00:00
Nick Clifton
0112cd268b * bfd-in.h (STRING_AND_COMMA): New macro. Takes one constant string as its
argument and emits the string followed by a comma and then the length of
  the string.
  (CONST_STRNEQ): New macro.  Checks to see if a variable string has a constant
  string as its initial characters.
  (CONST_STRNCPY): New macro.  Copies a constant string to the start of a
  variable string.
* bfd-in2.h: Regenerate.
* <remainign files>: Make use of the new macros.
2006-09-16 18:12:17 +00:00
H.J. Lu
76052d04e0 2006-09-15 H.J. Lu <hongjiu.lu@intel.com>
* ld-scripts/overlay-size.t: Discard .reginfo sections.
2006-09-15 16:19:33 +00:00
H.J. Lu
65163a8aaa 2006-09-15 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/hash.d: Don't run for mips targets.
2006-09-15 14:55:42 +00:00
H.J. Lu
06010a4e79 2006-09-15 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/loadaddr.s: Pad sections to 16 bytes.
	* ld-elf/loadaddr1.d: Updated.
	* ld-elf/loadaddr2.d: Likewise.
	* ld-elf/loadaddr3a.d: Likewise.
	* ld-elf/loadaddr3b.d: Likewise.
2006-09-15 14:48:46 +00:00
Nick Clifton
99643f697e PR ld/3107
* ldlang.c (lang_size_sections_1): Do not abort when encountering a non-empty
  section that is ignored.  Instead produce a warning message.
2006-09-15 09:48:58 +00:00
H.J. Lu
41198d0cfa bfd/
2006-09-12  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3197
	* elflink.c (elf_link_output_extsym): Compute bucket only if
	needed.

ld/testsuite/

2006-09-12  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3197
	* ld-elf/hash.d: New test.
2006-09-12 22:10:31 +00:00
H.J. Lu
0b8a70d9a0 2006-09-08 H.J. Lu <hongjiu.lu@intel.com>
* ld.texinfo: Document --dynamic-list-cpp-typeinfo.
2006-09-08 13:43:54 +00:00
Richard Earnshaw
c782d94cd1 2006-09-04 Vladimir Prus <vladimir@codesourcery.com>
* ld-arm/use-thumb-lib.sym: Use regexps instead of
	absolute addresses, for robustness.
2006-09-08 10:32:28 +00:00
H.J. Lu
55255daec3 bfd/
2006-09-07  H.J. Lu  <hongjiu.lu@intel.com>

	* elf-bfd.h (elf_link_hash_entry): Add a dynamic field.
	(bfd_elf_link_mark_dynamic_symbol): New.
	(SYMBOLIC_BIND): New.

	* elf32-i386.c (elf_i386_check_relocs): Replace info->symbolic
	with SYMBOLIC_BIND (info, h).
	(elf_i386_relocate_section): Likewise.
	* elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
	(elf64_x86_64_relocate_section): Likewise.
	* elfxx-ia64.c (elfNN_ia64_check_relocs): Likewise.

	* elflink.c (bfd_elf_link_mark_dynamic_symbol): New.
	(bfd_elf_record_link_assignment): Call
	bfd_elf_link_mark_dynamic_symbol on new entry.
	(_bfd_elf_merge_symbol): Likewise.
	(_bfd_elf_export_symbol): Return if the symbol isn't exported.
	(_bfd_elf_fix_symbol_flags): Replace info->symbolic with
	SYMBOLIC_BIND (info, h).
	(_bfd_elf_dynamic_symbol_p): Likewise.
	(_bfd_elf_symbol_refs_local_p): Likewise.
	(bfd_elf_size_dynamic_sections): Updated.

include/

2006-09-07  H.J. Lu  <hongjiu.lu@intel.com>

	* bfdlink.h (bfd_elf_dynamic_list): New.
	(bfd_link_info): Add a dynamic field.

ld/

2006-09-07  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (CXX): Set to g++.
	(CXX_FOR_TARGET): Likewise.
	* Makefile.in: Regenerated.

	* NEWS: Mention --dynamic-list.

	* ld.texinfo: Document --dynamic-list.

	* ldgram.y: Support dynamic list.

	* ldlang.c (lang_process): Call lang_finalize_version_expr_head
	on link_info.dynamic if needed.
	(lang_append_dynamic_list): New.
	(lang_append_dynamic_list_cpp_typeinfo): New.
	* ldlang.h (lang_append_dynamic_list): Likewise.
	* ldlang.h (lang_append_dynamic_list_cpp_typeinfo): Likewise.

	* ldlex.h (input_enum): Add input_dynamic_list.
	* ldlex.l: Handle it.

	* ldmain.c (main): Initialize link_info.dynamic.

	* lexsup.c (option_values): Add OPTION_DYNAMIC_LIST and
	OPTION_DYNAMIC_LIST_CPP_TYPEINFO.
	(ld_options): Add entries for OPTION_DYNAMIC_LIST and
	OPTION_DYNAMIC_LIST_CPP_TYPEINFO.
	(parse_args): Handle OPTION_DYNAMIC_LIST and
	OPTION_DYNAMIC_LIST_CPP_TYPEINFO.

ld/testsuite/

2006-09-07  H.J. Lu  <hongjiu.lu@intel.com>

	* ld-elf/dl1.c: New file.
	* ld-elf/dl1.list: Likewise.
	* ld-elf/dl1.out: Likewise.
	* ld-elf/dl1main.c: Likewise.
	* ld-elf/dl2.c: Likewise.
	* ld-elf/dl2.list: Likewise.
	* ld-elf/dl2a.out: Likewise.
	* ld-elf/dl2b.out: Likewise.
	* ld-elf/dl2main.c: Likewise.
	* ld-elf/dl2xxx.c: Likewise.
	* ld-elf/dl2xxx.list: Likewise.
	* ld-elf/dl3.cc: Likewise.
	* ld-elf/dl3.list: Likewise.
	* ld-elf/dl3a.out: Likewise.
	* ld-elf/dl3b.out: Likewise.
	* ld-elf/dl3header.h: Likewise.
	* ld-elf/dl3main.cc: Likewise.

	* ld-elf/shared.exp: Updated.

	* lib/ld-lib.exp (run_ld_link_exec_tests): Take an optional
	argument for source language. Use CC/CXX for link, depending
	on source language.
	(run_cc_link_tests): Likewise.
2006-09-07 17:16:34 +00:00
Nick Clifton
7c94efc522 * emulparams/h8300elf.sh: _tinydata should not be placed in relocatables.
* emulparams/h8300.sh: Likewise.
* emulparams/h8300sxelf.sh: Likewise.
2006-09-07 17:01:10 +00:00
H.J. Lu
88b882e985 2006-09-05 H.J. Lu <hongjiu.lu@intel.com>
PR ld/3015
	* emultempl/elf32.em: Enable "-z relro" only if $COMMONPAGESIZE
	is defined.
2006-09-05 16:26:29 +00:00
Nathan Sidwell
68bbb9f788 * ldlang.c (walk_wild): Allow * to glob '/' in wildcarded match. 2006-08-29 11:27:45 +00:00
Alan Modra
a0c4652421 Adjust target test. 2006-08-29 05:16:18 +00:00
Alan Modra
0e7461c15f New tests. 2006-08-29 01:24:17 +00:00
Alan Modra
40cf2291a7 * scripttempl/elf.sc: Ensure that crtbegin and crtend entries will
not match random object files in a path containing "crtbegin" or
	"crtend" as part of a directory name.
	* scripttempl/armbpabi.sc: Likewise.
	* scripttempl/crisaout.sc: Likewise.
	* scripttempl/elf32crx.sc: Likewise.
	* scripttempl/elf32sh-symbian.sc: Likewise.
	* scripttempl/elf_chaos.sc: Likewise.
	* scripttempl/elfd10v.sc: Likewise.
	* scripttempl/elfd30v.sc: Likewise.
	* scripttempl/elfxtensa.sc: Likewise.
	* scripttempl/iq2000.sc: Likewise.
	* scripttempl/mmo.sc: Likewise.
	* scripttempl/xstormy16.sc: Likewise.
2006-08-28 01:52:56 +00:00
Bob Wilson
74869ac7a4 bfd/
* elf32-xtensa.c (xtensa_get_property_section_name): Delete.
	(xtensa_get_property_section): New.
	(xtensa_read_table_entries): Use xtensa_get_property_section.
	(relax_property_section, xtensa_get_property_predef_flags): Handle
	group name suffixes in property section names.
	(match_section_group): New.
gas/
	* config/tc-xtensa.c (FINI_LITERAL_SECTION_NAME): Delete.
	(INIT_LITERAL_SECTION_NAME): Delete.
	(lit_state struct): Remove segment names, init_lit_seg, and
	fini_lit_seg.  Add lit_prefix and current_text_seg.
	(init_literal_head_h, init_literal_head): Delete.
	(fini_literal_head_h, fini_literal_head): Delete.
	(xtensa_begin_directive): Move argument parsing to
	xtensa_literal_prefix function.
	(xtensa_end_directive): Deallocate lit_prefix field of lit_state.
	(xtensa_literal_prefix): Parse the directive argument here and
	record it in the lit_prefix field.  Remove code to derive literal
	section names.
	(linkonce_len): New.
	(get_is_linkonce_section): Use linkonce_len.  Check for any
	".gnu.linkonce.*" section, not just text sections.
	(md_begin): Remove initialization of deleted lit_state fields.
	(xtensa_reorder_segments, xtensa_post_relax_hook): Remove references
	to init_literal_head and fini_literal_head.
	(xtensa_move_literals): Likewise.  Skip literals for .init and .fini
	when traversing literal_head list.
	(match_section_group): New.
	(cache_literal_section): Rewrite to determine the literal section
	name on the fly, create the section and return it.
	(xtensa_switch_to_literal_fragment): Adjust for cache_literal_section.
	(xtensa_switch_to_non_abs_literal_fragment): Likewise.
	(xtensa_create_property_segments, xtensa_create_xproperty_segments):
	Use xtensa_get_property_section from bfd.
	(retrieve_xtensa_section): Delete.
	* doc/c-xtensa.texi (Xtensa Options): Fix --text-section-literals
	description to refer to plural literal sections and add xref to
	the Literal Directive section.
	(Literal Directive): Describe new rules for deriving literal section
	names.  Add footnote for special case of .init/.fini with
	--text-section-literals.
	(Literal Prefix Directive): Replace old naming rules with xref to the
	Literal Directive section.
ld/
	* emulparams/elf32xtensa.sh (.xt.prop): Add .xt.prop.*.
	* scripttempl/elfxtensa.sc (.text): Add .literal.*.
2006-08-25 00:08:55 +00:00
Nick Clifton
85852e367c * ldlang.c (lang_size_sections_1, lang_assignment_statement_enum):
Adjust the current address of DEFAULT_MEMORY_REGION even when dot hasn't changed.
2006-08-24 14:59:24 +00:00
H.J. Lu
3085c3308f 2006-08-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/3052
	* ld-elf/loadaddr1.t: Add "AT (ADDR(.data))".
	* ld-elf/loadaddr2.t: Likewise.
2006-08-23 14:45:30 +00:00
H.J. Lu
20acfda2ef 2006-08-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/3103
	* ld-elf/overlay.d: New file.
	* ld-elf/overlay.s: Likewise.
	* ld-elf/overlay.t: Likewise.
2006-08-23 14:43:56 +00:00
Alan Modra
3e23777d0b * ldexp.c (fold_name <LOADADDR>): Return an absolute value
rather than a section relative value.
2006-08-23 01:35:31 +00:00
Nick Clifton
57da97f58c * configure.tgt: Set targ_emul to arm_wince_pe for ARM Windows CE targets. 2006-08-22 11:50:33 +00:00
Alan Modra
dc0b6aa05a * NEWS: Mention LMA default change.
* ld.texinfo (Output Section LMA): Update default description.
	(Location Counter): Clarify backward movement.
	* ldlang.c (lang_size_sections_1): Leave non-alloc sections with
	default lma equal to vma.  Warn on backward movement of dot.
2006-08-22 07:41:05 +00:00
Nick Clifton
7148cc28af bfd
* Makefile.am: Add rules to build pe-arm-wince.lo and pei-arm-wince.lo objects.
* Makefile.in: Regenerate.
* pe-arm-wince.c: New file.
* pei-arm-wince.c: New file.
* pei-arm.c: Remove ARM_WINCE block.
* pe-arm.c: Remove ARM_WINCE block. Rename
bfd_arm_pe_allocate_interworking_sections,
bfd_arm_pe_get_bfd_for_interworking, and
bfd_arm_pe_process_before_allocation to
bfd_armpe_allocate_interworking_sections,
bfd_armpe_get_bfd_for_interworking, and
bfd_armpe_process_before_allocation. Move them before including bfd.h.
* bfd.c: ARM wince bfd format names were renamed. Adjust.
* coff-arm.c [ARM_WINCE]: Adjust so Windows CE doesn't end up with unexpected/conflicting relocs.
* targets.c: The arm-wince-pe target got its own new vector.  Adjust.
* config.bfd: Likewise.
* configure.in: Likewise.
* configure: Regenerate.

binutils
* configure.in: Split arm-pe and arm-wince-pe. Build dlltool with -DDLLTOOL_ARM_WINCE for Windows CE case.
* configure: Regenerate.
* dlltool.c: Add support for arm-wince.

gas
* Makefile.am (TARG_ENV_HFILES): Add te-wince-pe.h.
* Makefile.in: Regenerate.
* config/tc-arm.h [TARGET_FORMAT]: ARM wince bfd names were  renamed. Adjust.

ld
* Makefile.am: Split arm-wince into its own emulation.
* Makefile.in: Regenerate.
* configure.tgt: Set targ_emul to arm_wince_pe for ARM Windows CE targets.
* pe-dll.c : Define PE_ARCH_arm_wince.
  (pe_detail_list): Add PE_ARCH_arm_wince case.
  (make_one): Handle PE_ARCH_arm_epoc and PE_ARCH_arm_wince cases.
* emulparams/arm_wince_pe.sh: New file.
* emultempl/pe.em: Handle new TARGET_IS_arm_wince_pe define.
  Remap bfd_arm_allocate_interworking_sections, bfd_arm_get_bfd_for_interworking and
  bfd_arm_process_before_allocation for arm-pe and arm-wince-pe targets too.
  (gld_${EMULATION_NAME}_recognized_file): Handle arm-wince and arm-epoc bfd format names.
2006-08-21 08:12:46 +00:00
Paul Brook
a4fd1a8ee5 2006-08-18 Paul Brook <paul@codesourcery.com>
bfd/
	* elf32-arm.c (elf32_arm_link_hash_entry): Add export_glue.
	(elf32_arm_link_hash_newfunc): Initialize export_glue.
	(record_arm_to_thumb_glue): Return stub symbol.
	(elf32_arm_create_thumb_stub): New function.
	(elf32_arm_to_thumb_stub): Use it.
	(elf32_arm_to_thumb_export_stub): New function.
	(elf32_arm_begin_write_processing): New function.
	(allocate_dynrelocs): Allocate Arm stubs.
	(elf_backend_begin_write_processing): Define.
	(elf32_arm_symbian_begin_write_processing): Remove ATTRIBUTE_UNUSED.
	Call elf32_arm_begin_write_processing.

	ld/
	* emultempl/armelf.em (arm_elf_before_allocation): Call
	gld${EMULATION_NAME}_before_allocation after setting interworking bfd.

	ld/testsuite/
	* ld-arm/arm-elf.exp (armelftests): Add armthumb-lib.so.  Add
	-use-blx to mixed-lib.so
	* ld-arm/armthumb-lib.d: New file.
	* ld-arm/armthumb-lib.sym: New file.
2006-08-18 15:00:18 +00:00
H.J. Lu
7c9e8d9811 2006-08-18 H.J. Lu <hongjiu.lu@intel.com>
PR ld/3052
	* ld-elf/loadaddr.s: New file.
	* ld-elf/loadaddr1.d: Likewise.
	* ld-elf/loadaddr1.t: Likewise.
	* ld-elf/loadaddr2.d: Likewise.
	* ld-elf/loadaddr2.t: Likewise.
2006-08-18 14:38:00 +00:00
Christopher Faylor
19b3b564f1 * pe-dll.c (autofilter_symbolprefixlist): Remove .idata$.
(generate_reloc): Revert to skipping sections without a SEC_LOAD flag, and to
not skipping .idata* sections.
2006-08-17 17:02:13 +00:00
Alan Modra
ee4bf8d232 bfd/
* elf64-ppc.c (create_linkage_sections): Align .glink to 8 bytes.
	(ppc64_elf_build_stubs): Use new lazy linking stub.
ld/testsuite/
	* ld-powerpc/tlsexe.d: Update for lazy link stub change.
	* ld-powerpc/tlsexe.r: Likewise.
	* ld-powerpc/tlsexetoc.d: Likewise.
	* ld-powerpc/tlsexetoc.r: Likewise.
	* ld-powerpc/tlsso.d: Likewise.
	* ld-powerpc/tlstocso.d: Likewise.
2006-08-17 08:21:06 +00:00
H.J. Lu
c9df6640d5 bfd/
2006-08-16  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3015
	* elf.c (get_program_header_size): Add a PT_GNU_RELRO segment
	only if there is a PT_DYNAMIC segment.
	(_bfd_elf_map_sections_to_segments): Likewise.
	(assign_file_positions_for_load_sections): Set PT_GNU_RELRO
	segment alignment to 1.

ld/testsuite/

2006-08-16  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3015
	* ld-elf/binutils.exp: Add tests for "-z relro".
2006-08-17 02:04:53 +00:00
Alan Modra
cde9e0be8b ld/
PR 3052
	* ldlang.h (lang_output_section_statement_type): Replace
	"processed" field with "processed_vma" and "processed_lma".
	* ldlang.c (lang_do_assignments_1): Move lma setting code..
	(lang_size_sections_1): ..to here.
	(lang_reset_memory_regions): Adjust for
	lang_output_section_statement_type change.
	* ldexp.c (fold_name): Likewise.

And this is something I forgot the check in from the previous patch.
ld/testsuite/
	* ld-scripts/overlay-size-map.d: Adjust.
2006-08-16 08:31:45 +00:00
Thiemo Seufer
f46cb54199 * ld-elfcomm/elfcomm.exp (dump_common1): Extend regexp to match also
MIPS small commons.
2006-08-11 14:05:12 +00:00
Mike Frysinger
50571e4625 2006-08-08 Peter S. Mazinger <ps.m@gmx.net>
* emulparams/armelf.sh (MAXPAGESIZE): Changed to
	"CONSTANT (MAXPAGESIZE)".
2006-08-09 00:52:31 +00:00
H.J. Lu
e6f2cbf536 2006-08-08 H.J. Lu <hongjiu.lu@intel.com>
PR ld/3006
	* ldlang.c (lang_section_bst_type): Moved to ...
	* ldlang.h: Here.

	* ldlang.h (lang_wild_statement_struct): Add a tree field.

	* ldlang.c (wild_sort_fast): Use the tree field for BST.
	(wild): Likeise.
	(analyze_walk_wild_section_handler): Initialize the tree field.
2006-08-08 16:08:47 +00:00
H.J. Lu
0d0999db2f ld/
2006-08-08  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3009
	* ldlang.c (update_wild_statements): Update the whole wild
	section list.

ld/testsuite/

2006-08-08  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/3009
	* ld-scripts/sort.t: New file.
	* ld-scripts/sort_b_a-1.d: Likewise.
	* ld-scripts/sort_b_a-1.s: Likewise.
	* ld-scripts/sort_b_n-1.d: Likewise.
	* ld-scripts/sort_b_n-1.s: Likewise.
2006-08-08 15:07:16 +00:00