mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-26 05:25:47 +00:00
Clarify the ownership model of LLVMContext and Module. Namely, contexts own
modules are instantiated in them. If the context is deleted, all of its owned modules are also deleted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113374 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -34,6 +34,14 @@ LLVMContext::LLVMContext() : pImpl(new LLVMContextImpl(*this)) {
|
||||
}
|
||||
LLVMContext::~LLVMContext() { delete pImpl; }
|
||||
|
||||
void LLVMContext::addModule(Module *M) {
|
||||
pImpl->OwnedModules.insert(M);
|
||||
}
|
||||
|
||||
void LLVMContext::removeModule(Module *M) {
|
||||
pImpl->OwnedModules.erase(M);
|
||||
}
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Recoverable Backend Errors
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
Reference in New Issue
Block a user