Simon Atanasyan
2e67be3cc2
[Mips] Make gp-sym-1.test test case independent from external input files.
...
llvm-svn: 210981
2014-06-14 21:18:50 +00:00
Artyom Skrobov
f8874b0a05
Using llvm::sys::swapByteOrder() for the common case of byte-swapping a value in place
...
llvm-svn: 210979
2014-06-14 13:26:14 +00:00
Simon Atanasyan
4156ac2ecd
[Mips] Make exe-got.test test case independent from external input files.
...
llvm-svn: 210977
2014-06-14 12:55:03 +00:00
Artyom Skrobov
17587fb028
Left two files out of the previous commit
...
llvm-svn: 210975
2014-06-14 12:40:04 +00:00
Artyom Skrobov
9b3f647bf3
llvm::sys::SwapByteOrder() renamed to llvm::sys::getSwappedBytes()
...
Further to this, llvm::sys::swapByteOrder() will be added, acting in-place
llvm-svn: 210974
2014-06-14 12:14:25 +00:00
Rafael Espindola
372bc70c63
Update for llvm api change.
...
llvm-svn: 210919
2014-06-13 17:20:48 +00:00
Rafael Espindola
b34440f9c4
Remove unused and odd code.
...
This code was never being used and any use of it would look fairly strange.
For example, it would try to map a NativeReaderError::file_malformed to
std::errc::invalid_argument.
llvm-svn: 210913
2014-06-13 15:36:45 +00:00
Simon Atanasyan
f0f8207995
[Mips] Make exe-fileheader.test test case independent from external input files.
...
llvm-svn: 210893
2014-06-13 11:44:23 +00:00
Rafael Espindola
2cef13cf71
Remove a 'using std::error_code' I missed in the previous pass.
...
llvm-svn: 210878
2014-06-13 03:24:40 +00:00
Rafael Espindola
f743031b8b
More prefixing of error_code.
...
llvm-svn: 210831
2014-06-12 21:35:33 +00:00
Rafael Espindola
6400ed4e75
Refer to error_code with an std prefix.
...
llvm-svn: 210820
2014-06-12 20:42:12 +00:00
Rafael Espindola
54427ccef3
include system_error directly.
...
llvm-svn: 210801
2014-06-12 17:15:58 +00:00
Rafael Espindola
1675d51eac
Run llvm/utils/sort_includes.py in a few files.
...
This will reduce the noise in a followup patch.
llvm-svn: 210800
2014-06-12 17:12:28 +00:00
Rafael Espindola
7264b0bf29
Uses #include "..." instead of #include <...> for llvm headers.
...
llvm-svn: 210799
2014-06-12 17:08:11 +00:00
Simon Atanasyan
033ecd1cc8
[Mips] Make exe-dynamic.test test case independent from external input files.
...
llvm-svn: 210796
2014-06-12 16:46:47 +00:00
Rafael Espindola
b1a4d3a26c
Don't import error_code into the lld namespace.
...
llvm-svn: 210785
2014-06-12 14:53:47 +00:00
Rafael Espindola
4956850fdc
replace llvm::error_code with std::error_code.
...
llvm-svn: 210781
2014-06-12 14:04:54 +00:00
Rafael Espindola
99c78a9f3c
Don't use make_error_code from the llvm namespace.
...
llvm-svn: 210741
2014-06-12 03:13:49 +00:00
Rafael Espindola
92d8b456d9
Use error_category from the std namespace.
...
llvm-svn: 210732
2014-06-12 01:44:19 +00:00
Rafael Espindola
7cc0d413b5
Use error_condition from the std namespace.
...
llvm-svn: 210730
2014-06-12 01:28:12 +00:00
Rafael Espindola
28db74b2f0
Fix test build on windows.
...
llvm-svn: 210714
2014-06-11 22:23:45 +00:00
Rui Ueyama
e05d380486
Move Simple.h and Alias.h to include/Core.
...
Because the files in Core actually depend on these files.
Differential Revision: http://reviews.llvm.org/D4000
llvm-svn: 210710
2014-06-11 21:47:51 +00:00
Rafael Espindola
7b0d7cf96b
Quick fix for the windows build.
...
We have to look for both std::make_error_code as well as our overloads.
llvm-svn: 210704
2014-06-11 21:04:06 +00:00
Rui Ueyama
8ab4e2ce25
group-cmd-search test is not supposed to pass on Windows.
...
llvm-svn: 210697
2014-06-11 20:00:22 +00:00
Rafael Espindola
7b8b9ae1cb
Use std::error_code instead of llvm::error_code.
...
This is an update for a llvm api change.
llvm-svn: 210689
2014-06-11 19:05:58 +00:00
Simon Atanasyan
87a06716e6
[Mips] Fix the bug -- symbol referred by the R_MIPS_TLS_GD relocation
...
does not get an entry in the dynamic symbol table.
llvm-svn: 210648
2014-06-11 10:08:08 +00:00
Rafael Espindola
1f7701c19c
Missed these from the previous commit.
...
llvm-svn: 210629
2014-06-11 03:35:50 +00:00
Rafael Espindola
4b4cdf5e3a
Inherit from error_category instead of _do_message.
...
There is no std::_do_message and these classes override message anyway.
llvm-svn: 210626
2014-06-11 03:28:13 +00:00
Nick Kledzik
936d5205bb
[mach-o] fix use of resolver functions to not cause duplicate sections.
...
The previous commit uncovered a bug in the mach-o writer whereby two __text
sections were created. But the test case did not catch that. So I updated
the test case to run the linker a second time, reading the output of the
first pass.
llvm-svn: 210624
2014-06-11 01:30:55 +00:00
Rui Ueyama
195f04afeb
Fix pecoff/export.test on Windows.
...
llvm-svn: 210621
2014-06-11 01:18:05 +00:00
Nick Kledzik
6085539bed
[mach-o] add support for parsing resolver functions
...
llvm-svn: 210612
2014-06-11 00:24:16 +00:00
Rafael Espindola
3a3532ebb9
Mark a few functions noexcept.
...
llvm-svn: 210590
2014-06-10 21:26:18 +00:00
Simon Atanasyan
842a90d264
[ReaderWriter] Simplify initialization of class fields.
...
No functional changes.
llvm-svn: 210532
2014-06-10 13:43:24 +00:00
Simon Atanasyan
014f0ca0d3
[ELF] Fix typo in the type name of the range-based loop item.
...
No functional changes.
llvm-svn: 210531
2014-06-10 13:43:19 +00:00
Simon Atanasyan
6790b14ebb
[ELF] Fix the bug -- LLD crashes if the --whole-archive option
...
is around non-archive.
llvm-svn: 210530
2014-06-10 13:43:13 +00:00
Nick Kledzik
ec140834d4
[mach-o] refactor mach-o output section selection to be table driven.
...
In -r mode the sections use the table used to parse .o files. Otherwise
use final exectuable table. No functionality change.
llvm-svn: 210506
2014-06-10 01:50:00 +00:00
Nick Kledzik
b423266e93
[mach-o] parse multiple symbols on same address into aliases
...
llvm-svn: 210502
2014-06-09 23:35:37 +00:00
Simon Atanasyan
1de1d63aec
[Mips] Make dt-textrel.test test case independent from external input files.
...
llvm-svn: 210469
2014-06-09 13:45:58 +00:00
Rui Ueyama
d7b32b93e0
Remove dead parameter.
...
llvm-svn: 210461
2014-06-09 09:58:53 +00:00
Rui Ueyama
c97b661475
Re-commit r210425.
...
llvm-svn: 210456
2014-06-09 08:57:37 +00:00
Rui Ueyama
8708a0ea7e
Add missing dependency for check-lld.
...
llvm-svn: 210455
2014-06-09 08:42:38 +00:00
Rui Ueyama
2ad8c22a55
Revert "[Mips] Make got16.test test case independent from external input files."
...
This reverts commit r210425 because the test added in the commit
is broken.
llvm-svn: 210451
2014-06-09 08:23:58 +00:00
Simon Atanasyan
8804e5cb49
[Mips] Make got16.test test case independent from external input files.
...
llvm-svn: 210425
2014-06-08 11:33:05 +00:00
Simon Atanasyan
c8e86fb032
[Mips] Handle Mips TLS relocations R_MIPS_TLS_GOTTPREL / R_MIPS_TLS_GD / R_MIPS_TLS_LDM etc.
...
llvm-svn: 210394
2014-06-07 13:20:53 +00:00
Simon Atanasyan
8065fb761e
[Mips] Make dynlib-dynsym.test self contained.
...
llvm-svn: 210258
2014-06-05 12:39:12 +00:00
Rui Ueyama
0291dd2c8a
Revert "[PECOFF] Support COMDAT associative sections."
...
This reverts accidental commit r210240.
llvm-svn: 210243
2014-06-05 07:40:59 +00:00
Rui Ueyama
733b45f3b0
Add SymbolTable::isCoalescedAway
...
isCoalescedAway(x) is faster than replacement(x) != x as the former
does not follow the replacement atom chain. Also it's easier to use.
llvm-svn: 210242
2014-06-05 07:37:29 +00:00
Rui Ueyama
52edc49031
Print error message in LinkOnce handler.
...
Rather than outside of the handler function to make the code simple.
llvm-svn: 210241
2014-06-05 07:37:25 +00:00
Rui Ueyama
f3cb9d1d57
[PECOFF] Support COMDAT associative sections.
...
COFF supports a feature similar to ELF's section groups. This
patch implements it.
In ELF, section groups are identified by their names, and they are
treated somewhat differently from regular symbols. In COFF, the
feature is realized in a more straightforward way. A section can
have an annotation saying "if Nth section is linked, link this
section too."
Implementing such feature is easy. We can add a reference from a
target atom to an original atom, so that if the target is linked,
the original atom is also linked. If not linked, both will be
dead-stripped. So they are treated as a group.
I added a new reference type, kindAssociate. It does nothing except
preventing referenced atoms from being dead-stripped.
No change to the Resolver is needed.
Reviewers: Bigcheese, shankarke, atanasyan
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D3946
llvm-svn: 210240
2014-06-05 07:37:20 +00:00
Iain Sandoe
c4d9bedcfc
Initial set of Makefiles
...
This provides support for the autoconfing & make build style.
The format, style and implementation follows that used within the llvm and clang projects.
TODO: implement out-of-source documentation builds.
llvm-svn: 210177
2014-06-04 09:54:07 +00:00