aboutsummaryrefslogtreecommitdiff
path: root/ld
AgeCommit message (Collapse)AuthorFilesLines
1994-02-04New memory model.Steve Chamberlain1-0/+4
1994-02-04More sicko segmentation support.Steve Chamberlain4-0/+20
1994-02-04Support for various sicko segmented memory models.Steve Chamberlain4-0/+240
1994-02-03Formatting adjustments, for better smallbook formattingRoland Pesch1-10/+12
and to agree better w/FSF (RMS) indentation conventions.
1994-02-03Describe -retain-symbols-file.Roland Pesch1-0/+20
1994-02-03misc updates:Roland Pesch1-46/+94
(1) show `-y SYMBOL' with space (2) weaken multi-target stuff, to avoid false expectations now that linker now often config'd with only one target (3) describe -relax support on i960 (4) correct description of hyphen chars in symbols (5) describe CONSTRUCTORS linker script cmd
1994-02-02Describe AT option of SECTIONS command, at long last.Roland Pesch1-20/+73
1994-01-30* ldlex.l: Removed duplicate rules.Ken Raeburn1-0/+6
(yywrap): Provide default definition, needed with some versions of flex.
1994-01-28 * ldmisc.c (vfinfo): For `%I', if the file is in an archive, printDavid MacKenzie2-81/+90
the archive filename too.
1994-01-28get rid of rcs crudKen Raeburn1-2/+0
1994-01-28Fix test case to be valid ANSI C++.Ken Raeburn4-23/+29
Don't require use of fixed C++ header files, so "../gcc/xgcc -B../gcc/" ought to work for CXX. In cdtest.exp: Combine "rm" lines. Added some commentary on things still broken in this test case.
1994-01-28* lib/ld.exp (simple_diff): Indicate failure if files have different numbers ofKen Raeburn1-6/+11
lines. Don't muck with $differences to avoid indicating a pass, just return. Also got rid of trailing whitespace on some lines.
1994-01-28 * ldlex.l: Add rule to catch invalid input characters instead ofDavid MacKenzie3-7/+28
printing them. Include "ldmain.h" for program_name decl. (lex_warn_invalid): New function. * Makefile.in: Add dependency.
1994-01-28* Makefile.in (check): Don't bother running any tests ofKen Raeburn2-4/+14
cross-linker until the test suite no longer assumes native mode.
1994-01-28keep test suiteKen Raeburn1-0/+1
1994-01-28Thu Jan 27 17:19:54 1994 Steve Chamberlain (sac@jonny.cygnus.com)Steve Chamberlain2-29/+29
* ldlang.c (print_one_symbol, print_input_section): Print global symbols in symbol table again.
1994-01-27 * ldmain.c ldmain.h ldgram.y: If -v -V or --version was given,David MacKenzie3-5/+29
exit successfully instead of complaining if no input files are given.
1994-01-26Change all occurances of RUNTEST_FLAGS to RUNTESTFLAGS to be consistant withRob Savoye1-2/+2
everything else. (and now work recursively too)
1994-01-26 * Makefile.in: Format variable definitions consistently.Stan Shebs2-20/+25
(LD_PROG): Remove unnecessary variables from link command, change variable LOADLIBES to EXTRALIBS.
1994-01-26Add MPW/GM sanitizingStan Shebs1-5/+40
1994-01-26Tue Jan 25 20:01:55 1994 Stan Shebs (shebs@andros.cygnus.com)Stan Shebs3-0/+298
* mpw-xconfig.in: New file, mpw x mips configuration fragment. * mpw-em.c: New file, compressed version of em_mipsidt.c.
1994-01-26Tue Jan 25 19:54:19 1994 Stan Shebs (shebs@andros.cygnus.com)Stan Shebs6-13/+810
* mpw-config.in: New file, MPW configuration fragment. * mpw-build.in: New file, MPW build script fragment. * mpw-make.in: New file, MPW makefile fragment. (This file is semi-automatically generated from Makefile.in.) * ldfile.c (slash): If MPW, set to `:'. * ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to prevent redefinition errors.
1994-01-25Tue Jan 25 13:19:41 1994 Stan Shebs (shebs@andros.cygnus.com)Stan Shebs3-2/+17
* ldmain.c (main): Compute and display total execution time. * ld.texinfo (-stats): Document the option.
1994-01-24 * ldmain.c (reloc_overflow): Added name, reloc_name and addendIan Lance Taylor2-4/+18
arguments.
1994-01-24 * ldlang.c (lookup_name): Set BFD GP size to -G argument valueIan Lance Taylor2-0/+5
after opening BFD.
1994-01-24 * ldlang.c (relaxing): Removed global variable.Ian Lance Taylor3-13/+32
(lang_size_sections): If the canonical symbols have not already been read in, read them in before relaxing. * ldlang.h (relaxing): Removed declaration.
1994-01-21 * ldlang.c (new_afile): Initialize loaded field to false.Ian Lance Taylor2-3/+29
(lookup_name): If file was already loaded, don't call the add_symbols entry point again.
1994-01-19 * ld.texinfo: Clarify what -T option does.David MacKenzie2-3/+8
1994-01-19 * scripttempl/m88kbcs.sc: Don't use CREATE_OBJECT_SYMBOLS, that'sSteve Chamberlain1-0/+5
for a.out.
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.