Bruno Cardoso Lopes
7bdb20f6a2
use std::vector instead of std::list for both Section and Symbol lists because
...
we care more about random access than insertion/deletion of elements.
llvm-svn: 75828
2009-07-15 20:49:10 +00:00
Torok Edwin
f955a6ef49
llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.
...
This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").
llvm-svn: 75640
2009-07-14 16:55:14 +00:00
Bruno Cardoso Lopes
046ddf7ca0
Cleanup the global emission and refactor some code
...
llvm-svn: 75537
2009-07-13 22:40:39 +00:00
Torok Edwin
ae8a3ff177
assert(0) -> LLVM_UNREACHABLE.
...
Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.
llvm-svn: 75379
2009-07-11 20:10:48 +00:00
Bruno Cardoso Lopes
f03970cf37
Changed ELFCodeEmitter to inherit from ObjectCodeEmitter
...
llvm-svn: 74821
2009-07-06 09:26:48 +00:00
Bruno Cardoso Lopes
0dc4fd3fcc
Factor some code out and support for Jump Table relocations
...
llvm-svn: 74760
2009-07-03 04:36:26 +00:00
Bruno Cardoso Lopes
810ef07890
shrinking down #includes
...
llvm-svn: 74718
2009-07-02 18:29:24 +00:00
Bruno Cardoso Lopes
bd4ae81317
Remove getFunctionAlignment from TargetELFInfo and use new MachineFunction alignment method
...
llvm-svn: 74686
2009-07-02 02:13:13 +00:00
Bruno Cardoso Lopes
5e0be0b9a1
Support Constant Pool Sections
...
Add section symbols to the symbol table
llvm-svn: 74170
2009-06-25 07:36:24 +00:00
Bruno Cardoso Lopes
7b196ba30e
Add more methods to gather target specific elf stuff
...
Support for .text relocations, implementing TargetELFWriter overloaded methods for x86/x86_64.
Use a map to track global values to their symbol table indexes
Code cleanup and small fixes
llvm-svn: 73894
2009-06-22 19:16:16 +00:00
Bruno Cardoso Lopes
d73d79eaf9
Introduce new BinaryObject (blob) class, ELF Writer modified to use it. BinaryObject.h by Aaron Gray
...
llvm-svn: 73333
2009-06-14 07:53:21 +00:00
Bruno Cardoso Lopes
9b68e8653f
Support for ELF Visibility
...
Emission for globals, using the correct data sections
Function alignment can be computed for each target using TargetELFWriterInfo
Some small fixes
llvm-svn: 73201
2009-06-11 19:16:03 +00:00
Bruno Cardoso Lopes
cfa07266cf
Simple ELF32/64 binary files can now be emitted for x86 and x86_64 without
...
relocation sections.
llvm-svn: 73038
2009-06-07 21:22:38 +00:00
Bruno Cardoso Lopes
b3b24681ca
Remove elf specific info from ELFWriter.h to Elf.h. Code cleanup and more comments added
...
llvm-svn: 72982
2009-06-06 03:56:29 +00:00
Bruno Cardoso Lopes
23b9f95d35
ELF Code Emitter now uses CurBufferPtr, BufferBegin and BufferEnd, as do JIT and
...
MachO Writer. This will change with the arrival of ObjectCodeEmitter and
BinaryObject
llvm-svn: 72906
2009-06-05 00:22:10 +00:00
Bruno Cardoso Lopes
8fa826d852
Move ELFCodeEmiter stuff to new files
...
llvm-svn: 72785
2009-06-03 17:47:27 +00:00