- Sep 12, 2013
-
-
Rui Ueyama authored
In COFF, an undefined symbol can have up to one alternative name. If a symbol is resolved by its regular name, then it's linked normally. If a symbol is not found in any input files, all references to the regular name are resolved using the alternative name. If the alternative name is not found, it's a link error. This mechanism is called "weak externals". To support this mechanism, I added a new member function fallback() to undefined atom. If an undefined atom has the second name, fallback() returns a new undefined atom that should be used instead of the original one to resolve undefines. If it does not have the second name, the function returns nullptr. Differential Revision: http://llvm-reviews.chandlerc.com/D1550 llvm-svn: 190625
-
Shankar Easwaran authored
llvm-svn: 190619
-
Shankar Easwaran authored
llvm-svn: 190612
-
Shankar Easwaran authored
The first section in the output was not aligned to the alignment of the section. llvm-svn: 190610
-
Shankar Easwaran authored
This associates rodata and sections which just have the SHF_ALLOC flag to be set to typeConstant. llvm-svn: 190609
-
Shankar Easwaran authored
We need to order atoms that exist in the same chain. This is to make sure that the command line order is preserved when we emit the atoms to the output file. Credits: BigCheese for finding the bug. Adds a test which otherwise would fail. llvm-svn: 190608
-
Rui Ueyama authored
llvm-svn: 190586
-
Rui Ueyama authored
Mangling scheme varies on platform, and prepending an underscore is valid only on 32-bit x86. Added a method to mangle name to PECOFFLinkingContext and use it to avoid hard coding mangled names. llvm-svn: 190585
-
Rui Ueyama authored
llvm-svn: 190554
-
- Sep 11, 2013
-
-
Nick Kledzik authored
Patch by Joe Ranieri llvm-svn: 190453
-
Nick Kledzik authored
-current_version, -compatibility_version, and -install_name. Patch by Joe Ranieri llvm-svn: 190452
-
Nick Kledzik authored
and a parsePackedVersion() utility. Patch by Joe Ranieri llvm-svn: 190451
-
- Sep 10, 2013
-
-
Rui Ueyama authored
Process::GetEnv() uses GetEnvironmentVariableW, which is a Windows API to get an environment variable and is preferable over getenv(). llvm-svn: 190431
-
- Sep 09, 2013
-
-
Rui Ueyama authored
llvm-svn: 190332
-
Rui Ueyama authored
llvm-svn: 190329
-
Joerg Sonnenberger authored
llvm-svn: 190302
-
Joerg Sonnenberger authored
llvm-svn: 190301
-
- Sep 08, 2013
-
-
Joerg Sonnenberger authored
attribute in LinkerInput to isWholeArchive and use that for deciding whether library archives should be expanded. Implement the -all_load option of the Darwin linker using this flag and drop the support for it in GNU mode. llvm-svn: 190275
-
- Sep 07, 2013
-
-
Joerg Sonnenberger authored
llvm-svn: 190255
-
Joerg Sonnenberger authored
llvm-svn: 190254
-
Joerg Sonnenberger authored
reference. Move readFile logic into FileNode::createLinkerInput. llvm-svn: 190253
-
Rui Ueyama authored
Patch by Ron Ofir. llvm-svn: 190210
-
- Sep 06, 2013
-
-
Rui Ueyama authored
Patch by Ron Ofir. llvm-svn: 190198
-
Rui Ueyama authored
llvm-svn: 190121
-
Rui Ueyama authored
llvm-svn: 190120
-
Rui Ueyama authored
llvm-svn: 190119
-
Rui Ueyama authored
llvm-svn: 190117
-
- Sep 05, 2013
-
-
Rui Ueyama authored
llvm-svn: 190095
-
Shankar Easwaran authored
llvm-svn: 190031
-
Shankar Easwaran authored
Writable note sections if they exist should not appear before text they belong in the data segment llvm-svn: 190024
-
- Sep 04, 2013
-
-
Shankar Easwaran authored
It looks like there is a possibility of seeing RO/RW note sections and we would need to create an appropriate RO/RW segment associated with them. Adds a test too. llvm-svn: 189907
-
Rui Ueyama authored
The compiler is allowed to add a linker option starting with -?<name> to .drectve section. If the linker can interpret -<name>, it's processed as if there's no question mark there. If not, such option is silently ignored. This is a COFF's feature to allow the compiler to emit new linker options while keeping compatibility with older linkers. llvm-svn: 189897
-
Shankar Easwaran authored
Emit note sections if the input contains a note section. Also emit a note segment. llvm-svn: 189896
-
Rui Ueyama authored
Before this patch, name of driver implementation is not consistent with its option table file. Specifically, LDOptions has a different prefix than GnuLdDriver. This patch renames option files, so that the option files have the same prefix as the corresponding driver files. Differential Revision: http://llvm-reviews.chandlerc.com/D1591 llvm-svn: 189895
-
Shankar Easwaran authored
llvm-svn: 189891
-
Joerg Sonnenberger authored
llvm-svn: 189890
-
Shankar Easwaran authored
Also add a llvm_unreachable call so that the linker will trip on unhandled inputElement types. llvm-svn: 189887
-
Joerg Sonnenberger authored
llvm-svn: 189883
-
Rui Ueyama authored
llvm-svn: 189881
-
Rui Ueyama authored
llvm-svn: 189877
-