[llvm] r225654 - IR: Separate out helper: resolveAfterOperandChange(), NFC

Duncan P. N. Exon Smith dexonsmith at apple.com
Mon Jan 12 11:14:15 PST 2015


Author: dexonsmith
Date: Mon Jan 12 13:14:15 2015
New Revision: 225654

URL: http://llvm.org/viewvc/llvm-project?rev=225654&view=rev
Log:
IR: Separate out helper: resolveAfterOperandChange(), NFC

Modified:
    llvm/trunk/include/llvm/IR/Metadata.h
    llvm/trunk/lib/IR/Metadata.cpp

Modified: llvm/trunk/include/llvm/IR/Metadata.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/Metadata.h?rev=225654&r1=225653&r2=225654&view=diff
==============================================================================
--- llvm/trunk/include/llvm/IR/Metadata.h (original)
+++ llvm/trunk/include/llvm/IR/Metadata.h Mon Jan 12 13:14:15 2015
@@ -762,6 +762,7 @@ private:
   void handleChangedOperand(void *Ref, Metadata *New);
 
   void resolve();
+  void resolveAfterOperandChange(Metadata *Old, Metadata *New);
 };
 
 /// \brief Forward declaration of metadata.

Modified: llvm/trunk/lib/IR/Metadata.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/IR/Metadata.cpp?rev=225654&r1=225653&r2=225654&view=diff
==============================================================================
--- llvm/trunk/lib/IR/Metadata.cpp (original)
+++ llvm/trunk/lib/IR/Metadata.cpp Mon Jan 12 13:14:15 2015
@@ -449,6 +449,22 @@ void GenericMDNode::resolve() {
   Uses->resolveAllUses();
 }
 
+void GenericMDNode::resolveAfterOperandChange(Metadata *Old, Metadata *New) {
+  assert(SubclassData32 != 0 && "Expected unresolved operands");
+
+  // Check if the last unresolved operand has just been resolved; if so,
+  // resolve this as well.
+  if (isOperandUnresolved(Old)) {
+    if (!isOperandUnresolved(New)) {
+      if (!--SubclassData32)
+        resolve();
+    }
+  } else {
+    // Operands shouldn't become unresolved.
+    assert(isOperandUnresolved(New) && "Operand just became unresolved");
+  }
+}
+
 void GenericMDNode::resolveCycles() {
   if (isResolved())
     return;
@@ -546,21 +562,8 @@ void GenericMDNode::handleChangedOperand
   if (I == Store.end()) {
     Store.insert(this);
 
-    if (!isResolved()) {
-      assert(SubclassData32 != 0 && "Expected unresolved operands");
-
-      // Check if the last unresolved operand has just been resolved; if so,
-      // resolve this as well.
-      if (isOperandUnresolved(Old)) {
-        if (!isOperandUnresolved(New)) {
-          if (!--SubclassData32)
-            resolve();
-        }
-      } else {
-        // Operands shouldn't become unresolved.
-        assert(isOperandUnresolved(New) && "Operand just became unresolved");
-      }
-    }
+    if (!isResolved())
+      resolveAfterOperandChange(Old, New);
 
     return;
   }





More information about the llvm-commits mailing list