Move the implementations of ==, != on AllocInfos here, from UnpackTraceFunction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9452 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/RegAlloc/AllocInfo.h b/lib/CodeGen/RegAlloc/AllocInfo.h
index ad23050..d982afc 100644
--- a/lib/CodeGen/RegAlloc/AllocInfo.h
+++ b/lib/CodeGen/RegAlloc/AllocInfo.h
@@ -56,6 +56,15 @@
     CV.push_back (ConstantSInt::get (Type::IntTy, Placement));
     return ConstantStruct::get (ST, CV);
   }
+
+  /// AllocInfos compare equal if the allocation placements are equal
+  /// (i.e., they can be equal even if they refer to operands from two
+  /// different instructions.)
+  ///
+  bool operator== (const AllocInfo &X) const {
+    return (X.AllocState == AllocState) && (X.Placement == Placement);
+  } 
+  bool operator!= (const AllocInfo &X) const { return !(*this == X); } 
 };
 
 #endif // ALLOCINFO_H