Age | Commit message (Collapse) | Author | Files | Lines |
|
support yet.
* elf32-mips.c (bfd_mips_elf32_swap_gptab_in): New function.
(bfd_mips_elf32_swap_gptab_out): New function.
(mips_elf_object_p): If last symbol is LOCAL, set elf_bad_symtab.
(mips_elf_final_write_processing): Set sh_info field for .gptab.*
sections.
(mips_elf_fake_sections): Set sh_entsize for .gptab.* sections.
(mips_elf_read_ecoff_info): Read and free external symbols last,
not first, for clarity.
(struct mips_elf_link_hash_entry): Define new structure.
(struct mips_elf_link_hash_table): Define new structure.
(mips_elf_link_hash_lookup): Define new macro.
(mips_elf_link_hash_traverse): Define new macro.
(mips_elf_hash_table): Define new macro.
(mips_elf_link_hash_newfunc): New static function.
(mips_elf_link_hash_table_create): New static function.
(mips_elf_add_symbol_hook): New static function.
(struct extsym_info): Define new structure.
(mips_elf_get_extr, mips_elf_set_index): Remove.
(mips_elf_output_extsym): New static function.
(gptab_compare): New static function.
(mips_elf_final_link): Rewrite to use ELF backend linker, and to
merge gptab information in input files.
(mips_elf_relocate_hi16): New static function.
(mips_elf_relocate_section): New static function.
(bfd_elf32_bfd_link_hash_table_create): Define as macro before
including elf32-target.h.
(elf_backend_relocate_section): Likewise.
(elf_backend_add_symbol_hook): Likewise.
* elf.c (_bfd_elf_link_hash_newfunc): Rename from
elf_link_hash_newfunc and make globally visible. Change caller.
(_bfd_elf_link_hash_table_init): New function, broken out of
_bfd_elf_link_hash_table_create.
(_bfd_elf_link_hash_table_create): Use
_bfd_elf_link_hash_table_init.
* libelf.h (struct elf_obj_tdata): Add new field bad_symtab.
(elf_bad_symtab): Define new accessor macro.
(_bfd_elf_link_hash_newfunc): Declare.
(_bew_elf_link_hash_table_init): Declare.
* elfcode.h (elf_object_p): Call backend object_p hook after
swapping in all the section headers.
(map_program_segments): Correct typo: Internal for External.
(elf_link_add_object_symbols): If elf_bad_symtab is set, read all
the symbols. Skip STB_LOCAL symbols rather than giving an error.
(elf_bfd_final_link): If elf_bad_symtab is set, allocate space for
all symbols, not just locals.
(elf_link_output_extsym): Only skip a symbol not mentioned by a
regular file if it is mentioned by a dynamic object.
(elf_link_input_bfd): If elf_bad_symtab is set, read all the
symbols.
|
|
.reginfo an address.
(OTHER_READWRITE_SECTIONS): Don't give .lit4 or .lit8 an address.
(OTHER_SECTIONS): Define for .gptab.sdata and .gptab.sbss.
* scripttempl/elf.sc: Use OTHER_SECTIONS at end of script.
|
|
/lisa/test/rob/progressive/gdb/testsuite for these fixes.
|
|
|
|
checking.
|
|
for SOM fixups which are never passed to BFD.
|
|
sanitized.
|
|
|
|
|
|
dependencies.
|
|
|
|
the dynamic linking information for the benefit of the debugger.
From Peter Schauer.
* elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
|
|
code repeated three times in bfd_section_from_shdr in elfcode.h.
* libelf.h (_bfd_elf_make_section_from_shdr): Declare.
* elfcode.h (bfd_section_from_shdr): Use new function
_bfd_elf_make_section_from_shdr to create BFD sections. If a
reloc section does not use the main symbol table, or it is part of
the process image, treat it as a normal section, not relocs.
* elf32-mips.c (mips_elf_section_from_shdr): Use new function
_bfd_elf_make_section_from_shdr.
|
|
|
|
target_activity_fd.
* inflow.c, inferior.h: New functions set_sigio_trap and
clear_sigio_trap.
* inftarg.c (child_wait), procfs.c (wait_fd): Call them.
|
|
stack in unhandled cases. Still covered by previous ChangeLog entry.
|
|
15 to 14 to match SVR4 ar.
|
|
Don't set use_gnu_ld to no for *-*-sysv4; that only controls
whether we pass down --with-gnu-ld anyhow.
|
|
config/mt-a29k-udi, config/mt-i386-aout, config/mt-i960-nindy,
config/mt-sparc-aout, config/udi-gdb.exp, config/unix-gdb.exp,
config/unknown.exp, gdb.t00/default.exp, gdb.t00/help.exp,,
gdb.t00/teststrategy.exp, gdb.t01/Makefile.in, gdb.t02/Makefile.in,
gdb.t02/whatis.exp, gdb.t03/Makefile.in, gdb.t03/gdbme.c,
gdb.t04/Makefile.in, gdb.t05/Makefile.in, gdb.t06/Makefile.in,
gdb.t06/break.exp, gdb.t06/signals.c, gdb.t06/signals.exp,
gdb.t08/Makefile.in, gdb.t08/opaque.exp, gdb.t09/Makefile.in,
gdb.t10/Makefile.in, gdb.t11/Makefile.in, gdb.t12/Makefile.in,
gdb.t13/Makefile.in, gdb.t15/Makefile.in, gdb.t15/funcargs.exp,
gdb.t15/gdbme.c, gdb.t15/return.exp, gdb.t16/Makefile.in,
gdb.t17/Makefile.in, gdb.t17/callfuncs.exp, gdb.t17/gdbme.c,
gdb.t20/Makefile.in, gdb.t21/Makefile.in, gdb.t21/cplusfuncs.exp,
gdb.t22/Makefile.in, gdb.t22/virtfunc.exp, gdb.t23/Makefile.in,
gdb.t24/demangle.exp, lib/gdb.exp: Check in Rob's testing
changes from 94Q1.
|
|
OBJ_ELF.
|
|
* ld.h (ld_config_type): Add field dynamic_link.
* ldmain.c (main): Initialize config.dynamic_link to false. Warn
on attempts to use -r with -relax, -call_shared or -s.
* lexsup.c (longopts): Separate OPTION_CALL_SHARED from
OPTION_NON_SHARED. Add OPTION_IGNORE. Adjust macro values
accordingly. Add "dy" and "non_shared" options. Change "Qy" to
OPTION_IGNORE for now. Handle OPTION_CALL_SHARED and
OPTION_NON_SHARED by setting dynamic_link field accordingly.
Handle OPTION_IGNORE by ignoring it. Clear dynamic_link field for
-r and -Ur.
* ldfile.c (ldfile_open_file): If config.dynamic_link is true, try
opening a file with a .so extension first.
* emultempl/elf32.em: New file.
* emulparams/elf32_sparc.sh (TEXT_START_ADDR): Change to 0x10000.
(NONPAGED_TEXT_START_ADDR): Likewise.
(TEMPLATE_NAME): Define as elf32.
(DATA_PLT): Define.
* emulparams/elf_i386.sh (TEMPLATE_NAME): Define as elf32.
* scripttempl/elf.sc: Add placement for new dynamic sections.
Don't use CREATE_OBJECT_SYMBOLS. Define _etext, _edata and _end
outside of any section. Don't use ALIGN(8); just let one section
VMA follow another. Put .dynbss in .bss. Don't mention debugging
sections; they'll be handled correctly anyhow.
* Makefile.in (eelf_i386.c): Depend upon elf32.em, not generic.em.
|
|
Eric Youngdale <ericy@cais.com>.
* libelf.h (struct elf_backend_data): Add new fields for dynamic
linking: elf_backend_create_dynamic_sections,
elf_backend_adjust_dynamic_symbol,
elf_backend_size_dynamic_sections,
elf_backend_finish_dynamic_symbol,
elf_backend_finish_dynamic_sections.
(struct elf_link_hash_entry): Change type of align field to
bfd_size_type. Add fields dynindx, dynstr_index, weakdef,
elf_link_hash_flags.
(struct elf_link_hash_table): Add fields dynobj, dynsymcount,
dynstr, bucketcount.
(bfd_elf32_swap_reloc_in, bfd_elf32_swap_reloc_out): Declare.
(bfd_elf32_swap_reloca_in, bfd_elf32_swap_reloca_out): Declare.
(bfd_elf32_swap_dyn_in, bfd_elf32_swap_dyn_out): Declare.
(bfd_elf32_add_dynamic_entry): Declare.
(bfd_elf64_swap_reloc_in, bfd_elf64_swap_reloc_out): Declare.
(bfd_elf64_swap_reloca_in, bfd_elf64_swap_reloca_out): Declare.
(bfd_elf64_swap_dyn_in, bfd_elf64_swap_dyn_out): Declare.
(bfd_elf64_add_dynamic_entry): Declare.
* elfcode.h (Elf_External_Dyn): Define.
(elf_swap_reloc_in): Define as macro using NAME. Make externally
visible.
(elf_swap_reloc_out): Likewise.
(elf_swap_reloca_in, elf_swap_reloca_out): Likewise.
(elf_swap_dyn_in, elf_swap_dyn_out): Define as macro using NAME
and as new externally visible function.
(elf_fake_sections): Set section type of dynamic sections based on
section names.
(elf_write_phdrs): Remove.
(assign_file_position_for_section): Add new align argument.
Change all callers.
(get_program_header_size): New static function.
(struct seg_info): Remove.
(map_program_segments): Completely rewrite.
(assign_file_positions_except_relocs): Completely rewrite.
(assign_file_positions_for_relocs): Don't set a file position for
sections which already have one. Don't bother to align the file
position here.
(section_from_elf_index): Handle SHT_HASH and SHT_DYNAMIC
section types.
(elf_section_from_bfd_section): Likewise.
(elf_slurp_symbol_table): If section_from_elf_index fails, just
use bfd_abs_section rather than returning an error.
(elf_sizeof_headers): Make useful.
(elf_link_record_dynamic_symbol): New static function.
(elf_link_add_object_symbols): Handle dynamic objects.
(elf_link_create_dynamic_sections): New static function.
(elf_add_dynamic_entry): Define as macro using NAME and as new
externally visible function.
(NAME(bfd_elf,record_link_assignment)): New function.
(elf_buckets): New static variable.
(NAME(bfd_elf,size_dynamic_sections)): New function.
(struct elf_final_link_info): Add dynsym_sec and hash_sec fields.
(elf_bfd_final_link): Handle dynamic linking. Create a section
symbol for all ELF sections, not all BFD sections. Store section
symbol index in target_index field, not index field. Traverse
over global symbols even if stripping.
(elf_link_output_extsym): Output dynamic symbols. Mark symbols
defined by dynamic objects as undefined.
(elf_link_input_bfd): Ignore dynamic objects. Use target_index
field for section relocs, and make sure it is set.
(elf_reloc_link_order): Use target_index field for section relocs,
and make sure it is set.
* elf.c (elf_link_hash_newfunc): Initialize dynindx, dynstr_index,
weakdef and elf_link_hash_flags fields.
(_bfd_elf_link_hash_table_create): Initialize dynobj, dynsymcount,
dynstr and bucketcount fields.
* elf32-target.h: Initialize new dynamic linking fields.
* elf64-target.h: Likewise.
* elf32-i386.c: New functions for dynamic linking support.
* elf32-sparc.c: Likewise.
* bfd-in.h (bfd_elf32_record_link_assignment): Declare.
(bfd_elf64_record_link_assignment): Declare.
(bfd_elf32_size_dynamic_sections): Declare.
(bfd_elf64_size_dynamic_sections): Declare.
* bfd-in2.h: Rebuilt.
|
|
|
|
* Makefile.in (INSTALL_LAST): Change operation so it works
on more flavors of make.
* configure.in (go32): Don't build libg++ or libio.
|
|
errors from the HPUX 8 compilers.
|
|
config/mt-slite, config/mt-unix, config/mt-vxworks: Add
Rob's new testing fragments.
|
|
(sim_set_pc): Delete.
(sim_info): Delete printf_fn arg, all callers changed.
Call printf_filtered instead.
(sim_close): New function.
(sim_load): New function.
(sim_create_inferior): Renamed from sim_set_args, all callers changed.
* run.c: #include <varargs.h>, "remote-sim.h".
(printf_filtered): New function.
|
|
(sim_*): Set result type to void where there isn't one.
(sim_resume, default case): Set cpu.exception to SIGILL.
(sim_trace): Delete.
(sim_set_pc): Delete.
(sim_info): Delete printf_fn arg, all callers changed.
Call printf_filtered.
(set_h8300h): New arg `flag', all callers changed.
(sim_close): New function.
(sim_load): New function.
(sim_create_inferior): Renamed from sim_set_args, all callers changed.
* run.c: #include <varargs.h>, "remote-sim.h".
(printf_filtered): New function.
|
|
Document callbacks needed.
(sim_*): Change result to void where there isn't one.
(sim_open): Clarify argument and error response.
(sim_close): Declare.
(sim_load): Change bfd_handle argument to file name. Clarify result.
(sim_create_inferior): Renamed from sim_set_args.
(sim_set_pc): Delete.
(sim_info): Delete printf_fn argument.
* remote-sim.c (gdbsim_kill): Add comment describing purpose.
(gdbsim_load): Try sim_load first.
(gdbsim_create_inferior): Call sim_create_inferior.
(gdbsim_open): Handle args == NULL. Update call to sim_open.
(gdbsim_close): Call sim_close.
(gdbsim_files_info): Update call to sim_info.
(gdbsim_ops): Realign comments.
|
|
|
|
|
|
|
|
fails on gasp, install gasp.new, not gasp.
|
|
|
|
(som_reloc_queue_find): Call memcmp instead of bcmp.
(som_bfd_reloc_type_lookup): Change first argument to bfd *.
(compare_syms): Change types of arguments to const void *.
(bfd_section_from_som_symbol): Removed unused local found.
(som_write_armap): Add elength, map, orl_count and int arguments.
(som_write_armap): Use %ld and cast to long for getuid result.
|
|
absolute calls.
|
|
* elf32-hppa.c (hppa_elf_gen_reloc_type): Handle absolute calls.
* som.h (R_HPPA_ABS_CALL): Define.
* som.c (hppa_som_gen_reloc_type): Delete complex relocation types.
|
|
* xcoffread.c (read_xcoff_symtab): For C_FILE symbols, only use
the auxent if the symbol's name is ".file". From David Edelsohn
<c1dje@watson.ibm.com>.
|
|
* annotate.c (annotate_field_end): Fix typo.
* Makefile.in: Move annotate.o from COMMON_OBS to OBS.
* Makefile.in (TSSTART): Remove; no longer used.
|
|
|
|
|
|
for compatibility with Intel tool chain (gnu960v2).
|
|
so flat_bl.c would make from flat_bl.m file.
|
|
calls with perror calls.
|
|
lib/gdb.exp: Replace error proc calls with perror.
|
|
|
|
proc calls with perror.
|
|
fputs_unfiltered and exit directly, rather than fatal. The latter
calls vfprintf_unfiltered!
* gdbtypes.h, gdbtypes.c (can_dereference): New function.
* value.h, printcmd.c (print_value_flags): Move from here...
* annotate.c: ...to here, and make it use can_dereference.
|
|
on a partial completer match.
|
|
|