Linker: Avoid some ridiculous indentation by using a temporary. NFC
authorJustin Bogner <mail@justinbogner.com>
Mon, 15 Aug 2016 22:41:42 +0000 (22:41 +0000)
committerJustin Bogner <mail@justinbogner.com>
Mon, 15 Aug 2016 22:41:42 +0000 (22:41 +0000)
This was indented really awkwardly, and clang-format didn't seem to
know how to do any better. Avoid the issue with a temporary variable.

llvm-svn: 278756

llvm/lib/Linker/IRMover.cpp

index 12ceaa2d3226efe9753615507042e260baaa5c02..6def096ccd7ae12892f9c8ccc485c09e19aa455d 100644 (file)
@@ -805,18 +805,17 @@ IRLinker::linkAppendingVarProto(GlobalVariable *DstGV,
   SmallVector<Constant *, 16> SrcElements;
   getArrayElements(SrcGV->getInitializer(), SrcElements);
 
-  if (IsNewStructor)
-    SrcElements.erase(
-        remove_if(SrcElements,
-                  [this](Constant *E) {
-                    auto *Key = dyn_cast<GlobalValue>(
-                        E->getAggregateElement(2)->stripPointerCasts());
-                    if (!Key)
-                      return false;
-                    GlobalValue *DGV = getLinkedToGlobal(Key);
-                    return !shouldLink(DGV, *Key);
-                  }),
-        SrcElements.end());
+  if (IsNewStructor) {
+    auto It = remove_if(SrcElements, [this](Constant *E) {
+      auto *Key =
+          dyn_cast<GlobalValue>(E->getAggregateElement(2)->stripPointerCasts());
+      if (!Key)
+        return false;
+      GlobalValue *DGV = getLinkedToGlobal(Key);
+      return !shouldLink(DGV, *Key);
+    });
+    SrcElements.erase(It, SrcElements.end());
+  }
   uint64_t NewSize = DstNumElements + SrcElements.size();
   ArrayType *NewType = ArrayType::get(EltTy, NewSize);