llvm/lib/VMCore
Bill Wendling d34cb1e09f [WIP] Initial code for module flags.
Module flags are key-value pairs associated with the module. They include a
'behavior' value, indicating how module flags react when mergine two
files. Normally, it's just the union of the two module flags. But if two module
flags have the same key, then the resulting flags are dictated by the behaviors.

Allowable behaviors are:

     Error
       Emits an error if two values disagree.

     Warning
       Emits a warning if two values disagree.

     Require
       Emits an error when the specified value is not present
       or doesn't have the specified value. It is an error for
       two (or more) llvm.module.flags with the same ID to have
       the Require behavior but different values. There may be
       multiple Require flags per ID.

     Override
       Uses the specified value if the two values disagree. It
       is an error for two (or more) llvm.module.flags with the
       same ID to have the Override behavior but different
       values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150300 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-11 11:38:06 +00:00
..
AsmWriter.cpp reapply the patches reverted in r149470 that reenable ConstantDataArray, 2012-02-05 02:29:43 +00:00
Attributes.cpp Extend Attributes to 64 bits 2012-01-20 17:56:17 +00:00
AutoUpgrade.cpp Add auto upgrade support for x86 pcmpgt/pcmpeq intrinics removed in r149367. 2012-02-03 06:10:55 +00:00
BasicBlock.cpp Add a constified getLandingPad() method. 2012-01-31 00:26:24 +00:00
CMakeLists.txt build/CMake: Finish removal of add_llvm_library_dependencies. 2011-11-29 19:25:30 +00:00
ConstantFold.cpp Remove some dead code and tidy things up now that vectors use ConstantDataVector 2012-02-06 21:56:39 +00:00
ConstantFold.h
Constants.cpp Reserve space in these vectors to prevent having to grow the array too 2012-02-07 01:27:51 +00:00
ConstantsContext.h Efficient Constant Uniquing. 2012-02-05 20:54:10 +00:00
Core.cpp Convert assert(0) to llvm_unreachable 2012-02-05 22:14:15 +00:00
DebugInfoProbe.cpp
DebugLoc.cpp
Dominators.cpp
Function.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:50:00 +00:00
GCOV.cpp
Globals.cpp
GVMaterializer.cpp
InlineAsm.cpp
Instruction.cpp [unwind removal] Remove all of the code for the dead 'unwind' instruction. There 2012-02-06 21:44:22 +00:00
Instructions.cpp [unwind removal] Remove all of the code for the dead 'unwind' instruction. There 2012-02-06 21:44:22 +00:00
IntrinsicInst.cpp
IRBuilder.cpp reapply the patches reverted in r149470 that reenable ConstantDataArray, 2012-02-05 02:29:43 +00:00
LeakDetector.cpp
LeaksContext.h
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
LLVMContext.cpp generalize LLVMContext::emitError to take a twine instead of a StringRef. 2012-01-03 23:47:05 +00:00
LLVMContextImpl.cpp Efficient Constant Uniquing. 2012-02-05 20:54:10 +00:00
LLVMContextImpl.h Efficient Constant Uniquing. 2012-02-05 20:54:10 +00:00
Makefile
Metadata.cpp More dead code removal (using -Wunreachable-code) 2012-01-20 21:51:11 +00:00
Module.cpp [WIP] Initial code for module flags. 2012-02-11 11:38:06 +00:00
Pass.cpp Added Pass::createPass(ID) to handle pass configuration by ID 2012-02-08 21:22:34 +00:00
PassManager.cpp Convert assert(0) to llvm_unreachable 2012-02-05 22:14:15 +00:00
PassRegistry.cpp
PrintModulePass.cpp
SymbolTableListTraitsImpl.h
Type.cpp Cache the sizes of vectors instead of calculating them all over the place. 2012-02-07 01:48:12 +00:00
Use.cpp
User.cpp Add some missing anchors. 2011-12-01 08:00:17 +00:00
Value.cpp Make Value::isDereferenceablePointer() handle unreachable code blocks. (This 2012-01-23 00:05:17 +00:00
ValueSymbolTable.cpp
ValueTypes.cpp Convert assert(0) to llvm_unreachable 2012-02-05 22:14:15 +00:00
Verifier.cpp Simplify some GEP checks in the verifier. 2012-02-03 17:28:51 +00:00