binutils-gdb/gold
Ian Lance Taylor 835965e646 Better comments for Stringpool. 2007-09-19 17:38:00 +00:00
..
po Add support for SHF_MERGE sections. 2007-05-16 17:42:48 +00:00
testsuite
Makefile.am Add support for SHF_MERGE sections. 2007-05-16 17:42:48 +00:00
Makefile.in Add support for SHF_MERGE sections. 2007-05-16 17:42:48 +00:00
README
aclocal.m4
archive.cc Implement --whole-archive. 2007-08-21 23:37:56 +00:00
archive.h Implement --whole-archive. 2007-08-21 23:37:56 +00:00
common.cc Add control over template specialization. 2007-09-19 06:01:35 +00:00
common.h
config.in Add support for --enable-target to control which template 2007-09-04 20:00:53 +00:00
configure Add support for --enable-target to control which template 2007-09-04 20:00:53 +00:00
configure.ac Add support for --enable-target to control which template 2007-09-04 20:00:53 +00:00
defstd.cc
defstd.h
dirsearch.cc
dirsearch.h
dynobj.cc Don't try to find version definition index when creating an executable. 2007-09-12 00:30:59 +00:00
dynobj.h Don't try to find version definition index when creating an executable. 2007-09-12 00:30:59 +00:00
fileread.cc
fileread.h Implement --whole-archive. 2007-08-21 23:37:56 +00:00
gold-threads.cc
gold-threads.h
gold.cc
gold.h
i386.cc Generate a GLOB_DAT reloc for a GOT32 reloc against a symbol defined 2007-09-12 16:38:04 +00:00
layout.cc Don't try to find version definition index when creating an executable. 2007-09-12 00:30:59 +00:00
layout.h
main.cc
merge.cc Add support for SHF_MERGE sections. 2007-05-16 17:42:48 +00:00
merge.h Add support for SHF_MERGE sections. 2007-05-16 17:42:48 +00:00
object.cc Add support for --enable-target to control which template 2007-09-04 20:00:53 +00:00
object.h Add support for SHF_MERGE sections. 2007-05-16 17:42:48 +00:00
options.cc Add -rpath-link option, currently unused. 2007-09-06 23:37:53 +00:00
options.h Add -rpath-link option, currently unused. 2007-09-06 23:37:53 +00:00
output.cc Add support for --enable-target to control which template 2007-09-04 20:00:53 +00:00
output.h Force PT_LOAD segments to be aligned to the page size. 2007-08-21 21:03:50 +00:00
readsyms.cc
readsyms.h
reloc-types.h
reloc.cc Add support for --enable-target to control which template 2007-09-04 20:00:53 +00:00
reloc.h Add support for SHF_MERGE sections. 2007-05-16 17:42:48 +00:00
resolve.cc Let special symbols override existing symbols rather than 2007-09-19 06:02:29 +00:00
script-c.h
script.cc Make relative references in linker scripts absolute and update a 2007-08-21 21:29:12 +00:00
script.h
stringpool.cc Compute string lengths before sorting. From Craig Silverstein. 2007-09-18 05:16:39 +00:00
stringpool.h Better comments for Stringpool. 2007-09-19 17:38:00 +00:00
strtab.h
symtab.cc Let special symbols override existing symbols rather than 2007-09-19 06:02:29 +00:00
symtab.h Let special symbols override existing symbols rather than 2007-09-19 06:02:29 +00:00
target-reloc.h Make relative references in linker scripts absolute and update a 2007-08-21 21:29:12 +00:00
target-select.cc
target-select.h
target.h
workqueue.cc
workqueue.h
yyscript.y

README

gold is an ELF linker.  It is intended to have complete support for
ELF and to run as fast as possible on modern systems.

It is written in C++.  It is (intended to be) a GNU program, and
therefore follows the GNU formatting standards as modified for C++.
Source documents in order of precedence:
    http://www.gnu.org/prep/standards/
    http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/C++STYLE
    http://www.zembu.com/eng/procs/c++style.html

The linker is intended to have complete support for cross-compilation,
which still supporting the normal case of native linking as fast as
possible.  This makes the code more complex.

Many functions are actually templates whose parameter is the ELF file
class (e.g., 32 bits or 64 bits).  The code is the same, but we don't
want to pay the execution time cost of always using 64-bit integers if
the target is 32 bits.