Rui Ueyama
e96044a370
[lld] Move AtomLayout from ELF to ReaderWriter so that it can be used by non-ELF writers.
...
Reviewers: Bigcheese
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D977
llvm-svn: 184061
2013-06-16 17:14:58 +00:00
Shankar Easwaran
4df05caadb
[lld][ELF] Inline header files into the one file using it
...
llvm-svn: 182427
2013-05-21 21:47:33 +00:00
Shankar Easwaran
87a594835f
[lld][ELF][x86_64,hexagon] Changed dynamic atoms to live in anonymous namespace
...
so that their names are hidden.
This addresses comments raised by Sean/Rafael.
llvm-svn: 182230
2013-05-20 03:57:01 +00:00
Shankar Easwaran
9af77a2cab
[lld][ELF][All Archs] Addend is used by dynamic relocations
...
only if they are relative. This removes the FIXME when the
relocations are being emitted and checks if the relocation
is relative and only then populates the addend information.
I couldnt add a testcase for this as llvm-readobj lacks
functionality of printing dynamic relocations.
When the functionality is added, remove the commented lines
from elf/ifunc.test to test functionality.
llvm-svn: 182077
2013-05-17 05:10:30 +00:00
Rui Ueyama
5f689e24de
[lld] Fix compiler warning that shift count is too big on P64.
...
llvm-svn: 181852
2013-05-14 23:51:50 +00:00
Michael J. Spencer
75ed350132
[ELF] Initialize readers and writers on creation.
...
This makes the target handler a constructor argument because the constructor of
OutputELFWriter relies on it being initialized.
llvm-svn: 181280
2013-05-07 00:28:07 +00:00
Nick Kledzik
c314b46e71
This is my Driver refactoring patch.
...
The major changes are:
1) LinkerOptions has been merged into TargetInfo
2) LinkerInvocation has been merged into Driver
3) Drivers no longer convert arguments into an intermediate (core) argument
list, but instead create a TargetInfo object and call setter methods on
it. This is only how in-process linking would work. That is, you can
programmatically set up a TargetInfo object which controls the linking.
4) Lots of tweaks to test suite to work with driver changes
5) Add the DarwinDriver
6) I heavily doxygen commented TargetInfo.h
Things to do after this patch is committed:
a) Consider renaming TargetInfo, given its new roll.
b) Consider pulling the list of input files out of TargetInfo. This will
enable in-process clients to create one TargetInfo the re-use it with
different input file lists.
c) Work out a way for Drivers to format the warnings and error done in
core linking.
llvm-svn: 178776
2013-04-04 18:59:24 +00:00
Shankar Easwaran
34353270a0
[ELF][Hexagon] fix few relocations and add test
...
llvm-svn: 178495
2013-04-01 20:20:11 +00:00
Shankar Easwaran
1d9e531856
[ELF][Hexagon] Create .got.plt entries with the appropriate alignment
...
llvm-svn: 178467
2013-04-01 15:14:34 +00:00
Shankar Easwaran
bb9d4a5ca0
[ELF] Add dynamic hash table and get simple dynamic libraries working with Hexagon
...
llvm-svn: 178323
2013-03-29 00:53:25 +00:00
Shankar Easwaran
c3048de5ac
[ELF][Hexagon] remove duplicated code
...
llvm-svn: 178027
2013-03-26 15:06:52 +00:00
Shankar Easwaran
499aa9e028
[ELF][Hexagon] add GOTREL/GOT relocations
...
llvm-svn: 177970
2013-03-26 02:20:56 +00:00
Shankar Easwaran
452ba13271
[ELF][Hexagon] Add Hexagon dynamic relocations
...
llvm-svn: 177484
2013-03-20 05:10:02 +00:00
Shankar Easwaran
8962feb915
[lld] remove trailing whitespace
...
llvm-svn: 177079
2013-03-14 16:09:49 +00:00
Shankar Easwaran
74fc23fa5d
[ELF][X86_64][Hexagon] order plt/got entries properly and fix test
...
llvm-svn: 176970
2013-03-13 20:30:11 +00:00
Shankar Easwaran
1729e12358
[ELF][Hexagon] add initial changes to add GOT/PLT
...
llvm-svn: 176415
2013-03-03 07:34:56 +00:00
Shankar Easwaran
da28895597
[ELF][Hexagon] add quickdata relocations
...
llvm-svn: 176298
2013-02-28 20:54:03 +00:00
Shankar Easwaran
dac3873442
[ELF][Hexagon] change Header flags
...
llvm-svn: 176278
2013-02-28 18:35:27 +00:00
Shankar Easwaran
8a2d1990d8
[lld][ELF][Hexagon] add more relocations
...
llvm-svn: 176277
2013-02-28 18:29:23 +00:00
Shankar Easwaran
c5eda3ad2b
fixing build error properly according to comment from David
...
llvm-svn: 176169
2013-02-27 05:53:38 +00:00
Shankar Easwaran
4f4ed0acdf
adding a return to fix compilation error from buildbot, build #75
...
llvm-svn: 176167
2013-02-27 05:33:27 +00:00
Shankar Easwaran
2ce6b43f40
fixing typo in header file
...
llvm-svn: 176162
2013-02-27 04:02:30 +00:00
Shankar Easwaran
596b40871a
[ELF][Hexagon] add _SDA_BASE_(absolute symbol pointing to start of quickdata)
...
llvm-svn: 175997
2013-02-24 16:02:24 +00:00
Shankar Easwaran
db74ffbe72
[ELF][Hexagon]add typeZeroFillFast
...
llvm-svn: 175983
2013-02-24 03:09:10 +00:00
Shankar Easwaran
8c55c01d2a
sort quickdata for the hexagon target
...
llvm-svn: 175904
2013-02-22 18:01:08 +00:00
Shankar Easwaran
873c9ffba0
add changes for typeDataFast
...
llvm-svn: 175901
2013-02-22 17:18:53 +00:00
Shankar Easwaran
34ab70f1e6
add changes for layoutafter/layoutbefore/ingroup/layoutpass and test cases
...
llvm-svn: 174658
2013-02-07 20:16:12 +00:00
Shankar Easwaran
f23fc86ca8
add proper copyright header
...
llvm-svn: 174178
2013-02-01 15:05:11 +00:00
Shankar Easwaran
73ef70b50f
add hexagon scatter bits and split hexgontargethandler to hexagonrelocationhander
...
llvm-svn: 174148
2013-02-01 05:26:02 +00:00
Michael J. Spencer
901fd6a4c8
[ELF] Use the target's LayoutHandler.
...
llvm-svn: 173966
2013-01-30 20:05:27 +00:00
Shankar Easwaran
e07245cdfc
hexagon targetinfo changes for getting the relocation kind from string and vice versa
...
llvm-svn: 173942
2013-01-30 16:05:43 +00:00
Shankar Easwaran
ddb122811b
simplify hexagon relocations handling
...
llvm-svn: 173938
2013-01-30 15:38:41 +00:00
Michael J. Spencer
8254185eea
Whitespace.
...
llvm-svn: 173921
2013-01-30 10:43:10 +00:00
Michael J. Spencer
d21b72730f
[ELF] Remove ReferenceKinds.
...
llvm-svn: 173912
2013-01-30 07:46:54 +00:00
Michael J. Spencer
409a737f36
[ELF] Add {Hexagon,PPC,X86}TargetHandler.
...
llvm-svn: 173909
2013-01-30 07:36:45 +00:00
Michael J. Spencer
e68f90355c
[ELF] Chop the ELF prefix off of most things.
...
llvm-svn: 173838
2013-01-29 22:03:39 +00:00
Shankar Easwaran
3256d4ff62
add elf targethandler
...
llvm-svn: 173430
2013-01-25 07:39:18 +00:00