aboutsummaryrefslogtreecommitdiffstats
path: root/lib/VMCore
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2009-07-01 21:22:36 +0000
committerOwen Anderson <resistor@mac.com>2009-07-01 21:22:36 +0000
commita148fdd8312c060c65bacf8fe61a6db5b2add6a5 (patch)
tree9e5f714db4af7dddfab061cb0016489f6d114c56 /lib/VMCore
parenta0619e843be1fcf8fba618ed93207cf5db42cc26 (diff)
downloadexternal_llvm-a148fdd8312c060c65bacf8fe61a6db5b2add6a5.zip
external_llvm-a148fdd8312c060c65bacf8fe61a6db5b2add6a5.tar.gz
external_llvm-a148fdd8312c060c65bacf8fe61a6db5b2add6a5.tar.bz2
Hold the LLVMContext by reference rather than by pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74640 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore')
-rw-r--r--lib/VMCore/Core.cpp2
-rw-r--r--lib/VMCore/LLVMContext.cpp4
-rw-r--r--lib/VMCore/Module.cpp2
3 files changed, 4 insertions, 4 deletions
diff --git a/lib/VMCore/Core.cpp b/lib/VMCore/Core.cpp
index 1c0a8f7..9f92e6f 100644
--- a/lib/VMCore/Core.cpp
+++ b/lib/VMCore/Core.cpp
@@ -53,7 +53,7 @@ void LLVMContextDispose(LLVMContextRef C) {
/*===-- Operations on modules ---------------------------------------------===*/
LLVMModuleRef LLVMModuleCreateWithName(const char *ModuleID, LLVMContextRef C) {
- return wrap(new Module(ModuleID, unwrap(C)));
+ return wrap(new Module(ModuleID, *unwrap(C)));
}
void LLVMDisposeModule(LLVMModuleRef M) {
diff --git a/lib/VMCore/LLVMContext.cpp b/lib/VMCore/LLVMContext.cpp
index 09c7fcc..d29b758 100644
--- a/lib/VMCore/LLVMContext.cpp
+++ b/lib/VMCore/LLVMContext.cpp
@@ -22,8 +22,8 @@ using namespace llvm;
static ManagedStatic<LLVMContext> GlobalContext;
-LLVMContext* getGlobalContext() {
- return &*GlobalContext;
+const LLVMContext& llvm::getGlobalContext() {
+ return *GlobalContext;
}
LLVMContext::LLVMContext() : pImpl(new LLVMContextImpl()) { }
diff --git a/lib/VMCore/Module.cpp b/lib/VMCore/Module.cpp
index 96a25a5..5ccd7cc 100644
--- a/lib/VMCore/Module.cpp
+++ b/lib/VMCore/Module.cpp
@@ -55,7 +55,7 @@ template class SymbolTableListTraits<GlobalAlias, Module>;
// Primitive Module methods.
//
-Module::Module(const std::string &MID, LLVMContext* C)
+Module::Module(const std::string &MID, const LLVMContext& C)
: Context(C), ModuleID(MID), DataLayout("") {
ValSymTab = new ValueSymbolTable();
TypeSymTab = new TypeSymbolTable();