[llvm-commits] [llvm] r49515 - in /llvm/branches/ggreif/use-diet: include/llvm/Use.h include/llvm/User.h lib/VMCore/Use.cpp

Gabor Greif ggreif at gmail.com
Thu Apr 10 19:23:38 PDT 2008


Author: ggreif
Date: Thu Apr 10 21:23:37 2008
New Revision: 49515

URL: http://llvm.org/viewvc/llvm-project?rev=49515&view=rev
Log:
implement dropHungoffUses in terms of the new Use:zap method (naively)

Modified:
    llvm/branches/ggreif/use-diet/include/llvm/Use.h
    llvm/branches/ggreif/use-diet/include/llvm/User.h
    llvm/branches/ggreif/use-diet/lib/VMCore/Use.cpp

Modified: llvm/branches/ggreif/use-diet/include/llvm/Use.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/ggreif/use-diet/include/llvm/Use.h?rev=49515&r1=49514&r2=49515&view=diff

==============================================================================
--- llvm/branches/ggreif/use-diet/include/llvm/Use.h (original)
+++ llvm/branches/ggreif/use-diet/include/llvm/Use.h Thu Apr 10 21:23:37 2008
@@ -55,6 +55,7 @@
   User *getUser() const { return U; }
   const Use* getImpliedUser() const;
   static void initTags(Use *Start, Use *Stop, ptrdiff_t Done = 0);
+  static void zap(Use *Start, const Use *Stop);
 
   inline void set(Value *Val);
 

Modified: llvm/branches/ggreif/use-diet/include/llvm/User.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/ggreif/use-diet/include/llvm/User.h?rev=49515&r1=49514&r2=49515&view=diff

==============================================================================
--- llvm/branches/ggreif/use-diet/include/llvm/User.h (original)
+++ llvm/branches/ggreif/use-diet/include/llvm/User.h Thu Apr 10 21:23:37 2008
@@ -254,7 +254,9 @@
 		return OperandTraits<User>::op_begin(const_cast<User*>(this))[Idx];
 	}
   inline Use *allocHangoffUses(unsigned) const;
-  void dropHungoffUses(Use*);
+  void dropHungoffUses(Use *U) {
+    U->zap(U, U->getImpliedUser());
+	}
 
   Value *getOperand(unsigned i) const {
     assert(i < NumOperands && "getOperand() out of range!");

Modified: llvm/branches/ggreif/use-diet/lib/VMCore/Use.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/ggreif/use-diet/lib/VMCore/Use.cpp?rev=49515&r1=49514&r2=49515&view=diff

==============================================================================
--- llvm/branches/ggreif/use-diet/lib/VMCore/Use.cpp (original)
+++ llvm/branches/ggreif/use-diet/lib/VMCore/Use.cpp Thu Apr 10 21:23:37 2008
@@ -49,6 +49,10 @@
   }
 }
 
+//===----------------------------------------------------------------------===//
+//                         Use initTags Implementation
+//===----------------------------------------------------------------------===//
+
 void Use::initTags(Use *Start, Use *Stop, ptrdiff_t Done) {
   ptrdiff_t Count = 0;
   while (Start != Stop) 
@@ -66,5 +70,14 @@
   }
 }
 
+//===----------------------------------------------------------------------===//
+//                         Use zap Implementation
+//===----------------------------------------------------------------------===//
 
+void Use::zap(Use *Start, const Use *Stop) {
+  while (Start != Stop) {
+		(Start++)->set(0);
+	}
 }
+
+} // End llvm namespace





More information about the llvm-commits mailing list