Simon Atanasyan
134a8a6311
[Mips] Reduce the number of 'const' casts.
...
llvm-svn: 204355
2014-03-20 16:26:25 +00:00
Simon Atanasyan
df0d62a7cb
[Mips] Join two for loops over defined atoms into the single one.
...
llvm-svn: 204354
2014-03-20 16:26:15 +00:00
Simon Atanasyan
7b571f4ee0
[Mips] Remove the dead code.
...
llvm-svn: 204353
2014-03-20 16:26:07 +00:00
Simon Atanasyan
c452d4f89f
[Mips] Remove unused member function argument.
...
llvm-svn: 204352
2014-03-20 16:25:58 +00:00
Rui Ueyama
6d500da3cc
Revert "[ELF] Order DT_NEEDED entries by command line order."
...
This reverts commit r204291 because it broke buildbots.
llvm-svn: 204317
2014-03-20 06:57:28 +00:00
Michael J. Spencer
deefb10fd6
[ELF] Order DT_NEEDED entries by command line order.
...
With this all test-suite tests pass with lld on x86-64 Linux.
llvm-svn: 204291
2014-03-20 01:28:23 +00:00
Simon Atanasyan
6210b2ef6b
[Mips] Remove unused function.
...
llvm-svn: 204248
2014-03-19 16:05:32 +00:00
Simon Atanasyan
e29132d427
[Mips] Fix handling of R_MIPS_GOT16 relocation and building local part
...
of GOT.
* Read addend for R_MIPS_GOT16 relocation.
* Put only high 16 bits of symbol + addend into GOT entries for
locally visible symbols.
llvm-svn: 204247
2014-03-19 15:46:25 +00:00
Simon Atanasyan
b1ba018ed2
[Mips] Handle R_MIPS_GOT16 relocation for external and local symbols in
...
a uniform way.
llvm-svn: 204246
2014-03-19 15:46:15 +00:00
Simon Atanasyan
49fa6a41f4
[Mips] Factor out the code creates GOT entry atoms into the two
...
functions. The first one is for local GOT entries. The second one is for
global GOT entries.
llvm-svn: 204245
2014-03-19 15:46:07 +00:00
Simon Atanasyan
a7b553efd1
[Mips] Add 'const' qualifier to the function.
...
llvm-svn: 204244
2014-03-19 15:46:00 +00:00
Simon Atanasyan
c1b62ea310
[Mips] Move AHL addends calculation to the RelocationPass class.
...
llvm-svn: 204243
2014-03-19 15:45:55 +00:00
Simon Atanasyan
d8259fbcc3
[Mips] Move RelocationPass class member function definitions out of the
...
class.
llvm-svn: 204242
2014-03-19 15:45:49 +00:00
Simon Atanasyan
0e202224a3
[ELF] Remove unused fields (linking context references).
...
llvm-svn: 204222
2014-03-19 11:05:55 +00:00
Ahmed Charles
13c70b6d4b
Replace OwningPtr with std::unique_ptr.
...
This results in some simplifications to the code where an OwningPtr had to
be used with the previous api and then ownership moved to a unique_ptr for
the rest of lld.
llvm-svn: 203809
2014-03-13 16:20:38 +00:00
Michael J. Spencer
ac1b1d7bfc
[docs] Add some more information on missing relocations.
...
llvm-svn: 203744
2014-03-13 01:11:03 +00:00
Rui Ueyama
b325b81138
[ELF] Fix MSVC warning on conversion from enum to bool.
...
This function returns a boolean value, so returning STT_COMMON does not
make sense.
llvm-svn: 203731
2014-03-12 23:04:27 +00:00
Ahmed Charles
d6432c8aed
[Cleanup] Sort includes.
...
llvm-svn: 203666
2014-03-12 15:55:13 +00:00
Simon Atanasyan
fe3e0a2abf
[Mips] Fix addendum reading for R_MIPS_26 relocation.
...
llvm-svn: 203412
2014-03-09 13:20:01 +00:00
Simon Atanasyan
c146325b26
[Mips] Fix addendum reading for R_MIPS_32 relocation.
...
llvm-svn: 203411
2014-03-09 13:19:54 +00:00
Simon Atanasyan
0f96aca940
[Mips] Fix addendum reading for R_MIPS_HI16 / R_MIPS_LO16 relocations.
...
llvm-svn: 203410
2014-03-09 13:19:46 +00:00
Simon Atanasyan
cfffe940a8
[Mips] Create ELF object reader for MIPS target.
...
llvm-svn: 203409
2014-03-09 13:19:36 +00:00
Simon Atanasyan
3af8664858
[ELF] Factor out the code creates a Reference for the specified symbol
...
and relocation entry into the two virtual functions.
llvm-svn: 203408
2014-03-09 13:19:29 +00:00
Simon Atanasyan
6928b38c99
[Mips] Remove redundant 'mips' prefix from names of MipsELFWriter class
...
fields.
llvm-svn: 203406
2014-03-09 13:05:33 +00:00
Simon Atanasyan
8d8e340c61
[Mips] Reduce the code indentation.
...
llvm-svn: 203405
2014-03-09 13:05:26 +00:00
Simon Atanasyan
82381f97b9
[Mips] Change unused return type from 'bool' to 'void'.
...
llvm-svn: 203404
2014-03-09 13:05:20 +00:00
Simon Atanasyan
0784422520
[Mips] Remove unnecessary LLVM_ATTRIBUTE_UNUSED attribute.
...
llvm-svn: 203403
2014-03-09 13:05:15 +00:00
Simon Atanasyan
6af34b9661
[Mips] Do not inherit MipsDynamicLibraryWriter and MipsExecutableWriter
...
from MipsELFWriter class. MipsELFWriter is just a helper.
llvm-svn: 203402
2014-03-09 13:05:09 +00:00
Simon Atanasyan
16c425e985
[Mips] Mark class by 'final' keyword.
...
llvm-svn: 203401
2014-03-09 13:05:03 +00:00
Simon Atanasyan
8801c45110
[Mips] Remove redundant 'mips' prefix from names of MipsTargetHandler
...
and MipsDynamicSymbolTable classes fields.
llvm-svn: 203400
2014-03-09 13:04:56 +00:00
Simon Atanasyan
4881a93b73
[Mips] Remove redundant call to the unique_ptr::get() method followed
...
by the returned pointer dereferencing.
llvm-svn: 203399
2014-03-09 13:04:50 +00:00
Simon Atanasyan
f08deab395
[Mips] Remove unused class field.
...
llvm-svn: 203398
2014-03-09 13:04:45 +00:00
Rui Ueyama
0b87794f2b
Remove extra space.
...
llvm-svn: 203331
2014-03-08 01:45:39 +00:00
Michael J. Spencer
95a90099fa
[docs] Add missing features for the x86-64 ELF backend.
...
llvm-svn: 203313
2014-03-07 23:54:27 +00:00
Simon Atanasyan
e9ba661696
[Mips] Removed extra space. Thanks to dexonsmith's eagle eye.
...
llvm-svn: 203201
2014-03-07 04:50:53 +00:00
Rui Ueyama
16e543bc02
Add "override" and remove "virtual" where appropriate.
...
For the record, I used clang-modernize to add "override" and perl to remove
"virtual".
llvm-svn: 203164
2014-03-06 21:14:04 +00:00
Simon Atanasyan
54f6f7bd77
[Mips] Replace "virtual" by "override" in member function declarations
...
where it is appropriate.
llvm-svn: 203102
2014-03-06 10:29:45 +00:00
Chandler Carruth
5de228b287
[C++11] Replace LLVM_OVERRIDE with just "override" now that we're all
...
using MSVC 2012 or newer.
llvm-svn: 202627
2014-03-02 09:39:44 +00:00
Chandler Carruth
6eface7c9d
[C++11] Switch from LLVM_FINAL to just "final" now that all of LLVM is
...
requiring MSVC 2012 or newer.
llvm-svn: 202626
2014-03-02 09:35:33 +00:00
Shankar Easwaran
8353f965c4
[Hexagon] Rename the header file.
...
This is to accomodate future changes for newer revisions of the DSP.
No change in functionality.
llvm-svn: 202350
2014-02-27 06:28:49 +00:00
Simon Atanasyan
930ea1892f
[Mips] Remove non-ASCII symbol from the comment.
...
llvm-svn: 202290
2014-02-26 19:23:52 +00:00
Simon Atanasyan
46ff3ce2bd
[Mips] Split reloc26 function into two parts - for processing local and
...
external relocations.
llvm-svn: 202289
2014-02-26 19:17:20 +00:00
Simon Atanasyan
2043ee167c
[Mips] Use a correct number of bits when apply result of calculated relocation.
...
llvm-svn: 202288
2014-02-26 19:17:14 +00:00
Simon Atanasyan
a444eae5ce
[Mips] Exit from the class method as soon as possible.
...
llvm-svn: 202287
2014-02-26 19:17:07 +00:00
Nico Rieck
b9d84f4d14
[lld] Include reference kind in cycle detector debug output
...
This restores the debug output to how it was before r197727 broke it. This
went undetected because the corresponding test was never run due to broken
feature detection.
llvm-svn: 202079
2014-02-24 21:14:37 +00:00
Shankar Easwaran
9578442fe9
[ELF] Dont generate PHDR when creating dynamic libraries.
...
llvm-svn: 201741
2014-02-19 23:46:13 +00:00
Shankar Easwaran
babba413f5
[ELF] Fix alignment for dynamic relocation sections.
...
The sections .rela/.rel.(*) have a alignment of 2 in the final image created by
the linker. This needs to be properly set to the right alignment depending on
the architecture(32/64bits).
llvm-svn: 201740
2014-02-19 23:46:08 +00:00
Simon Atanasyan
06f8ea4c07
[Mips] Simplify the code. Replace redundant 'switch' operator by the single 'if' one.
...
llvm-svn: 201131
2014-02-11 06:36:16 +00:00
Simon Atanasyan
bf987c2dae
[Mips] Handle R_MIPS_COPY relocation.
...
llvm-svn: 201129
2014-02-11 05:34:02 +00:00
Simon Atanasyan
b828ebb5dd
[Mips] In case of executable file linking MIPS ABI requires to add even
...
undefined symbols to '.dynsym' if these symbols have corresponding entries
in a global part of GOT.
llvm-svn: 200716
2014-02-03 20:10:40 +00:00