[llvm-commits] CVS: llvm/lib/VMCore/ModuleProvider.cpp

Misha Brukman brukman at cs.uiuc.edu
Mon Sep 22 18:45:01 PDT 2003


Changes in directory llvm/lib/VMCore:

ModuleProvider.cpp updated: 1.1 -> 1.2

---
Log message:

* No longer initialize the module, a subclass is more suitable to do this
  because it can add a module ID which we do not have at this time.
* Check to see if the module has been initialized when materializing it.


---
Diffs of the changes:

Index: llvm/lib/VMCore/ModuleProvider.cpp
diff -u llvm/lib/VMCore/ModuleProvider.cpp:1.1 llvm/lib/VMCore/ModuleProvider.cpp:1.2
--- llvm/lib/VMCore/ModuleProvider.cpp:1.1	Thu Sep 18 11:17:06 2003
+++ llvm/lib/VMCore/ModuleProvider.cpp	Mon Sep 22 18:44:13 2003
@@ -9,20 +9,20 @@
 
 /// ctor - always have a valid Module
 ///
-AbstractModuleProvider::AbstractModuleProvider() {
-  M = new Module("");
-}
+AbstractModuleProvider::AbstractModuleProvider() : TheModule(0) { }
 
 /// dtor - when we leave, we take our Module with us
 ///
 AbstractModuleProvider::~AbstractModuleProvider() {
-  delete M;
+  delete TheModule;
 }
 
 /// materializeFunction - make sure the given function is fully read.
 ///
 void AbstractModuleProvider::materializeModule() {
-  for (Module::iterator i = M->begin(), e = M->end(); i != e; ++i) {
+  if (!TheModule) return;
+
+  for (Module::iterator i = TheModule->begin(), e = TheModule->end();
+       i != e; ++i)
     materializeFunction(i);
-  }
 }





More information about the llvm-commits mailing list