aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
1993-12-30 * remote-mips.c (mips_error): New function.Jim Kingdon2-22/+55
* remote-mips.c: Use it instead of error() most places.
1993-12-30Rebuilt after removal of seclet.c from doc/Makefile.in.Ian Lance Taylor1-6/+0
1993-12-30Makefile.in: Delete all references to seclet.c, since it's just been deleted.Ken Raeburn2-14/+33
Don't mention hash.c, linker.c, or genlink.h yet, since they don't contain documentation yet (hint, hint!).
1993-12-30 * breakpoint.c (breakpoint_chain): Make static.Jim Kingdon3-4/+47
* breakpoint.c, breakpoint.h (frame_in_dummy): New function. * stack.c (print_frame_info): Use it.
1993-12-30Added new files for linker support, and removed old seclet files.Ian Lance Taylor6-242/+1771
1993-12-30Removed files that are no longer used by the rewritten linker.Ian Lance Taylor11-1332/+0
1993-12-30 Extensive changes to move the bulk of the linker into BFD so thatIan Lance Taylor29-659/+4752
more efficient backend code can be written for specific object files. Only existing efficient backend is a.out. * seclet.c, seclet.h: Removed. * hash.c, linker.c, genlink.h: New files. * bfd-in.h: Removed bfd_error_vector. Declared hash table structures and functions. (JUMP_TABLE): Removed bfd_seclet_link, added bfd_link_hash_table_create, bfd_link_add_symbols and bfd_final_link. * All backends: Changed accordingly. * bfd-in2.h: Rebuilt. * bfd.c (struct _bfd): Added link_next and archive_pass fields. Removed ld_symbols field. (bfd_nonrepresentable_section, bfd_undefined_symbol, bfd_reloc_value_truncated, bfd_reloc_is_dangerous, bfd_error_vector): Removed. (bfd_default_error_trap, bfd_error_trap, bfd_error_nonrepresentabltrap): Removed. (bfd_get_relocated_section_contents): Pass link_info. Pass link_order instead of seclet. Pass symbols. (bfd_relax_section): Pass link_info. (bfd_seclet_link): Removed. (bfd_link_hash_table_create, bfd_link_add_symbols, bfd_final_link): New macros. * libbfd-in.h: If __GNUC__ is defined and alloca is not, define alloca as __builtin_alloca. Declare internal linking functions. * libbfd.h: Rebuilt. * libbfd.c (bfd_seek): Comment out fseek assertion. It's worked for months. * reloc.c (reloc_howto_type): Added error_message argument to special_function field. Changed all callers and all definitions. (bfd_get_reloc_size): Make argument a const pointer. (bfd_perform_relocation): Add error_message argument to hold string set if return value if bfd_reloc_dangerous. Changed all callers. (_bfd_final_link_relocate, _bfd_relocate_contents): New functions. * section.c (asection): Renamed seclets_head and seclets_tail to link_order_head and link_order_tail. * targets.c (bfd_target): Replaced seclet argument with link_info and link_order and symbols arguments in bfd_get_relocated_section_contents. Added symbols argument to bfd_relax_section. Removed bfd_seclet_link. Added bfd_link_hash_table_create, bfd_link_add_symbols and bfd_final_link. * libaout.h (struct aoutdata): Added external_syms, external_sym_count, external_strings, sym_hashes fields. (obj_aout_external_syms, obj_aout_external_sym_count, obj_aout_external_strings, obj_aout_sym_hashes): New accessor macros. (WRITE_HEADERS): Only output symbols if outsymbols is not NULL. * aoutx.h: Wrote new back end linker routines. (translate_to_native_sym_flags): Return boolean value. Don't use bfd_error_vector. (NAME(aout,write_syms)): Return boolean value. Check return value of translate_to_native_sym_flags and bfd_write. * aout-target.h (final_link_callback): New function. (MY_bfd_final_link): New function. * aout-adobe.c (aout_adobe_write_object_contents): Check return value of aout_32_write_syms. * hp300hpux.c (MY(write_object_contents)): Likewise. * i386lynx.c (WRITE_HEADERS): Likewise. * libaout.h (WRITE_HEADERS): Likewise. * bout.c: Changed functions to use link_info->callbacks rather than bfd_error_vector, and link_orders rather than seclets. * coff-alpha.c: Likewise. * coff-h8300.c: Likewise. * coff-h8500.c: Likewise. * coff-sh.c: Likewise. * coff-z8k.c: Likewise. * elf32-hppa.c: Likewise. * reloc16.c: Likewise. * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Look up _gp in the hash table rather than in outsymbols. * coff-a29k.c (a29k_reloc): Pass errors back in new error_message argument rather than printing them. * coffcode.h (bfd_coff_reloc16_extra_cases): Take link_info and link_order arguments rather than seclet. Changed all uses and definitions. (bfd_coff_reloc16_estimate): Pass link_info arguments. Changed all uses and definitions. * libcoff.h: Rebuilt. * ecoff.c (ecoff_get_extr): If symbol is defined by linker, but not by ECOFF, make it scAbs. (ecoff_bfd_final_link): Renamed from ecoff_bfd_seclet_link and rewritten. * elf32-mips.c (mips_elf_final_link): Renamed from mips_elf_seclet_link and rewritten. * elf32-hppa.c (elf32_hppa_stub_description): Added link_info field. (new_stub, add_stub_by_name, hppa_elf_build_arg_reloc_stub, hppa_elf_build_long_branch_stub, hppa_look_for_stubs_in_section): Added link_info arguments. Changed all callers. * elfcode.h (elf_slurp_symbol_table): Don't quit if outsymbols is not NULL. * oasys.c (oasys_write_sections): Return boolean value rather than using bfd_error_vector. (oasys_write_object_contents): Check return value of oasys_write_sections. * hosts/std-host.h: Don't declare qsort or strtol. * Makefile.in: Rebuild dependencies. (BFD_LIBS): Removed seclet.o. Added hash.o and linker.o. (CFILES): Removed seclet.c. Added hash.c and linker.c. (HFILES): Removed seclet.h. Added genlink.h.
1993-12-30 A major rewrite to move the bulk of the linker into BFD so thatIan Lance Taylor7-409/+632
more efficient backend code can be written for specific object files. * lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h, ldwarn.c, ldwarn.h, relax.c, relax.h: Removed. * ldctor.c, ldctor.h: Complete rewrite. * ldwrite.c, ldwrite.h: Complete rewrite. * ld.h (strip_symbols_type, strip_symbols): Removed. Use link_info.strip instead. Changed all uses. (discard_locals_type, discard_locals): Removed. Use link_info.discard instead. Changed all uses. (ld_config_type): Removed relocateable_output field; use link_info.relocateable instead; changed all uses. Added stats field. (set_asymbol_chain, get_asymbol_chain, get_loader_symbol, set_loader_symbol): Removed. * ldexp.h (node_class): Added etree_rel. (etree_type): Added rel field. * ldexp.c (exp_print_token): Bracketed table initialization. (exp_relop): New function. (fold_name): Use linker hash table rather than ldsym functions. (exp_fold_tree): Likewise. Also, handle etree_rel case. (exp_print_tree): Handle etree_rel. * ldgram.y (strip_symbols, discard_locals): Removed. (OPTION_stats, OPTION_no_keep_memory): New tokens. Handle them. (REL): New token. Does not appear in grammar, but needed for expression code. (file): Don't call lang_final; it's called by main anyhow. * ldlex.l: Accept -stats and -no-keep-memory options. * ldlang.h (fill_type): Make unsigned int, not unsigned short. * ldlang.c: Consistently use fill_type for fill argument. (lang_init_script_file, script_file): Removed. (create_object_symbols): Removed. Use link_info.create_object_symbols_section instead. Changed all uses. (lang_add_keepsyms_file): Removed. (lookup_name): Call bfd_link_add_symbols instead of ldmain_open_file_read_symbol. (wild): Don't iterate over script_file. (open_output): Create link hash table. (lang_place_undefineds): Rewrote. (lang_size_sections): Handle relaxing (doesn't work yet). (lang_relocate_globals): Removed. (lang_finish): Use link hash table rather than ldsym functions. (lang_common): Rewrote. (lang_one_common): New function. (ldlang_add_file): Add file to link_info.input_bfds list. Set usrdata. (create_symbol): Removed. (lang_process): Don't call lang_init_script_file. Call ldctor_build_sets rather than find_constructors. Don't call lang_relocate_globals. (lang_abs_symbol_at_beginning_of): Rewrote. (lang_abs_symbol_at_end_of): Rewrote. * ldmain.c (had_y): Removed. (lprefix, lprefix_len): Removed; use link_info fields instead. Changed all uses. (multiple_def_count, commons_pending, undefined_global_sym_count, total_symbols_seen, total_files_seen): Removed. (link_callbacks, link_info): New variables. (main): Initialize link_info. Don't call init_bfd_error_vector or ldsym_init. Don't set now unused variables. Handle -stats. (get_emulation): Removed obsolete and nonfunctional GNU960 code. (add_ysym): Rewrote. (read_entry_symbols, refize, enter_global_ref, enter_file_symbols, search_library, gnu960_check_format, decode_library_subfile, linear_library, symdef_library, clear_syms, subfile_wanted_p): Removed. (add_keepsyms_file, add_archive_element, multiple_definition, multiple_common, add_to_set, warning_callback, undefined_symbol, reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym): New functions. * ldmisc.c (vfinfo): Accept a string for %T, not a symbol. Don't require symbols for %C; look them up instead. * emultempl/hppaosf.em: Pass link_info to hppa_look_for_stubs_in_section. * Makefile.in: Rebuilt dependencies. (CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and relax.c. (HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and relax.h. (EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h, ldlang.h and ldctor.h. * Makefile.in (ldlex.c): Don't depend on ldgram.h. Remove declarations of free and malloc from flex output. Change malloc to ldmalloc in flex output.
1993-12-30 * bfdlink.h: New file for new BFD linker backend routines.Ian Lance Taylor1-0/+1
1993-12-30 * exec.c (add_to_section_table): Check for SEC_ALLOC instead ofPeter Schauer1-0/+5
SEC_LOAD to handle .bss segments properly.
1993-12-30 * section.c (bfd_get_section_contents): Return zero filled bufferPeter Schauer2-27/+38
if section has no contents.
1993-12-30 * infrun.c (wait_for_inferior): Enable code which assumes that ifJim Kingdon2-10/+22
we jump into the prologue from another function, then it was a subroutine call. #if 0 AT_FUNCTION_START; the above code should take care of this case.
1993-12-30Revert last change. It loses.Jeff Law1-5/+0
1993-12-30 * valprint.c (val_print_string): Change chunksize from 200Jim Kingdon1-0/+3
to 8.
1993-12-29 * symfile.c (generic_load): If no arguments, get file nameJim Kingdon1-0/+3
from get_exec_file.
1993-12-29* write.h (struct fix): Field tc_fix_data should be type PTR, not void*, forKen Raeburn1-0/+6
compatibility with non-ANSI compilers. Added single-bit field "fx_done".
1993-12-29put a breakpoint in as_bad_where tooKen Raeburn1-0/+1
1993-12-29 * c-exp.y: Revert Kung's change. "..." is not a type, and theJim Kingdon3-4/+13
change caused "p (...)0" to dump core. * gdbtypes.c (check_stub_method): Don't pass "..." to parse_and_eval_type. This should fix the bug which Kung was trying to fix.
1993-12-29 * gas/hppa/more.parse/labelbug.s: Add more colonless labelJeff Law3-0/+48
tests.
1993-12-29 * app.c (do_scrub_next_char): Fix more bugs dealing withJeff Law2-6/+30
labels without colons (For HPPA and MRI).
1993-12-29 * stabsread.c (define_symbol): If we choose not to combineJim Kingdon2-9/+15
two symbols, don't just ignore the second (LOC_REGISTER) one. * printcmd.c (print_frame_args): If we have a LOC_ARG and a LOC_REGISTER, use the LOC_ARG not the LOC_REGISTER.
1993-12-29 * stabs.texinfo (Cross-References): `::' is for nested types onlyJim Kingdon2-2/+18
within <>. (Structures): Document static members.
1993-12-28 * solib.c (DEBUG_BASE): Remove macro and all references.Fred Fish1-0/+8
* solib.c (debug_base_symbols): Add array of symbols to lookup. * solib.c (IGNORE_FIRST_LINK_MAP_ENTRY): Add macro. * solib.c (look_for_base, locate_base): Use debug_base_symbols. * solib.c (find_solib): Use IGNORE_FIRST_LINK_MAP_ENTRY.
1993-12-28CVS:Kung Hsu2-0/+5
Modified Files: ChangeLog c-exp.y * c-exp.y : fix grammar to parse ellipsis (...) (fix pr4218)
1993-12-28 * elf.c (bfd_elf_generic_reloc): If this is not an inplace reloc,Ian Lance Taylor2-21/+21
then skip bfd_perform_relocation even if the addend is non-zero.
1993-12-28Modified Files:Kung Hsu2-2/+12
ChangeLog stabsread.c * stabsread.c (read_type): fix problem when reading static member of a class. caused by change to allow :: inside template instantiated name.
1993-12-27 * config/i386-linux.mt: delete ".sh" from genscripts argumentMark Eichin1-1/+1
(change made to genscripts on July 21...) This is all it took for linux-native ld to build. It isn't necessarily useful, particularly as gcc is still configured to pass -m486 and -dll-verbose, which this ld doesn't parse...
1993-12-27* stabs.texinfo: Document S type attribute.Jim Kingdon2-4/+21
1993-12-27 * gdbtypes.h: Expand on comments for TYPE_CODE_BITSTRING andJim Kingdon2-2/+13
TYPE_CODE_STRING a bit.
1993-12-27 * m68k-tdep.c (m68k_skip_prologue, m68k_find_saved_regs):Jim Kingdon1-0/+4
Allow pea %fp; move.l %sp, %fp instead of link instruction to set up the new frame.
1993-12-27 * main.c (init_main): Change "set remotedebug" back to var_zintegerJim Kingdon2-5/+81
from var_boolean.
1993-12-27 * minsyms.c (prim_record_minimal_symbol): CallJim Kingdon1-1/+2
prim_record_minimal_symbol_and_info rather than duplicating code.
1993-12-27 * minsyms.c, symtab.h (prim_record_minimal_symbol{,_and_info}),Jim Kingdon8-28/+39
coffread.c (record_minimal_symbol), xcoffread.c (RECORD_MINIMAL_SYMBOL), callers: Add objfile parameter.
1993-12-27* c-exp.y (yylex): Don't try to deal with nested types.Jim Kingdon2-0/+11
1993-12-27 * cp-valprint.c (cplus_print_value): Call check_stub_type onJim Kingdon2-1/+7
TYPE_BASECLASS (type, i) before we look at its name.
1993-12-27 * dbxread.c: Move default definition of GCC_COMPILED_FLAG_SYMBOLJim Kingdon4-52/+44
from here . . . * symtab.h: . . . to here. * dbxread.c (record_minimal_symbol): Move check for gcc{,2}_compiled. and __gnu_compiled* from here . . . * minsyms.c (prim_record_minimal_symbol_and_info): . . . to here. * minsyms.c (prim_record_minimal_symbol): Call prim_record_minimal_symbol_and_info rather than duplicating code.
1993-12-27Add comment about breakpoint vector usage.Jeff Law1-1/+4
1993-12-27 * stabs.texinfo: Add notes about stabs-in-som where appropriate.Jeff Law2-9/+14
1993-12-27 * dbxread.c (process_one_symbol): Handle stabs-in-som just likeJeff Law3-38/+62
stabs-in-elf. (pastab_build_psymtabs): Likewise. * hppa-tdep.c: Change all comments to reference %r3 or frame pointer rather than %r4. (frame_chain, skip_prologue, dig_rp_from_stack): Handle %r3 as the frame pointer. * config/pa/tm-hppa.h (FP_REGNUM): Define as %r3. (FIND_FRAME_SAVED_REGS): Handle %r3 as frame pointer. (CALL_DUMMY): Likewise.
1993-12-26 * exec.c (exec_file_command): If error occurs after we have openedJim Kingdon2-16/+41
exec_bfd but before we call push_target, make sure to close exec_bfd.
1993-12-26Sun Dec 26 16:59:39 1993 Jim Kingdon (kingdon@lioth.cygnus.com)Jim Kingdon2-23/+58
* infrun.c (wait_for_inferior): Remove confusing and inaccurate stuff about subroutine calls, return, etc., from comment which says "We've wandered out of the step range.". Sun Dec 26 09:18:10 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) * infrun.c (wait_for_inferior): When checking whether the line has changed, check the symtab as well.
1993-12-26 * gdbtypes.c (force_to_range_type): Use switch statement.Jim Kingdon2-28/+42
complain() not warning() if the TYPE_CODE isn't one we know how to deal with gracefully. Use builtin_type_int not lookup_fundamental_type (the objfile we passed to lookup_fundamental_type was sometimes NULL).
1993-12-26Making HPPA assembler case sensitive where it should be, and speeding it upTorbjorn Granlund1-0/+19
a factor of 2.
1993-12-26 * valops.c (call_function_by_hand, push_word), defs.h (push_word),Jim Kingdon31-105/+185
convex-xdep.c, m88k-nat.c, i386m3-nat.c, mips-tdep.c, mipsm3-nat.c, ns32km3-nat.c, remote-bug.c, m88k-tdep.c, remote-hms.c, remote-mips.c, config/gould/tm-np1.h, hppa-tdep.c (hppa_fix_call_dummy), remote-vx.c: Use REGISTER_SIZE, unsigned LONGEST, and {store,extract}_unsigned_integer, instead of sizeof (REGISTER_TYPE) and REGISTER_TYPE. * All tm.h files: Change REGISTER_TYPE to REGISTER_SIZE. * hppa-tdep.c (pa_print_fp_reg): Remove unused variable val. * Makefile.in (ALLDEPFILES): Remove i386ly-nat.c and m68kly-nat.c. Add lynx-nat.c.
1993-12-26 * hppa-tdep.c (init_extra_frame_info): Correctly adjust the baseJeff Law2-10/+36
of the current frame when "fromleaf" is true. Do not adjust the frame base of the innermost frame if it is a leaf function.
1993-12-26No longer needed.Jeff Law1-17/+0
1993-12-26 * configure.in: Nuke hacks which were used to get a specialJeff Law1-11/+0
version of GAS for HPPA configurations.
1993-12-25 * stabsread.c (define_symbol): Only combine a p/r pair into aJim Kingdon2-7/+23
LOC_REGPARM if REG_STRUCT_HAS_ADDR.
1993-12-25Sat Dec 25 09:50:29 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)Jim Kingdon2-2/+7
* valops.c (value_struct_elt): Check for (value)-1 return from search_struct_method.
1993-12-25 * defs.h: Move definitions of TARGET_*_BIT after include of tm.h.Jim Kingdon6-134/+170
The old way (using #undef in tm.h) was ugly and asking for trouble, because it makes it possible for some file to use the wrong definition. Move definition of HOST_CHAR_BIT after definition of TARGET_CHAR_BIT. * config/alpha/tm-alpha.h, config/h8300/tm-h8300.h, config/h8500/tm-h8500.h, config/z8k/tm-z8k.h: Don't undef TARGET_*_BIT before defining them.