aboutsummaryrefslogtreecommitdiff
path: root/ld
AgeCommit message (Collapse)AuthorFilesLines
1994-01-14 Motorola Delta sysV68 support from phdm@info.ucl.ac.BE (PhilippeIan Lance Taylor6-1/+61
De Muyter). * configure.in (m68k-motorola-sysv*) New target. * config/delta68.mt: New file. * emulparams/delta68.sh: New file. * scripttempl/delta68.sc: New file. * Makefile.in (ALL_EMULATIONS): Added em_delta68.o. (em_delta68.c): New target.
1994-01-11 * scripttempl/elf.sc: Correct typo.Ian Lance Taylor1-0/+4
1994-01-11 * ldgram.y, ldlex.l: Make the space between -e, -u, and -y andDavid MacKenzie1-0/+5
their arguments optional, for compatibility with the old GNU ld.
1994-01-08 * scripttempl/elf.c: Define __bss_start before the .sbss section.Ian Lance Taylor2-13/+64
1994-01-06Various entries.Ian Lance Taylor1-0/+21
1994-01-06 * ldmain.c (add_to_set): Add bitsize argument.Ian Lance Taylor1-843/+387
(constructor_callback): New function. (link_callbacks): Add constructor_callback. * ldctor.c (struct set_info): Add bitsize field. (ldctor_add_set_entry): Add bitsize argument. (ldctor_build_sets): Base the size of the elements of the set on the bitsize, rather than always using LONG. * ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
1994-01-06 * ld.h (QUAD_SIZE): Define.Ian Lance Taylor4-376/+274
* ldgram.y (QUAD): New token. (length): Handle it. * ldlex.l: Return QUAD. * lexsup.c (keywords): Add QUAD. * ldwrite.c (build_link_order): Handle QUAD. * ldlang.c (print_data_statement): Handle QUAD. (lang_size_sections): Likewise. (lang_do_assignments): Likewise. * ldexp.c (exp_print_token): Add QUAD to table. * ld.texinfo: Describe QUAD.
1994-01-06 * scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,Ian Lance Taylor1-0/+5
since the Alpha doesn't use them.
1994-01-06 * ldemul.h (ld_emulation_xfer_struct): Comment the members.David MacKenzie1-0/+9
1994-01-04Add vsta.mt and vsta.sh.Rob Savoye2-0/+2
1994-01-01Support for VSTa micro-kernel.Rob Savoye2-0/+9
1994-01-01clarify changeDavid MacKenzie1-1/+1
1994-01-01 * scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;David MacKenzie1-0/+8
needed for i386mach. * emulparams/i386mach.sh (SEGMENT_SIZE): Fix again. (PAGE_SIZE): Don't define; not used.
1993-12-31 * ldgram.y (yyerror): Make argument const char *, and actuallyIan Lance Taylor1-0/+7
print it out rather than assuming it is a syntax error. * ldmisc.h: Change declaration of yyerror. * ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
1993-12-31 * emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't includeDavid MacKenzie2-0/+13
exec header offset, since the exec header isn't loaded. (PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
1993-12-31minor fixesDavid MacKenzie1-0/+302
1993-12-30Removed files that are no longer used by the rewritten linker.Ian Lance Taylor11-1332/+0
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-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-17 * ldmain.c (lprefix): Change default from a char to a stringJeff Law3-3/+10
with only one character. (lprefix_len): Set default to one. * ldmain.h (lprefix_len): Declare. * ldsym.c (write_file_locals): Use strncmp rather than a character comparison for lprefix. * emultmpl/m88kbcs.em (before_parse): Set lprefix and lprefix_len correctly. * emultmpl/hppaosf.em: Include ldexp.h. (before_parse): Set lprefix and lprefix_len correctly.
1993-12-14 * ldlex.h: Don't declare yywrap if it is a macro.Ian Lance Taylor1-0/+2
* ldlex.l: Include sysdep.h.
1993-12-14 * ldlang.c (lang_for_each_statement_worker,Ian Lance Taylor1-0/+5
lang_for_each_statement): Forgot to use PARAMS.
1993-12-13 * Makefile.in: Added .PHONY targets where appropriate. Added someIan Lance Taylor1-0/+21
comments. Also: (gcclibdir, version): Removed unused variables. (DEP): New variable, set to mkdep. (ALL_CFLAGS): New variable. Used in .c.o target. (CFILES, HFILES, GENERATED_CFILES, GENERATED_HFILES): New variables. (HEADERS, MANSOURCES, LDCSOURCES, GENERATED_SOURCES, GENERATED_HEADERS, LDSOURCES, BFD_SOURCES, SOURCES): Removed mostly obsolete variables. Adjusted remaining uses. (DEF_EMUL): Removed variable. (ldmain.o): Handle undefined EMUL error correctly. (ldemul-list.h): Depend on config.status rather than Makefile. Create via temporary file. (ver960.c, roll, make): Removed obsolete targets. (.dep, .dep1, dep.sed, dep, dep-in): New targets. Used to rebuild dependencies.
1993-12-13New file used for rebuilding dependencies.Ian Lance Taylor2-0/+17
1993-12-12More gcc lint.Ian Lance Taylor8-146/+245
1993-12-11 Made many changes to eliminate gcc warnings. Made variousIan Lance Taylor21-755/+726
cosmetic changes, declared various things in header files, removed various extern declarations from .c files. No substantive changes.
1993-12-11 * ldlang.c (lang_process): Ifdef out final call toIan Lance Taylor2-16/+34
lang_size_sections again (reverting change of Nove 2), since it breaks the Sun4 linker.
1993-12-02 * ldgram.y (OPTION_Oval): New token.Ian Lance Taylor1-2/+4
(command_line_option): Accept and ignore it. * ldlex.l (<COMMAND>): Handle -On where n is a number.
1993-12-01* configure.in: Group targets by CPU. Merge some m68k target entries withKen Raeburn2-8/+19
different CPU specs that use the same ld_target values. * configure.in: Add sparc*-*-coff. * config/coff-sparc.mt, emulparams/coff_sparc.sh: New files. * Makefile.in (ALL_EMULATIONS): Add em_coff_sparc.o. (em_coff_sparc.c): Add dependencies and build rules.
1993-12-01New file for bare sparc-coff support.Ken Raeburn2-0/+8
1993-12-01 * ldgram.y (OPTION_call_shared, OPTION_non_shared): New tokens.Ian Lance Taylor3-14/+70
(command_line_option): Accept and ignore them (for now). * ldlex.l (<COMMAND>): Handle -non_shared and -call_shared.
1993-11-19 * configure.in (mips*-sgi-irix5*): New target. Use mipsb-elf32.Ian Lance Taylor2-0/+35
* emulparams/elf32mipsb.sh (DATA_ADDR): Define. (OTHER_READONLY_SECTIONS): Define for .reginfo. (EXECUTABLE_SYMBOLS): Define for _DYNAMIC_LINK. * scripttempl/elf.sc: Use EXECUTABLE_SYMBOLS when not relocating. Move OTHER_READONLY_SECTIONS after all the other readonly sections. Don't use DATA_ADDR twice.
1993-11-19 * ldmain.c (enter_file_symbols): Removed duplicate tests of p. IfIan Lance Taylor1-44/+98
p is in a common section, make sure the BFD has a section of that name.
1993-11-17Use sun4sol2 for a target of sparc-netware.Sean Eric Fagan1-0/+5
1993-11-12More correct m68k LynxOS supportStan Shebs4-5/+44
1993-11-08netware target support.David Henkel-Wallace1-0/+4
1993-11-06correct mach3 valuesDavid MacKenzie1-1/+6
1993-11-05adjusting repository after cvs mixupKen Raeburn3-2261/+0
1993-11-05First cut at sanitization, doc files, &c for gas/binutils releasesKen Raeburn3-0/+2261
1993-11-04Fix up dependencies and rules for ld.dvi, ld.info.Ken Raeburn2-3/+5
1993-11-03* Makefile.in (distclean): Don't get rid of dvi or info files.Ken Raeburn2-4/+13
1993-11-03make -o override OUTPUTDavid MacKenzie1-0/+8
1993-11-03Fixed minor typo ("host" sb "target" in discussion of GNUTARGET).Roland Pesch1-14/+16
To my shame, this was reported 28 aug 92 by Jonathan Ryshpan, and lost in my mail pile til now.
1993-11-02 * scripttempl/hppaosf.sc: (___stack_zero, etext, _etext,Jeff Law2-2/+14
edata, _edata, end): Add definitions of these symbols. (__end): Remove definition of this symbol. (__data_start): Move definition of this symbol.
1993-11-02 * emultempl/hppaosf.em: Various fixes and support for linker stubJeff Law1-0/+8
generation. (hppaosf_finish, hppaosf_search_for_padding_statements, hppaosf_create_output_section_statements): New functions in support of linker stub generation. (ld_hppaosf_emulation): Redefine to include new emulation-specific routines.
1993-11-02 * emultempl/hppaosf.em: Various fixes and support for linker stubJeff Law1-1/+171
generation. (hppaosf_finish, hppaosf_search_for_padding_statements, hppaosf_create_output_section_statements): New functions in support of linker stub generation. (ld_hppaosf_emulation): Redefine to include new emulation-specific routines.
1993-11-02 * ldlang.c (lang_process): Re-enable last call lang_size_sections.Jeff Law2-34/+46
Pass abs_output_section rather than NULL to avoid invalidating absolute symbols.
1993-11-01Keep Lynx fileStan Shebs2-1/+3
1993-11-01Keep Sparc fileStan Shebs1-1/+2
1993-10-29mach 386 changesDavid MacKenzie2-0/+2