- Nov 23, 2016
-
-
Rui Ueyama authored
We have different functions to stringize objects to construct error messages. For InputFile, we have getFilename, and for InputSection, we have getName. You had to memorize them. I think this is the case where the function overloading comes in handy. This patch defines toString() functions that are overloaded for all these types, so that you just call it in error(). Differential Revision: https://reviews.llvm.org/D27030 llvm-svn: 287787
-
Ed Maste authored
Align to the large page size (known as a superpage or huge page). FreeBSD automatically promotes large, superpage-aligned allocations. Differential Revision: https://reviews.llvm.org/D27042 llvm-svn: 287782
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26970 llvm-svn: 287753
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26980 llvm-svn: 287751
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26914 llvm-svn: 287750
-
Rui Ueyama authored
So that we have less number of overloaded functions. llvm-svn: 287745
-
Rui Ueyama authored
llvm-svn: 287742
-
Rui Ueyama authored
There are two ways to set symbol versions. One way is to use symbol definition file, and the other is to embed version names to symbol names. In the latter way, symbol name is in the form of `foo@version1` where `foo` is a real name and `version1` is a version. We were parsing symbol names in insert(). That seems unnecessarily too early. We can do it later after we resolve all symbols. Doing it lazily is a good thing because it makes code easier to read (because now we have a separate pass to parse symbol names). Also it could slightly improve performance because if two identical symbols have versions, we now parse them only once. llvm-svn: 287741
-
Simon Atanasyan authored
For now MipsGotSection class is not ready for concurrent access from multiple threads. The problem is in the getPageEntryOffset method. It changes state of MipsGotSection object and might be called from different threads at the same time. So turn Threads off for this target. It's a temporary solution. The patch fixes MipsGotSection::getPageEntryOffset is almost ready. Differential revision: https://reviews.llvm.org/D27035 llvm-svn: 287740
-
Simon Atanasyan authored
llvm-svn: 287738
-
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
-