You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Ian Lance Taylor 8c838dbd52 Fix comment. 19 years ago
..
po Add support for SHF_MERGE sections. 20 years ago
testsuite Added a testsuite. More support for COPY relocations. 20 years ago
Makefile.am Add support for SHF_MERGE sections. 20 years ago
Makefile.in Add support for SHF_MERGE sections. 20 years ago
README Initial CVS checkin of gold 20 years ago
aclocal.m4 Can now do a full static link of hello, world in C or C++ 20 years ago
archive.cc Fix comment. 19 years ago
archive.h Rework patch to check by both armap entry and archive offset. Also, 19 years ago
common.cc Add control over template specialization. 19 years ago
common.h Can now do a full static link of hello, world in C or C++ 20 years ago
config.in Add support for --enable-target to control which template 19 years ago
configure Add support for --enable-target to control which template 19 years ago
configure.ac Add support for --enable-target to control which template 19 years ago
defstd.cc Split Object into Dynobj and Relobj, incorporate elfcpp swapping changes. 20 years ago
defstd.h Can now do a full static link of hello, world in C or C++ 20 years ago
dirsearch.cc Hash tables, dynamic section, i386 PLT, gold_assert. 20 years ago
dirsearch.h Can now do a full static link of hello, world in C or C++ 20 years ago
dynobj.cc Don't try to find version definition index when creating an executable. 19 years ago
dynobj.h Don't try to find version definition index when creating an executable. 19 years ago
fileread.cc Added a testsuite. More support for COPY relocations. 20 years ago
fileread.h Implement --whole-archive. 19 years ago
gold-threads.cc Hash tables, dynamic section, i386 PLT, gold_assert. 20 years ago
gold-threads.h Initial CVS checkin of gold 20 years ago
gold.cc Can now dynamically link hello, world. 20 years ago
gold.h gcc 3.2.2 and 4.1.0 portability hacks. 20 years ago
i386.cc Generate a GLOB_DAT reloc for a GOT32 reloc against a symbol defined 19 years ago
layout.cc Don't try to find version definition index when creating an executable. 19 years ago
layout.h gcc 3.2.2 and 4.1.0 portability hacks. 20 years ago
main.cc Added a testsuite. More support for COPY relocations. 20 years ago
merge.cc Add support for SHF_MERGE sections. 20 years ago
merge.h Add support for SHF_MERGE sections. 20 years ago
object.cc From Cary Coutant: only check for a linkonce section if the SHF_GROUP 19 years ago
object.h Add support for SHF_MERGE sections. 20 years ago
options.cc Fix handling of --eh-frame-hdr option. 19 years ago
options.h Fix handling of --eh-frame-hdr option. 19 years ago
output.cc Add support for --enable-target to control which template 19 years ago
output.h Force PT_LOAD segments to be aligned to the page size. 19 years ago
readsyms.cc Don't emit symbols seen only in dynamic object, don't read duplicate 20 years ago
readsyms.h More dynamic object support, initial scripting support. 20 years ago
reloc-types.h Snapshot. Includes first cut at output relocation sections. 20 years ago
reloc.cc Add support for --enable-target to control which template 19 years ago
reloc.h Add support for SHF_MERGE sections. 20 years ago
resolve.cc Let special symbols override existing symbols rather than 19 years ago
script-c.h More dynamic object support, initial scripting support. 20 years ago
script.cc Make relative references in linker scripts absolute and update a 19 years ago
script.h More dynamic object support, initial scripting support. 20 years ago
stringpool.cc Compute string lengths before sorting. From Craig Silverstein. 19 years ago
stringpool.h Note that a Stringpool keeps a copy of a string. 19 years ago
strtab.h Another snapshot of the current state of the sources. Gets to the 20 years ago
symtab.cc Let special symbols override existing symbols rather than 19 years ago
symtab.h Let special symbols override existing symbols rather than 19 years ago
target-reloc.h Make relative references in linker scripts absolute and update a 19 years ago
target-select.cc Can now do a full static link of hello, world in C or C++ 20 years ago
target-select.h Can now do a full static link of hello, world in C or C++ 20 years ago
target.h Generate version information. 20 years ago
workqueue.cc Hash tables, dynamic section, i386 PLT, gold_assert. 20 years ago
workqueue.h Can now do a full static link of hello, world in C or C++ 20 years ago
yyscript.y More dynamic object support, initial scripting support. 20 years ago

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.