1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/lib/VMCore/ModuleProvider.cpp
Chris Lattner def80d731a Rename AbstractModuleProvider -> ModuleProvider, to match the header file name,
and because, while the class used by the interface is abstract, the actual
concept is not.

llvm-svn: 8850
2003-10-04 20:14:59 +00:00

29 lines
779 B
C++

//===-- ModuleProvider.cpp - Base implementation for module providers -----===//
//
// Minimal implementation of the abstract interface for providing a module.
//
//===----------------------------------------------------------------------===//
#include "llvm/ModuleProvider.h"
#include "llvm/Module.h"
/// ctor - always have a valid Module
///
ModuleProvider::ModuleProvider() : TheModule(0) { }
/// dtor - when we leave, we take our Module with us
///
ModuleProvider::~ModuleProvider() {
delete TheModule;
}
/// materializeFunction - make sure the given function is fully read.
///
void ModuleProvider::materializeModule() {
if (!TheModule) return;
for (Module::iterator i = TheModule->begin(), e = TheModule->end();
i != e; ++i)
materializeFunction(i);
}