llvm-project/llvm/lib
Justin Hibbits 771c132e0f Add Position-independent Code model Module API.
Summary:
This makes PIC levels a Module flag attribute, which can be queried by the
backend.  The flag is named `PIC Level`, and can have a value of:

  0 - Backend-default
  1 - Small-model (-fpic)
  2 - Large-model (-fPIC)

These match the `-pic-level' command line argument for clang, and the value of the
preprocessor macro `__PIC__'.

Test Plan:
New flags tests specific for the 'PIC Level' module flag.
Tests to be added as part of a future commit for PowerPC, which will use this new API.

Reviewers: rafael, echristo

Reviewed By: rafael, echristo

Subscribers: rafael, llvm-commits

Differential Revision: http://reviews.llvm.org/D5882

llvm-svn: 221510
2014-11-07 04:46:10 +00:00
..
Analysis Indentation fixes 2014-11-06 19:05:57 +00:00
AsmParser X86: Implement the vectorcall calling convention 2014-10-28 01:29:26 +00:00
Bitcode Factor out call to push_back. NFC. 2014-11-06 22:39:16 +00:00
CodeGen [RegAlloc] Kill off the trivial spiller - nobody is using it any more. 2014-11-06 19:12:38 +00:00
DebugInfo [dwarfdump] Dump DW_AT_ranges values inline in the debug_info dump. 2014-10-23 04:08:34 +00:00
ExecutionEngine [JIT] Fix more missing endian conversions (opcodes for AArch64, ARM, and Mips stub functions, and ARM target in general) 2014-11-06 09:53:05 +00:00
IR Add Position-independent Code model Module API. 2014-11-07 04:46:10 +00:00
IRReader Remove unused variable. NFC. 2014-11-06 23:16:57 +00:00
LTO Add an option to the LTO code generator to disable vectorization during LTO 2014-10-26 21:50:58 +00:00
LineEditor [CMake] Use LINK_LIBS instead of target_link_libraries(). 2014-02-26 06:41:29 +00:00
Linker IR: MDNode => Value: NamedMDNode::getOperator() 2014-11-05 18:16:03 +00:00
MC Use a StringRefMemoryObject. NFC. 2014-11-07 01:09:51 +00:00
Object [ELF][yaml2obj] Handle additional MIPS specific st_other field flags 2014-11-06 22:46:24 +00:00
Option Add an overload of getLastArgNoClaim taking two OptSpecifiers. 2014-09-12 19:42:53 +00:00
ProfileData Use ErrorOr for the ::create factory on instrumented and sample profilers. 2014-11-03 00:51:45 +00:00
Support Remove unnecessary .c_str() when implicitly converting to Twine 2014-11-06 01:13:27 +00:00
TableGen Eliminate some deep std::vector copies. NFC. 2014-10-03 18:33:16 +00:00
Target [AArch64] Keep flags on condition vreg when instantiating a CB branch. 2014-11-07 02:50:00 +00:00
Transforms LoopVectorize: Don't assume pointees are sized 2014-11-07 00:31:14 +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