George Rimar
ffb673515e
[ELF] - R_386_GOT32 relocation calculation fix.
...
R_386_GOT32 has multiple descriptions:
"System V Application Binary Interface Intel386 Architecture Processor Supplement Version 1.1" (https://github.com/hjl-tools/x86-psABI/wiki/intel386-psABI-1.1.pdf ), p36 contains next calculation for R_386_GOT32: G + A - GOT.
SYSTEM V APPLICATION BINARY INTERFACE 4 (https://refspecs.linuxfoundation.org/elf/abi386-4.pdf , p78) tolds us its G + A - P.
Oracle docs (https://docs.oracle.com/cd/E19455-01/816-0559/chapter6-26/index.html ) says its should be G + A.
gold/bfd calculates it as "G + A - GOT", but GOT means the end of the GOT section.
Patch fixes current calculation to gold/ld behavior.
Differential revision: http://reviews.llvm.org/D15750
llvm-svn: 258115
2016-01-19 11:00:48 +00:00
Ed Maste
f5d3cf6270
Add debugger rendezvous DT_DEBUG .dynamic entry
...
The runtime linker may store a pointer to a data structure used by
debuggers.
Differential Revision: http://reviews.llvm.org/D15775
llvm-svn: 256942
2016-01-06 15:52:27 +00:00
George Rimar
77b7779b48
Reapply r254098.
...
Fix is (OutputSections.cpp):
for (std::pair<const SymbolBody *, size_t> &I : Entries) {
=>
for (std::pair<const SymbolBody *, unsigned> &I : Entries) {
llvm-svn: 254105
2015-11-25 22:15:01 +00:00
George Rimar
dbb2f6188d
Revert r254098 as it seems broke build bot.
...
http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/3555
llvm-svn: 254103
2015-11-25 22:03:16 +00:00
George Rimar
21c0a7131b
[ELF] - Lazy relocations support for x86 target.
...
Patch implements lazy relocations for x86.
One of features of x86 is that executable files and shared object files have separate procedure linkage tables. So patch implements both cases.
Detailed information about instructions used can be found in http://docs.oracle.com/cd/E19620-01/805-3050/chapter6-1235/index.html (search: x86: Procedure Linkage Table).
Differential revision: http://reviews.llvm.org/D14955
llvm-svn: 254098
2015-11-25 21:37:59 +00:00
Rafael Espindola
9c8904fb38
Rename ld.lld2 to ld.lld since it is the default.
...
llvm-svn: 253437
2015-11-18 06:11:01 +00:00
Rafael Espindola
4b1285c55a
Rename test/elf2 to test/ELF.
...
llvm-svn: 253313
2015-11-17 05:36:42 +00:00