Binutils with MCST patches
Go to file
Ian Lance Taylor 4a6afc88bb A major rewrite to move the bulk of the linker into BFD so that
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 19:51:41 +00:00
bfd * section.c (bfd_get_section_contents): Return zero filled buffer 1993-12-30 15:51:16 +00:00
binutils Various entries. 1993-12-23 17:29:32 +00:00
config No longer needed. 1993-12-26 04:03:38 +00:00
gas Revert last change. It loses. 1993-12-30 07:00:31 +00:00
gdb * exec.c (add_to_section_table): Check for SEC_ALLOC instead of 1993-12-30 15:56:06 +00:00
gprof update rev to 5.6(Cygnus) 1993-12-16 04:24:16 +00:00
include * bfdlink.h: New file for new BFD linker backend routines. 1993-12-30 18:44:54 +00:00
ld A major rewrite to move the bulk of the linker into BFD so that 1993-12-30 19:51:41 +00:00
mmalloc * COPYING.LIB: New file (standard version 2 LGPL, as already cited 1993-11-17 04:35:46 +00:00
opcodes * alpha-opc.h, alpha-dis.c (print_insn_alpha): Add 1993-11-08 07:53:45 +00:00
readline * readline.c (rl_getc): If GO32, trim high bit from getkey, 1993-12-12 00:31:44 +00:00
sim keep run.1 1993-11-11 20:07:08 +00:00
.Sanitize * .Sanitize: Remove references to chillrt and test-chill 1993-11-24 19:28:23 +00:00
Build-A-Release.mk didn't get propagated from progressive to devo. 1992-07-31 17:33:55 +00:00
ChangeLog * config.guess: Recognize some Tektronix configurations. 1993-12-15 05:28:09 +00:00
DOC.Sanitize Initial revision 1991-10-31 00:08:52 +00:00
INSTALL Nearly complete. Still needs pointer to "more doc". 1991-04-13 07:41:11 +00:00
Install.in Add some files from Progressive shich shouldn't be lost. 1992-07-29 16:21:34 +00:00
Makefile.in Fix gnatsishness 1993-12-01 23:20:23 +00:00
Pack-A-Progressive Add some files from Progressive shich shouldn't be lost. 1992-07-29 16:21:34 +00:00
SUPPORTED Initial revision 1991-06-12 21:44:36 +00:00
build-all.mk if we're on lynx, set up GNU_MAKE and CONFIG_SHELL in FLAGS_TO_PASS to 1993-11-11 20:35:30 +00:00
config.guess * config.guess: Recognize Sony news mips running newsos. 1993-11-11 18:07:50 +00:00
config.sub * configure.in: Recognize hppa*-*-hiux* (currently synonym for hpux). 1993-10-05 17:41:05 +00:00
configdos.bat Initial revision 1991-12-12 02:47:57 +00:00
configure * configure: If only ${target_alias} is given, use that 1993-12-20 04:44:21 +00:00
configure.bat More dos scripts 1992-02-22 00:25:24 +00:00
configure.in * configure.in: Nuke hacks which were used to get a special 1993-12-26 04:02:36 +00:00
install-texi.in Add some files from Progressive shich shouldn't be lost. 1992-07-29 16:21:34 +00:00
install.sh * install.sh: Remove 'set -e'. It makes any conditionals 1993-11-04 19:13:47 +00:00
intro.texi Add some files from Progressive shich shouldn't be lost. 1992-07-29 16:21:34 +00:00
tape-labels-tex.in Add some files from Progressive shich shouldn't be lost. 1992-07-29 16:21:34 +00:00
test-build.mk don't ever use sh explicitly 1993-11-09 23:32:04 +00:00