Use references now that it is natural to do so.

The linker never takes ownership of a module or changes which module it
is refering to, making it natural to use references.

llvm-svn: 254449
diff --git a/llvm/tools/llvm-link/llvm-link.cpp b/llvm/tools/llvm-link/llvm-link.cpp
index 984dfdc..2b63649 100644
--- a/llvm/tools/llvm-link/llvm-link.cpp
+++ b/llvm/tools/llvm-link/llvm-link.cpp
@@ -198,7 +198,7 @@
     }
 
     // Link in the specified function.
-    if (L.linkInModule(M.get(), Linker::Flags::None, Index.get(), F))
+    if (L.linkInModule(*M, Linker::Flags::None, Index.get(), F))
       return false;
   }
   return true;
@@ -238,7 +238,7 @@
     if (Verbose)
       errs() << "Linking in '" << File << "'\n";
 
-    if (L.linkInModule(M.get(), ApplicableFlags, Index.get()))
+    if (L.linkInModule(*M, ApplicableFlags, Index.get()))
       return false;
     // All linker flags apply to linking of subsequent files.
     ApplicableFlags = Flags;
@@ -266,7 +266,7 @@
   cl::ParseCommandLineOptions(argc, argv, "llvm linker\n");
 
   auto Composite = make_unique<Module>("llvm-link", Context);
-  Linker L(Composite.get(), diagnosticHandler);
+  Linker L(*Composite, diagnosticHandler);
 
   unsigned Flags = Linker::Flags::None;
   if (Internalize)