From 7ff99155c39edd73ebf1c6adfa023b1048fee9a4 Mon Sep 17 00:00:00 2001 From: rdivacky Date: Wed, 4 Nov 2009 14:58:56 +0000 Subject: Update LLVM to r86025. --- lib/VMCore/LLVMContextImpl.h | 31 ++++++++++--------------------- 1 file changed, 10 insertions(+), 21 deletions(-) (limited to 'lib/VMCore/LLVMContextImpl.h') diff --git a/lib/VMCore/LLVMContextImpl.h b/lib/VMCore/LLVMContextImpl.h index 84902d5..1c3244b 100644 --- a/lib/VMCore/LLVMContextImpl.h +++ b/lib/VMCore/LLVMContextImpl.h @@ -22,8 +22,6 @@ #include "llvm/Metadata.h" #include "llvm/Constants.h" #include "llvm/DerivedTypes.h" -#include "llvm/System/Mutex.h" -#include "llvm/System/RWMutex.h" #include "llvm/Assembly/Writer.h" #include "llvm/ADT/APFloat.h" #include "llvm/ADT/APInt.h" @@ -108,41 +106,32 @@ public: FoldingSet MDNodeSet; - ValueMap AggZeroConstants; + ConstantUniqueMap AggZeroConstants; - typedef ValueMap, ArrayType, + typedef ConstantUniqueMap, ArrayType, ConstantArray, true /*largekey*/> ArrayConstantsTy; ArrayConstantsTy ArrayConstants; - typedef ValueMap, StructType, - ConstantStruct, true /*largekey*/> StructConstantsTy; + typedef ConstantUniqueMap, StructType, + ConstantStruct, true /*largekey*/> StructConstantsTy; StructConstantsTy StructConstants; - typedef ValueMap, VectorType, - ConstantVector> VectorConstantsTy; + typedef ConstantUniqueMap, VectorType, + ConstantVector> VectorConstantsTy; VectorConstantsTy VectorConstants; - ValueMap NullPtrConstants; + ConstantUniqueMap NullPtrConstants; - ValueMap UndefValueConstants; + ConstantUniqueMap UndefValueConstants; - ValueMap ExprConstants; + DenseMap , BlockAddress*> BlockAddresses; + ConstantUniqueMap ExprConstants; ConstantInt *TheTrueVal; ConstantInt *TheFalseVal; - // Lock used for guarding access to the leak detector - sys::SmartMutex LLVMObjectsLock; LeakDetectorImpl LLVMObjects; - // Lock used for guarding access to the type maps. - sys::SmartMutex TypeMapLock; - - // Recursive lock used for guarding access to AbstractTypeUsers. - // NOTE: The true template parameter means this will no-op when we're not in - // multithreaded mode. - sys::SmartMutex AbstractTypeUsersLock; - // Basic type instances. const Type VoidTy; const Type LabelTy; -- cgit v1.1