Add warning when linking modules with disagreeing target properties

llvm-svn: 5845
diff --git a/llvm/lib/Transforms/Utils/Linker.cpp b/llvm/lib/Transforms/Utils/Linker.cpp
index 65b05cd..b5cec06 100644
--- a/llvm/lib/Transforms/Utils/Linker.cpp
+++ b/llvm/lib/Transforms/Utils/Linker.cpp
@@ -469,6 +469,10 @@
 // shouldn't be relied on to be consistent.
 //
 bool LinkModules(Module *Dest, const Module *Src, std::string *ErrorMsg) {
+  if (Dest->getEndianness() != Src->getEndianness())
+    std::cerr << "WARNING: Linking two modules of different endianness!\n";
+  if (Dest->getPointerSize() != Src->getPointerSize())
+    std::cerr << "WARNING: Linking two modules of different pointer size!\n";
 
   // LinkTypes - Go through the symbol table of the Src module and see if any
   // types are named in the src module that are not named in the Dst module.