- Nov 23, 2016
-
-
Rui Ueyama authored
Previously, we stored offsets in string tables to symbols, so you needed to pass a string table to get a symbol name. This patch stores const char pointers instead to eliminate the need to pass a string table. llvm-svn: 287737
-
Rui Ueyama authored
It broke buildbots. llvm-svn: 287730
-
Rui Ueyama authored
llvm-svn: 287727
-
Rui Ueyama authored
llvm-svn: 287714
-
- Nov 22, 2016
-
-
Rui Ueyama authored
Fixes PR31126. llvm-svn: 287711
-
Rafael Espindola authored
llvm-svn: 287701
-
Davide Italiano authored
Now that lld switched to lib/LTO, which always calls setDataLayout(), we don't need this check anymore. Thanks to Peter for pointing out! llvm-svn: 287699
-
Rui Ueyama authored
llvm-svn: 287692
-
Rui Ueyama authored
We cannot have MipsRldMap class and In<ELFT>::MipsRldMap. Renamed the class. llvm-svn: 287683
-
Meador Inge authored
GNU LD allows `ASSERT` commands to be in output section descriptions. Note that LD also mandates that `ASSERT` commands in this context must end with a semicolon. llvm-svn: 287677
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26958 llvm-svn: 287675
-
Rui Ueyama authored
llvm-svn: 287620
-
Rui Ueyama authored
llvm-svn: 287617
-
Rui Ueyama authored
llvm-svn: 287616
-
Rui Ueyama authored
llvm-svn: 287615
-
Rui Ueyama authored
llvm-svn: 287614
-
Rui Ueyama authored
llvm-svn: 287613
-
Rui Ueyama authored
llvm-svn: 287607
-
Rui Ueyama authored
Some synthetic sections are not derived calsses of SyntehticSection. They are derived directly from InputSection. For consistencly, we should use SyntheticSection. llvm-svn: 287606
-
Rui Ueyama authored
llvm-svn: 287605
-
Rui Ueyama authored
We had five different BuildId subclasses for five different types of build-ids. They can simply be merged to a single class. llvm-svn: 287603
-
- Nov 21, 2016
-
-
Rafael Espindola authored
Config->MaxPageSize is what we use for the segment alignment, so that is the one that we have to use for placing the header. llvm-svn: 287569
-
Rafael Espindola authored
If the linker script has SECTIONS, the address computation is now always done in LinkerScript::assignAddresses, like for any other section. Before fixHeaders would do a tentative computation that assignAddresses would sometimes override. This patch also splits the cases where assignAddresses needs to add the headers to the first PT_LOAD and the address computation. The net effect is that we no longer create an empty page for no reason in the included test case, which matches bfd behavior. llvm-svn: 287565
-
Rui Ueyama authored
This should have been moved along with r287554. llvm-svn: 287564
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26918 llvm-svn: 287554
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26906 llvm-svn: 287549
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26795 llvm-svn: 287547
-
Rui Ueyama authored
LLD's error messages contain line numbers, function names or section names. Currently they are formatter as follows. foo.c (32): symbol 'foo' not found foo.c (function bar): symbol 'foo' not found foo.c (.text+0x1234): symbol 'foo' not found This patch changes them so that they are consistent with Clang's output. foo.c:32: symbol 'foo' not found foo.c:(function bar): symbol 'foo' not found foo.c:(.text+0x1234): symbol 'foo' not found Differential Revision: https://reviews.llvm.org/D26901 llvm-svn: 287537
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26852 llvm-svn: 287527
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26854 llvm-svn: 287526
-
Rui Ueyama authored
This patch rearranges code a bit to make it easy to explain. llvm-svn: 287515
-
Rui Ueyama authored
llvm-svn: 287514
-
Rui Ueyama authored
llvm-svn: 287510
-
Rui Ueyama authored
llvm-svn: 287509
-
Rui Ueyama authored
Previously, we set (uintptr_t)-1 to InputSectionBase::OutSec to record that a section has already been set to be assigned to some output section by linker scripts. Later, we restored nullptr to the pointer to use the field for the original purpose. That overloading is not very easy to understand. This patch adds a bit flag for that purpose, so that we don't need to piggyback the flag on an unrelated pointer. llvm-svn: 287508
-
- Nov 20, 2016
-
-
Rui Ueyama authored
llvm-svn: 287481
-
Rui Ueyama authored
Also this patch uses file-scope functions instead of class member function. Now that ICF class is not visible from outside, InputSection class can no longer be "friend" of it. So I removed the friend relation and just make it expose the features to public. llvm-svn: 287480
-
Rui Ueyama authored
We have a .cpp and a .h for parseDynamicList(). This patch moves the function to DriverUtil.cpp. llvm-svn: 287468
-
Rui Ueyama authored
llvm-svn: 287467
-
Rui Ueyama authored
In order to use forEachGroup in the final loop in ICF::run, I changed some function parameter types. llvm-svn: 287466
-