- Mar 20, 2017
-
-
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
-
Peter Collingbourne authored
This is a safeguard against data loss if the user specifies a directory that is not a cache directory. Teach the existing cache pruning clients to create files with appropriate names. Differential Revision: https://reviews.llvm.org/D31109 llvm-svn: 298271
-
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
-
George Rimar authored
llvm-svn: 298244
-
George Rimar authored
llvm-svn: 298243
-
George Rimar authored
llvm-svn: 298242
-
George Rimar authored
Patch removes templated linkerscript class. Unfortunately that required 2 additional static methods findSymbol() and addRegularSymbol() because code depends on Symtab<ELFT>::X Differential revision: https://reviews.llvm.org/D30982 llvm-svn: 298241
-
George Rimar authored
llvm-svn: 298240
-
- Mar 19, 2017
-
-
Simon Atanasyan authored
llvm-svn: 298230
-
- Mar 18, 2017
-
-
Rui Ueyama authored
We had a few Config member functions that returns configuration values. For example, we had is64() which returns true if the target is 64-bit. The return values of these functions are constant and never change. This patch is to compute them only once to make it clear that they'll never change. llvm-svn: 298168
-
Rui Ueyama authored
isLE() return true if the target is little-endian. wordsize() returns 8 for 64-bit and 4 for 32-bit. llvm-svn: 298167
-
- Mar 17, 2017
-
-
Peter Collingbourne authored
ELF: Change check(Expected<T>, const Twine &) to call toString instead of converting to an error code. llvm-svn: 298155
-
Evgeniy Stepanov authored
__start_xxx symbol keeps section xxx alive only if it is not SHF_LINK_ORDER. Such sections can be used for user metadata, when __start_xxx is used to iterate over section contents at runtime, and the liveness is determined solely by the linked (associated) section. This was earlier implemented in r294592, and broken in r296723. Differential Revision: https://reviews.llvm.org/D30964 llvm-svn: 298154
-
Bob Haarman authored
recommend using llvm-ar when finding undefined references and empty archives Summary: When we perform LTO builds with a version of ar that does not understand LLVM bitcode objects, we end up with undefined references, because our archive files do not list the bitcode symbols in their indices. The error messages do not make it clear what the real problem is. This change adds a note that points out the likely problem and solution. It is similar in spirit to r282633, but aims to avoid false positives by only triggering when we see both undefined references and archives without symbols in their indices. Fixes PR32281. Reviewers: davide, ruiu, tejohnson Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D31011 llvm-svn: 298124
-
George Rimar authored
To be consistent with other code, addresses post commit review comments. llvm-svn: 298102
-
Rafael Espindola authored
Handling & in particular is probably important because of its use in aligning addresses. llvm-svn: 298096
-
Rafael Espindola authored
Since there is no way to produce the correct answer at runtime, it is probably better to just err. llvm-svn: 298094
-
Simon Atanasyan authored
Do not take in account the `Live` flag while collecting .reginfo, .MIPS.options, and .MIPS.abiflags input sections to produce corresponding output sections. These sections have information purpose and should be always produced per ABI requirements. llvm-svn: 298093
-
George Rimar authored
llvm-svn: 298091
-
Rafael Espindola authored
llvm-svn: 298088
-
George Rimar authored
llvm-svn: 298087
-
George Rimar authored
With fix of next warning: Writer.cpp:361:3: warning: suggest parentheses around assignment used as truth value [-Wparentheses] Original commit message: Patch reuses BssSection section to simplify creation of COMMON section. Differential revision: https://reviews.llvm.org/D30690 llvm-svn: 298086
-
George Rimar authored
It segfaults. llvm-svn: 298084
-
Rafael Espindola authored
llvm-svn: 298083
-
George Rimar authored
Writer.cpp:361:3: warning: suggest parentheses around assignment used as truth value [-Wparentheses] llvm-svn: 298082
-
Rafael Espindola authored
This fixes pr32031 by representing the expressions results as a SectionBase and offset. This allows us to use an input section directly instead of getting lost trying to compute an offset in an outputsection when not all the information is available yet. This also creates a struct to represent the *value* of and expression, allowing the expression itself to be a simple typedef. I think this is easier to read and will make it easier to extend the expression computation to handle more complicated cases. llvm-svn: 298079
-
George Rimar authored
Patch reuses BssSection section to simplify creation of COMMON section. Differential revision: https://reviews.llvm.org/D30690 llvm-svn: 298078
-
Rafael Espindola authored
llvm-svn: 298076
-
George Rimar authored
llvm-svn: 298072
-
George Rimar authored
llvm-svn: 298071
-
George Rimar authored
Error was: Relocations.cpp:792:38: error: expected primary-expression before ‘>’ token In<ELFT>::Iplt->addEntry<ELFT>(Body); llvm-svn: 298070
-
George Rimar authored
Alternative approach can be remove templated method either, like D31028 do. llvm-svn: 298065
-
George Rimar authored
It failed for me under windows, touch reported invalid date format. Seems related to 12h/24h format, though I don't understant why 197001010200 does not work, but 197001010300 works, I see no logic here. Changed to 197001011200. llvm-svn: 298064
-
George Rimar authored
Was fixed, details on review page. Original commit message: That removes CopyRelSection class completely, making Bss/BssRelRo to be just regular synthetics. This is splitted from D30541 and polished. Difference from D30541 that all logic of SharedSymbol converting to DefinedRegular was removed for now and probably will be posted as separate patch. Differential revision: https://reviews.llvm.org/D30892 llvm-svn: 298062
-
Andre Vieira authored
Patch to fix lld tests after my llvm-objdump patch to fix branch labels for Thumb targets. Reviewed by: emaste Differential Revision: https://reviews.llvm.org/D30986 llvm-svn: 298055
-
Peter Collingbourne authored
llvm-svn: 298038
-
Peter Collingbourne authored
This patch causes us to use pruneCache() to prune the ThinLTO cache after completing LTO. A new flag --thinlto-cache-policy allows users to configure the policy. Differential Revision: https://reviews.llvm.org/D31021 llvm-svn: 298036
-