Fixing several transforms which would drop the collector attribute
when copying functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45356 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Linker/LinkModules.cpp b/lib/Linker/LinkModules.cpp
index 0f2afe5..3aea74e 100644
--- a/lib/Linker/LinkModules.cpp
+++ b/lib/Linker/LinkModules.cpp
@@ -359,6 +359,8 @@
     Function *DestF = cast<Function>(DestGV);
     DestF->setCallingConv(SrcF->getCallingConv());
     DestF->setParamAttrs(SrcF->getParamAttrs());
+    if (SrcF->hasCollector())
+      DestF->setCollector(SrcF->getCollector());
   }
 }