Move the ConstantInt uniquing table into LLVMContextImpl. This exposed a number of issues in

our current context-passing stuff, which is also fixed here


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76089 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson
2009-07-16 18:04:31 +00:00
parent f96db468fc
commit 001dbfebcb
34 changed files with 174 additions and 92 deletions

View File

@ -29,7 +29,7 @@ LLVMContext& llvm::getGlobalContext() {
return *GlobalContext;
}
LLVMContext::LLVMContext() : pImpl(new LLVMContextImpl()) { }
LLVMContext::LLVMContext() : pImpl(new LLVMContextImpl(*this)) { }
LLVMContext::~LLVMContext() { delete pImpl; }
// Constant accessors
@ -117,7 +117,7 @@ Constant *LLVMContext::getConstantIntSigned(const Type *Ty, int64_t V) {
}
ConstantInt* LLVMContext::getConstantInt(const APInt& V) {
return ConstantInt::get(V);
return pImpl->getConstantInt(V);
}
Constant* LLVMContext::getConstantInt(const Type* Ty, const APInt& V) {