H.J. Lu [Tue, 10 Jul 2007 02:40:31 +0000 (02:40 +0000)]
2007-07-09 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (bfd_elf_record_link_assignment): Handle indirect
symbol.
(_bfd_elf_merge_symbol): Properly update normal symbol when
overriding the versioned symbol from a dynamic library.
Roland McGrath [Mon, 9 Jul 2007 21:25:34 +0000 (21:25 +0000)]
2007-07-09 Roland McGrath <roland@redhat.com>
* emultempl/elf32.em (gld${EMULATION_NAME}_add_option): Add --build-id.
(gld${EMULATION_NAME}_handle_option): Handle --build-id.
(gld${EMULATION_NAME}_list_options): List --build-id.
(gld${EMULATION_NAME}_after_open): If --build-id was given,
synthesize a ".note.gnu.build-id" section and cache it in elf_tdata.
* ld.texinfo (Options): Describe --build-id.
* NEWS: Mention --build-id.
Roland McGrath [Mon, 9 Jul 2007 21:23:43 +0000 (21:23 +0000)]
2007-07-09 Roland McGrath <roland@redhat.com>
* elf-bfd.h (struct elf_obj_tdata): Add members
emit_note_gnu_build_id and note_gnu_build_id_sec.
* elf.c (_bfd_id_note_section_size): New global function.
(read_hex, _bfd_elf_write_build_id_section): New static functions.
(_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
if emit_note_gnu_build_id is set.
* Makefile.am (elf.lo): Update dependencies.
Michael Snyder [Thu, 5 Jul 2007 22:47:27 +0000 (22:47 +0000)]
2007-07-05 Michael Snyder <msnyder@access-company.com>
* event-top.c (cli_command_loop): Prompt string can (and should)
be freed after call to readline (Coverity). Also move local var
declarations into block where they are used.
* tui/tui-interp.c (tui_command_loop): Prompt string can (and
should) be freed after call to readline (Coverity). Also move
local var declarations into block where they are used.
2006-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
* scripttemp/elf32cr16.sc: Default linker script.
* emulparams/elf32cr16.sh: Emulation script.
* emultempl/cr16elf.em: Emulation script.
* Makefile.am: Add entry to make cr16 target.
* Makefile.in: Regenerate.
* configure.tgt: Specify default and other emulation parameters
for cr16.
* ChangeLog: Added CR16 target entry.
* NEWS: Announce the support for the CR16 new target.
2007-06-27 Alan Modra <amodra@bigpond.net.au>
* pe-dll.c: Rename uses of bfd.next to bfd.archive_next throughout.
* Makefile.am: Add eelf32_spu.o rule.
* Makefile.in: Regenerate.
* emultempl/spuelf.em: Revert last change. Instead use EMBEDSPU
defined in Makefile for embedspu name.
2007-06-18 Alan Modra <amodra@bigpond.net.au>
* emultempl/spuelf.em (embedded_spu_file): Deduce embedspu program
name prefix from that of ld.
* emultempl/spuelf.em (base_name): New function, split out from..
(embedded_spu_file) ..here. Pass -fPIC or -fpie to embedspu
invocation if we deduce a shared lib or position independent
executable build by looking at ctrbegin* linker input files.
2007-05-29 Alan Modra <amodra@bigpond.net.au>
* emultempl/spu_ovl.S (__rv_pattern, __cg_pattern): Set symbol
types and sizes.
* emultempl/spu_ovl.o: Regenerate.
* ld.h (args_type, ld_config_type): Reorder fields.
* ldmain.c (main): Don't initialise a bunch of vars we know are
zero already.
2007-05-05 Anatoly Sokolov <aesok@post.ru>
* multempl/avrelf.em (PARSE_AND_LIST_ARGS_CASES): Add new value for
"--pmem-wrap-around".
(PARSE_AND_LIST_OPTIONS): Describe new value for "--pmem-wrap-around".
2007-05-03 Bob Wilson <bob.wilson@acm.org>
* scripttempl/elfxtensa.sc: Merge changes from elf.sc.
2007-05-03 Alan Modra <amodra@bigpond.net.au>
* ld.texinfo (--no-warn-search-mismatch): Document.
* ldfile.c (ldfile_try_open_bfd): Don't warn about skipping
incompatible libraries if --no-warn-search-mismatch.
* ld.h (args_type): Add warn_search_mismatch.
* ldmain.c (main): Init it.
* lexsup.c (enum option_values): Add OPTION_NO_WARN_SEARCH_MISMATCH.
(ld_options): Add entry for --no-warn-search-mismatch.
(parse_args): Handle OPTION_NO_WARN_SEARCH_MISMATCH.
2007-05-03 Alan Modra <amodra@bigpond.net.au>
* scripttempl/elf.sc: Add .debug_pubtypes and .debug_ranges.
2007-05-01 Robert Millan <rmh@aybabtu.com>
* ldlang.c (lang_check): Error on architecture mismatch.
2007-04-30 Alan Modra <amodra@bigpond.net.au>
* ldmain.c (link_callbacks): Init info and minfo fields.
* ldmisc.c (minfo): Do nothing if no map file.
* emultempl/spuelf.em (stack_analysis, emit_stack_syms): New vars.
(spu_after_open): Adjust spu_elf_create_sections call.
(spu_before_allocation): Likewise for spu_elf_size_stubs.
(OPTION_SPU_STACK_ANALYSIS, OPTION_SPU_STACK_SYMS): Define.
(PARSE_AND_LIST_LONGOPTS): Add new entries.
(PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise.
* gen-doc.texi: Add @set for SPU and other missing targets.
* ld.texinfo: Update man page selection to match gen-doc.texi.
Document SPU features.
2007-04-28 Alan Modra <amodra@bigpond.net.au>
* ldcref.c (struct cref_hash_entry): Make "demangled" const.
(cref_fill_array): Adjust for changed demangler.
* ldlang.c (lang_one_common): Likewise.
Many files: Include sysdep.h first. Remove duplicate headers.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
2007-04-24 Alan Modra <amodra@bigpond.net.au>
* Makefile.in: Regenerate.
2007-04-19 Alan Modra <amodra@bigpond.net.au>
* ldcref.c (cref_fill_array): Call bfd_demangle rather than demangle.
* ldlang.c (lang_one_common): Likewise.
* ldmisc.c (vfinfo): Likewise.
(demangle): Delete.
* ldmisc.h (demangle): Delete.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
2007-04-18 Alan Modra <amodra@bigpond.net.au>
* ldlang.h (enum section_type): Add overlay_section.
* ldlang.c (lang_add_section): Handle flags for overlay_section
as per normal_section.
(lang_size_sections_1): When setting lma, detect overlays by
os->sectype rather than by looking for overlapping vmas.
(lang_enter_overlay_section): Use overlay_section type.
(lang_leave_overlay): Set first overlay section to normal.
* ldlang.c (relax_sections): Initialize and increment
link_info.relax_trip.
2007-04-04 Paul Brook <paul@codesourcery.com>
* configure.tgt: Loosen checks for arm uclinux eabi targets.
2007-04-02 H.J. Lu <hongjiu.lu@intel.com>
PR ld/4090
* ldexp.h (node_type): Add lineno.
* ldexp.c: Include "ldlex.h".
(exp_intop): Set the lineno field from lineno.
(exp_bigintop): Likewise.
(exp_relop): Likewise.
(exp_nameop): Likewise.
(exp_binop): Set the lineno field from lineno of lhs.
(exp_trinop): Likewise.
(exp_unop): Set the lineno field from lineno of child.
(exp_assop): Set the lineno field from lineno of src.
(exp_provide): Likewise.
(exp_assert): Set the lineno field from lineno of exp.
(exp_get_abs_int): Set lineno from lineno of nonconstant
expression when report problem.
2007-03-29 Richard Sandiford <richard@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
* NEWS: Mention -l:foo.
* ld.texinfo: Document it.
* ldlang.c (new_afile): If a lang_input_file_is_l_enum
entry as a name beginning with a coloh, convert it to a
lang_input_file_is_search_file_enum entry without the colon.
2007-03-28 Richard Sandiford <richard@codesourcery.com>
* ld.h (ld_config_type): Add rpath_separator.
* ldmain.c (main): Initialize it.
* lexsup.c (parse_args): Honor config.rpath_separator.
* emultempl/elf32.em (gld${EMULATION_NAME}_search_needed): Likewise.
(gld${EMULATION_NAME}_add_sysroot): Likewise.
(gld${EMULATION_NAME}_parse_ld_so_conf): Use config.rpath_separator
rather than ':' when building the path.
* emultempl/vxworks.em (vxworks_before_parse): New function.
Override config.rpath_separator.
(LDEMUL_AFTER_OPEN): Do not change if EXTRA_EM_FILE has been
set to gld${EMULATION_NAME}_after_open; #define that identifier
to vxworks_foo instead.
(LDEMUL_BEFORE_PARSE): Override in the same way as LDEMUL_AFTER_OPEN.
2007-03-28 Richard Sandiford <richard@codesourcery.com>
Phil Edwards <phil@codesourcery.com>
* ld.texinfo: Put the contents after the title page rather
than at the end of the document.
2007-03-26 Alan Modra <amodra@bigpond.net.au>
* Makefile.am: Add dependency on ldemul-list.h for powerpc and
spu target emul files.
* configure.in: Check for mkstemp and waitpid.
* Makefile.in: Regenerate.
* configure: Regenerate.
* config.in: Regenerate.
* ldlang.c (input_file_chain): Make global.
(lang_add_input_file): Don't set lang_has_input_file here.
* ldlang.h (input_file_chain): Declare.
* emultempl/ppc32elf.em (ppc_recognized_file): New function.
(LDEMUL_RECOGNIZED_FILE): Define.
* emultempl/ppc64elf.em (ppc64_recognized_file): New function.
(LDEMUL_RECOGNIZED_FILE): Define.
* emultempl/spuelf.em (struct tflist): New.
(tmp_file_list): New var.
(clean_tmp, embedded_spu_file): New functions.
2007-03-24 Alan Modra <amodra@bigpond.net.au>
* ldlang.c (lang_insert_orphan): Provide start/stop loadaddr syms
rather than defining unconditionally.
(lang_leave_overlay_section): Likewise.
* ld.texinfo (Overlay Description): Update description and examples
for start/stop syms.
2007-03-22 Joseph Myers <joseph@codesourcery.com>
* ld.texinfo: Include VERSION_PACKAGE when reporting version.
* emultempl/spuelf.em (_binary_builtin_ovl_mgr_start): Rename
to _binary_spu_ovl_o_start.
(_binary_builtin_ovl_mgr_end): Rename to _binary_spu_ovl_o_end.
(spu_elf_load_ovl_mgr): Fatal error on missing overlay manager.
* emultempl/spu_inc.s: Rename symbols.
* emultempl/spu_none.s: New file.
* emultempl/spu_ovl.S: Update copyright.
* Makefile.am (spu_inc.o): Try building with ld -r first, then
gas incbin, then build without overlay manager.
* Makefile.in: Regenerate.
2007-02-22 Joseph Myers <joseph@codesourcery.com>
* configure.tgt (mips64*el-*-linux-*, mips64*-*-linux-*,
mips*el-*-linux-*, mips*-*-linux-*): Set
targ_extra_libpath=$targ_extra_emuls.
* ldexp.c (fold_name <LOADADDR>): Ensure result is always absolute.
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* ldcref.c (check_reloc_refs): Compare section for local syms.
2007-02-13 Alan Modra <amodra@bigpond.net.au>
* emultempl/spu_ovl.S (__ovly_return, __ovly_load): Set sym size.
(__ovly_load_event): Define.
(size): Rename to osize.
* emultempl/spu_ovl.o: Regenerate.
2007-02-13 Alan Modra <amodra@bigpond.net.au>
* emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Add ".branch_lt".
* emultempl/ppc64elf.em (ppc_add_stub_section): Create without
SEC_RELOC flag set.
2007-02-09 H.J. Lu <hongjiu.lu@intel.com>
* configure.in (targ_extra_emuls): Add $targ64_extra_emuls if
want64 is true.
(targ_extra_libpath): Add $targ64_extra_libpath if want64 is
true
* configure: Regenerated.
* configure.tgt (targ_extra_libpath): Initialize.
(targ64_extra_emuls): New. Document. Initialize.
(targ64_extra_libpath): Likewise.
(i[3-7]86-*-linux-*): Set targ64_extra_emuls and
targ64_extra_libpath.
(powerpc*-*-linux*): Likewise.
(s390-*-linux*): Likewise.
2007-02-07 Paul Brook <paul@codesourcery.com>
* configure.tgt: Add arm*-*-uclinux-*eabi.
2007-02-06 H.J. Lu <hongjiu.lu@intel.com>
* ldlang.c (lang_size_sections_1): Add a missing `)'.
2007-02-06 Alan Modra <amodra@bigpond.net.au>
PR ld/3966
* ldlang.c (lang_size_sections_1): Don't warn on backwards dot
move unless section size is non-zero.
2007-02-05 Dave Brolley <brolley@redhat.com>
* Makefile.am (ALL_EMULATIONS): Add support for Toshiba MeP.
* configure.tgt: Likewise.
* scripttempl/mep.sc: New file.
* emulparams/elf32mep.sh: New file.
* Makefile.in: Regenerate.
2006-01-29 Julian Brown <julian@codesourcery.com>
* 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.
* 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 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.
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.
* 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.
Nick Clifton [Thu, 5 Jul 2007 09:51:30 +0000 (09:51 +0000)]
* resrc.c: (read_rc_file): Add include path of user passed rc input file.
* windres.c: (windres_add_include_dir): New.
(main): Use of windres_add_include_dir.
* windres.h: (windres_add_include_dir): Add prototype.
gas/
* config/tc-mips.c (mips_cpu_info_table): Add new entries for
{24k,24ke,34k,74k}f{2_1,1_1,x}. Also add an entry for 74kf3_2.
Deprecate *x and *fx.
* doc/c-mips.texi: Document the new CPU arguments. Deprecate
*x and *fx.
2007-07-03 Paul Gilliam <pgilliam@us.ibm.com>
Thiago Bauermann <bauerman@br.ibm.com>
Joseph S. Myers <joseph@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
gdb/
* remote.c (remote_check_symbols): Use
gdbarch_convert_from_func_ptr_addr.
* infcall.c (find_function_addr): Handle function descriptors
without debugging information.
* ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Renamed
from ppc64_linux_convert_from_func_ptr_addr. Handle -msecure-plt.
(ppc_linux_init_abi): Always set convert_from_func_ptr_addr.
* solib-svr4.c (solib_break_names): Remove "._dl_debug_state".
(bfd_lookup_symbol): Do not take a SECT_FLAGS argument. Always
allow SEC_CODE and SEC_DATA.
(enable_break): Update calls. Pass current_target to solib_add.
Use gdbarch_convert_from_func_ptr_addr.
* Makefile.in (XMLFILES): Add library-list.dtd.
(ALLDEPFILES): Add solib-target.o.
(solib-target.o): New rule.
* remote.c (PACKET_qXfer_libraries): New constant.
(remote_protocol_features): Add qXfer:libraries:read.
(remote_wait): Recognize library stop replies.
(remote_async_wait): Likewise. Fix typo.
(remote_xfer_partial): Handle TARGET_OBJECT_LIBRARIES.
(init_remote_async_ops): Fix typo.
(_initialize_remote): Register "set remote library-info-packet".
* solib-som.c (som_current_sos): Set addr_low and addr_high.
* solib-target.c: New file.
* solib.c (solib_map_sections): Use addr_low and addr_high instead
of textsection.
(info_sharedlibrary_command): Likewise.
(solib_add_library, solib_remove_library): New.
* solist.h (struct so_list): Replace textsection with addr_low and
addr_high.
* target.h (enum target_object): Add TARGET_OBJECT_LIBRARIES.
* NEWS: Describe new qXfer:libraries:read and shared library
event support.
* features/library-list.dtd: New.
* gdb.texinfo (Remote Configuration): Document library-info-packet.
Add other missing entries. Adjust the table size to fit.
(Stop Reply Packets): Use @itemize instead of @enumerate. Document
stop reasons including the new "library" event.
(General Query Packets): Adjust table widths for qSupported. Mention
qXfer:libraries:read reply to qSupported and document the new packet.
(Library List Format): New section.
* infrun.c (inferior_ignoring_startup_exec_events): Delete.
(start_remote): Use STOP_QUIETLY_REMOTE.
(handle_inferior_event): Do not condition TARGET_WAITKIND_LOADED
support on a SOLIB_ADD definition. Update breakpoints_inserted.
Update to match shared library event breakpoint support. Only
resume if appropriate. Handle STOP_QUIETLY_REMOTE.
(normal_stop): Handle TARGET_WAITKIND_LOADED.
* fork-child.c (startup_inferior): Do not set
inferior_ignoring_startup_exec_events
* inferior.h (inferior_ignoring_startup_exec_events): Delete
declaration.
(enum stop_kind): Improve documentation. Add STOP_QUIETLY_REMOTE.
* config/gdbserver.exp (gdb_reconnect): New.
* gdb.base/so-disc-shr.c, gdb.base/solib-disc.c,
gdb.base/solib-disc.exp: New files.
* lib/gdb.exp (gdb_test_multiple): Allow tests to match "Ending
remote debugging".
(gdb_compile): Add shlib_load flag.
* lib/gdbserver-support.exp (gdbserver_run): Save the protocol and
port.
(gdbserver_reconnect): New.
2007-07-01 Daniel Jacobowitz <dan@codesourcery.com>
* top.c (gdb_readline_wrapper_line): Call rl_callback_handler_remove.
(struct gdb_readline_wrapper_cleanup): Remove prompt_orig.
(gdb_readline_wrapper_cleanup): Do not reset the prompt.
(gdb_readline_wrapper): Do not save the prompt. Pass our prompt
to display_gdb_prompt.
2007-07-01 Nick Roberts <nickrob@snap.net.nz>
Daniel Jacobowitz <dan@codesourcery.com>