llvm-6502/lib
Saleem Abdulrasool 2d0d7fd085 Add WoA object file emission support
Introduce support for WoA PE/COFF object file emission from LLVM.  Add the new
target specific PE/COFF Streamer (ARMWinCOFFStreamer) that handles the ARM
specific behaviour of PE/COFF object emission.  ARM exception information is not
yet emitted and is a TODO item.

The ARM specific object writer (ARMWinCOFFObjectWriter) handles the ARM specific
relocation handling in conjunction with the WinCOFFObjectWriter in the MC layer.
The MC layer needs to be updated to deal with the relocation adjustments.
Branch relocations are adjusted by 4 bytes (unlikely their ELF counterparts).

Minor tweaks to switch multiple conditional checks into equivalent switch
statements.  The ObjectFileInfo is updated to relax the object file setup for
Windows COFF.  Move the architecture checks into an assertion.  Windows COFF is
currently only supported on x86, x86_64, and ARM (thumb).  Rather than
defaulting to ELF, we will refuse to generate an object file.  This is better
though as you do not get an (arbitrary) object file which is different from the
request.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207345 91177308-0d34-0410-b5e6-96231b3b80d8
2014-04-27 03:48:22 +00:00
..
Analysis [LCG] Re-organize the methods for mutating a call graph to make their 2014-04-27 01:59:50 +00:00
AsmParser Add 'musttail' marker to call instructions 2014-04-24 20:14:34 +00:00
Bitcode Add 'musttail' marker to call instructions 2014-04-24 20:14:34 +00:00
CodeGen DAGCombiner: Simplify code a bit, make more transforms work with vectors. 2014-04-26 23:09:49 +00:00
DebugInfo Fix missing include 2014-04-25 21:42:35 +00:00
ExecutionEngine [C++] Use 'nullptr'. 2014-04-24 06:44:33 +00:00
IR Add missing include guards and missing #include, found by modules build. 2014-04-26 00:53:26 +00:00
IRReader [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
LineEditor [CMake] Use LINK_LIBS instead of target_link_libraries(). 2014-02-26 06:41:29 +00:00
Linker [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
LTO Add an -mattr option to the gold plugin to support subtarget features in LTO 2014-04-25 21:46:51 +00:00
MC Add WoA object file emission support 2014-04-27 03:48:22 +00:00
Object [yaml2obj][ELF] Remove unnecessary space between namespace name and 2014-04-23 17:30:29 +00:00
Option Protect the ArgList dtor 2014-04-20 23:59:00 +00:00
ProfileData ProfileData: Treat missing function counts as malformed 2014-04-25 02:45:33 +00:00
Support cl::ParseCommandLineOptions(): Use StringRef to receive sys::path::filename() instead of std::string. 2014-04-23 14:51:23 +00:00
TableGen [C++11] Make use of 'nullptr' in TableGen library. 2014-04-09 04:50:04 +00:00
Target Add WoA object file emission support 2014-04-27 03:48:22 +00:00
Transforms RecursivelyDeleteTriviallyDeadInstructions() could remove 2014-04-26 05:58:11 +00:00
CMakeLists.txt ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00
LLVMBuild.txt ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00
Makefile ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00