[PATCH] D14955: [ELF] - Lazy relocations support for x86 target.

George Rimar via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 24 08:07:57 PST 2015


grimar created this revision.
grimar added reviewers: ruiu, rafael.
grimar added subscribers: llvm-commits, grimar.

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.
As a noticable difference with other targets can mention that relocation offset is required for writePltEntry.  I added it as parameter. Also it needs offset in Got, so added addr of Got either.

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).

http://reviews.llvm.org/D14955

Files:
  ELF/OutputSections.cpp
  ELF/OutputSections.h
  ELF/Target.cpp
  ELF/Target.h
  ELF/Writer.cpp
  test/ELF/plt-i686.s
  test/ELF/relocation-i686.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D14955.41050.patch
Type: text/x-patch
Size: 21150 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151124/fe299bcb/attachment.bin>


More information about the llvm-commits mailing list