Changes in directory llvm/lib/Transforms/Utils:

CloneModule.cpp updated: 1.14 -> 1.15
---
Log message:

Make sure that cloning a module clones its target triple and dependent
library list as well.  This should help bugpoint.


---
Diffs of the changes:  (+7 -3)

 CloneModule.cpp |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)


Index: llvm/lib/Transforms/Utils/CloneModule.cpp
diff -u llvm/lib/Transforms/Utils/CloneModule.cpp:1.14 
llvm/lib/Transforms/Utils/CloneModule.cpp:1.15
--- llvm/lib/Transforms/Utils/CloneModule.cpp:1.14      Wed Jul 27 01:12:34 2005
+++ llvm/lib/Transforms/Utils/CloneModule.cpp   Wed Jan 18 15:32:45 2006
@@ -30,14 +30,18 @@
   Module *New = new Module(M->getModuleIdentifier());
   New->setEndianness(M->getEndianness());
   New->setPointerSize(M->getPointerSize());
+  New->setTargetTriple(M->getTargetTriple());
 
-  // Copy all of the type symbol table entries over...
+  // Copy all of the type symbol table entries over.
   const SymbolTable &SymTab = M->getSymbolTable();
   SymbolTable::type_const_iterator TypeI = SymTab.type_begin();
   SymbolTable::type_const_iterator TypeE = SymTab.type_end();
-  for ( ; TypeI != TypeE; ++TypeI ) {
+  for (; TypeI != TypeE; ++TypeI)
     New->addTypeName(TypeI->first, TypeI->second);
-  }
+  
+  // Copy all of the dependent libraries over.
+  for (Module::lib_iterator I = M->lib_begin(), E = M->lib_end(); I != E; ++I)
+    New->addLibrary(*I);
 
   // Create the value map that maps things from the old module over to the new
   // module.



_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to