- Mar 26, 2017
-
-
Rui Ueyama authored
C is short for Chunk, but we are no longer using that term. RI is probably short for relocation iterator, but this is not an interator. llvm-svn: 298786
-
Rui Ueyama authored
Previously, relocation offsets are recalculated for .eh_frame sections inside the main loop, and that messed up the main loop. This patch separates that logic into a dedicated class. llvm-svn: 298785
-
- Mar 25, 2017
-
-
Rui Ueyama authored
I just didn't know that raw_fd_ostream has has_colors() function. llvm-svn: 298749
-
Rui Ueyama authored
llvm-svn: 298748
-
- Mar 24, 2017
-
-
Rui Ueyama authored
llvm-svn: 298675
-
Rui Ueyama authored
The original code is a big `if` and `else` which ends with `continue` like this: if (cond) { ... // fall through } else { ... continue; } This patch rewrites it with the following. if (!cond) { ... continue; } ... llvm-svn: 298672
-
Rui Ueyama authored
llvm-svn: 298669
-
Rui Ueyama authored
llvm-svn: 298668
-
Rui Ueyama authored
llvm-svn: 298667
-
- Mar 23, 2017
-
-
Rui Ueyama authored
llvm-svn: 298632
-
Simon Atanasyan authored
These targets are related to MIPS N32 ABI. llvm-svn: 298591
-
Petr Hosek authored
This requires collectign all symbols referenced in the linker script and adding them to symbol table as undefined symbol. Differential Revision: https://reviews.llvm.org/D31147 llvm-svn: 298577
-
Rui Ueyama authored
I honestly do not understand this part of code as it is too tangled. What I'm trying now is to carefully disentangle it by transforming code without changing meaining to see if I can improve overall readability. llvm-svn: 298576
-
Rui Ueyama authored
llvm-svn: 298575
-
Rui Ueyama authored
llvm-svn: 298571
-
Rui Ueyama authored
Fixes https://bugs.llvm.org/show_bug.cgi?id=32307. Differential Revision: https://reviews.llvm.org/D31255 llvm-svn: 298569
-
Rui Ueyama authored
This is to improve compatibility with GNU Libtool that expect /supported targets:.* elf/ in a message for the -help option. Differential Revision: https://reviews.llvm.org/D31208 llvm-svn: 298568
-
Davide Italiano authored
Patch by Mark Kettenis. llvm-svn: 298567
-
Rui Ueyama authored
"Parallel" is the most important aspect of the functions, so we shouldn't omit that. llvm-svn: 298557
-
- Mar 22, 2017
-
-
Rui Ueyama authored
Previous output: $ ld.lld -version LLD 5.0.0 New output: $ ld.lld -version LLD 5.0.0 (compatible with GNU linkers) Differential Revision: https://reviews.llvm.org/D31199 llvm-svn: 298532
-
Rui Ueyama authored
This is a shorthand for Config->Wordsize == 8. So this is not strictly necessary but seems handy. "Is 64 bit?" is easier to read than "Is wordsize 8 byte?" llvm-svn: 298463
-
Rui Ueyama authored
LinkerScript used to be a template class, so we couldn't instantiate that class in elf::link. We instantiated ScriptConfig class earlier instead so that the linker script parser can store configurations to the object. Now that LinkerScript is not a template, it doesn't make sense to separate ScriptConfig from LinkerScript. This patch merges them. llvm-svn: 298457
-
Rui Ueyama authored
llvm-svn: 298456
-
- Mar 21, 2017
-
-
Rui Ueyama authored
llvm-svn: 298447
-
Rui Ueyama authored
This is a shorthand for `Config->IsLE ? support::little : support::big`. llvm-svn: 298445
-
Rui Ueyama authored
llvm-svn: 298403
-
George Rimar authored
llvm-svn: 298353
-
George Rimar authored
llvm-svn: 298351
-
George Rimar authored
llvm-svn: 298350
-
George Rimar authored
That finally should linux BB after r298345. llvm-svn: 298349
-
George Rimar authored
Fix for linux build bot: http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/8144/steps/build/logs/stdio llvm-svn: 298348
-
George Rimar authored
llvm-svn: 298346
-
George Rimar authored
Patch moves Sections array to InputFile (root class for input files). That allows to detemplate GdbIndexSection. Differential revision: https://reviews.llvm.org/D30976 llvm-svn: 298345
-
Rafael Espindola authored
It is the only file type that needs it. llvm-svn: 298323
-
- Mar 20, 2017
-
-
Simon Atanasyan authored
The patch introduces two new relocations expressions R_MIPS_GOT_GP and R_MIPS_GOT_GP_PC. The first one represents a current value of `_gp` pointer and used to calculate relocations against the `__gnu_local_gp` symbol. The second one represents the offset between the beginning of the function and the `_gp` pointer's value. There are two motivations for introducing new expressions: - It's better to keep all non-trivial relocation calculations in the single place - `getRelocTargetVA` function. - Relocations against both `_gp_disp` and `__gnu_local_gp` symbols depend on the `_gp` value. It's a magical value points to the "middle" of GOT. Now all relocations use a common `_gp` value. But in fact, under some conditions each input file might require its own `_gp` value. I'm going to implement it in the future patches. So it's better to make `MipsGotSection` responsible for calculation of the `_gp` value. llvm-svn: 298306
-
Simon Atanasyan authored
llvm-svn: 298304
-
George Rimar authored
This continues detemplation process. Detemplating MipsGotSection<ELFT> is helpfull because can help to detemplate getRelocTargetVA. (one more change is required) It opens road to detemplation of GotSection<ELFT> and probably something else after that. Differential revision: https://reviews.llvm.org/D31090 llvm-svn: 298272
-
George Rimar authored
Does not introduce anything new, just performs detemplate, using methods we already have. Differential revision: https://reviews.llvm.org/D30935 llvm-svn: 298269
-
Rafael Espindola authored
I don't foresee having to makes these functions any stricter or fancier, so it probably makes sense to inline them. llvm-svn: 298252
-
Rafael Espindola authored
This would fix an initialized error found by msan. The error is not showing after r298241, but it is not clear why. llvm-svn: 298251
-