[Orc] Tidy up the CompileOnDemand layer based on commit review from dblaikie.
authorLang Hames <lhames@gmail.com>
Fri, 12 Jun 2015 22:22:50 +0000 (22:22 +0000)
committerLang Hames <lhames@gmail.com>
Fri, 12 Jun 2015 22:22:50 +0000 (22:22 +0000)
NFC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239642 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h

index d4e6b19dc3d4f57ef87b1f3538d7793adeacda09..4c515dbfa8e863b1897c6df3ae9b17e001ff6cb7 100644 (file)
@@ -262,12 +262,12 @@ private:
     // Grab the name of the function being called here.
     std::string CalledFnName = Mangle(F.getName(), SrcM.getDataLayout());
 
-    const auto &Partition = LD.getDylibResources().Partitioner(F);
+    auto Partition = LD.getDylibResources().Partitioner(F);
     auto PartitionH = emitPartition(LD, LMH, Partition);
 
     TargetAddress CalledAddr = 0;
     for (auto *SubF : Partition) {
-      std::string FName(SubF->getName());
+      std::string FName = SubF->getName();
       auto FnBodySym =
         BaseLayer.findSymbolIn(PartitionH, Mangle(FName, SrcM.getDataLayout()),
                                false);
@@ -279,7 +279,7 @@ private:
       assert(FnBodySym && "Couldn't find function body.");
       assert(FnPtrSym && "Couldn't find function body pointer.");
 
-      auto FnBodyAddr = FnBodySym.getAddress();
+      TargetAddress FnBodyAddr = FnBodySym.getAddress();
       void *FnPtrAddr = reinterpret_cast<void*>(
           static_cast<uintptr_t>(FnPtrSym.getAddress()));
 
@@ -294,14 +294,15 @@ private:
     return CalledAddr;
   }
 
+  template <typename PartitionT>
   BaseLayerModuleSetHandleT emitPartition(CODLogicalDylib &LD,
                                           LogicalModuleHandle LMH,
-                                          const std::set<Function*> &Partition) {
+                                          const PartitionT &Partition) {
     auto &LMResources = LD.getLogicalModuleResources(LMH);
     Module &SrcM = *LMResources.SourceModule;
 
     // Create the module.
-    std::string NewName(SrcM.getName());
+    std::string NewName = SrcM.getName();
     for (auto *F : Partition) {
       NewName += ".";
       NewName += F->getName();