1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/lib/IR
Pete Cooper 7a5199df98 Add a doFinalization method to the DataLayout pass.
This pass is meant to be immutable, however it holds mutable state to cache StructLayouts.
This method will allow the pass manager to clear the mutable state between runs.

Note that unfortunately it is still necessary to have the destructor, even though it does the
same thing as doFinalization.  This is because most TargetMachines embed a DataLayout on which
doFinalization isn't run as its never added to the pass manager.

I also didn't think it was necessary to complication things with a deInit method for which
doFinalization and ~DataLayout both call as there's only one field of mutable state.  If we had
more fields to finalize i'd have added this.

llvm-svn: 176877
2013-03-12 17:37:31 +00:00
..
AsmWriter.cpp Remove support for versioned debug info. 2013-03-11 23:39:23 +00:00
AttributeImpl.h Don't add the 'Value' string if there isn't one. 2013-02-28 21:17:03 +00:00
Attributes.cpp Don't add an attribute that already exists and don't remove an attribute that doesn't exist. 2013-02-28 19:17:40 +00:00
AutoUpgrade.cpp
BasicBlock.cpp
CMakeLists.txt Move TargetTransformInfo to live under the Analysis library. This no 2013-01-07 03:08:10 +00:00
ConstantFold.cpp IR: Don't constant fold GEP bitcasts between different address spaces 2013-02-27 02:26:42 +00:00
ConstantFold.h
Constants.cpp Replace temporary vectors with arrays. 2013-03-07 20:53:34 +00:00
ConstantsContext.h
Core.cpp Add multithreading functions and shutdown to the C API. Patch by Moritz 2013-02-17 16:35:51 +00:00
DataLayout.cpp Add a doFinalization method to the DataLayout pass. 2013-03-12 17:37:31 +00:00
DebugInfo.cpp Remove support for versioned debug info. 2013-03-11 23:39:23 +00:00
DebugLoc.cpp
DIBuilder.cpp Add asserts to DIBuilder & fix DINameSpace::Verify to allow unnamed namespaces. 2013-03-11 23:21:19 +00:00
Dominators.cpp
Function.cpp Cache the result of Function::getIntrinsicID() in a DenseMap attached to the LLVMContext. 2013-03-01 18:48:54 +00:00
GCOV.cpp
Globals.cpp Added instance variable/initializers/getter/setters for new keyword externally initialized to GlobalVariable. No *TRUE* functionality change. 2013-02-03 21:54:38 +00:00
GVMaterializer.cpp
InlineAsm.cpp Add static cast to unsigned char whenever a character classification function is called with a signed char argument, in order to avoid assertions in Windows Debug configuration. 2013-02-12 21:21:59 +00:00
Instruction.cpp Fix a bug in mayHaveSideEffects. Functions that do not return are now considered as instructions with side effects. 2013-02-19 20:02:09 +00:00
Instructions.cpp Modify {Call,Invoke}Inst::addAttribute to take an AttrKind. 2013-03-02 01:20:18 +00:00
IntrinsicInst.cpp
IRBuilder.cpp
LeakDetector.cpp
LeaksContext.h
LLVMBuild.txt
LLVMContext.cpp Memory Dependence Analysis (not mem-dep test) take advantage of "invariant.load" metadata. 2013-03-06 17:48:48 +00:00
LLVMContextImpl.cpp Revert "Rename LLVMContext diagnostic handler types and functions." 2013-02-11 05:37:07 +00:00
LLVMContextImpl.h Cache the result of Function::getIntrinsicID() in a DenseMap attached to the LLVMContext. 2013-03-01 18:48:54 +00:00
Makefile Actually update the CMake and Makefile builds correctly, and update the 2013-01-02 12:09:16 +00:00
Metadata.cpp Assert to bounds check MDNode::getOperand. 2013-03-08 21:08:23 +00:00
Module.cpp Removed extraneous #include "LLVMContextImpl.h" from lib/IR/Module.cpp 2013-03-01 21:37:24 +00:00
Pass.cpp Enable *BasicBlockPass::createPrinterPass() 2013-02-08 23:37:41 +00:00
PassManager.cpp Use a DenseMap instead of a std::map for AnalysisID -> Pass* maps. This reduces the pass-manager overhead from FPPassManager::runOnFunction() by about 10%. 2013-02-26 01:31:59 +00:00
PassRegistry.cpp
PrintModulePass.cpp Enable *BasicBlockPass::createPrinterPass() 2013-02-08 23:37:41 +00:00
SymbolTableListTraitsImpl.h
Type.cpp
TypeFinder.cpp Move TypeFinder.h into the IR tree, it clearly belongs with the IR library. 2013-01-07 15:43:51 +00:00
Use.cpp Fix Casting 2013-01-14 21:04:37 +00:00
User.cpp
Value.cpp Cache the result of Function::getIntrinsicID() in a DenseMap attached to the LLVMContext. 2013-03-01 18:48:54 +00:00
ValueSymbolTable.cpp
ValueTypes.cpp
Verifier.cpp Unify clang/llvm attributes for asan/tsan/msan (LLVM part) 2013-02-26 06:58:09 +00:00