op_iterator-ify dropAllReferences
authorGabor Greif <ggreif@gmail.com>
Wed, 11 Jun 2008 11:45:26 +0000 (11:45 +0000)
committerGabor Greif <ggreif@gmail.com>
Wed, 11 Jun 2008 11:45:26 +0000 (11:45 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52215 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/User.h

index 23967c7420b81d09dc7f87ef6311b2187cccb631..f1f41101cba6df302ab1f798b190f57d70103d64 100644 (file)
@@ -278,15 +278,14 @@ public:
   // dropAllReferences() - This function is in charge of "letting go" of all
   // objects that this User refers to.  This allows one to
   // 'delete' a whole class at a time, even though there may be circular
-  // references... first all references are dropped, and all use counts go to
-  // zero.  Then everything is delete'd for real.  Note that no operations are
+  // references...  First all references are dropped, and all use counts go to
+  // zero.  Then everything is deleted for real.  Note that no operations are
   // valid on an object that has "dropped all references", except operator
   // delete.
   //
   void dropAllReferences() {
-    Use *OL = OperandList;
-    for (unsigned i = 0, e = NumOperands; i != e; ++i)
-      OL[i].set(0);
+    for (op_iterator i = op_begin(), e = op_end(); i != e; ++i)
+      i->set(0);
   }
 
   /// replaceUsesOfWith - Replaces all references to the "From" definition with