Pass the address of the main MaskedValueIsZero function to allow recursion.
authorChris Lattner <sabre@nondot.org>
Mon, 30 Jan 2006 03:48:36 +0000 (03:48 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 30 Jan 2006 03:48:36 +0000 (03:48 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25797 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/TargetLowering.h

index 56fe7cbab5e2c3375251a5aeb559efe525de3b79..d538b4d6c0a1c0050ef2d7de788d7f31ac6ebe9b 100644 (file)
@@ -414,9 +414,11 @@ public:
 
   /// isMaskedValueZeroForTargetNode - Return true if 'Op & Mask' is known to
   /// be zero. Op is expected to be a target specific node. Used by DAG
-  /// combiner.
-  virtual bool isMaskedValueZeroForTargetNode(const SDOperand &Op,
-                                              uint64_t Mask) const;
+  /// combiner.  MVIZ is a function pointer to the main MaskedValueIsZero
+  /// function.
+  typedef bool (*MVIZFnPtr)(const SDOperand&, uint64_t, const TargetLowering &);
+  virtual bool isMaskedValueZeroForTargetNode(const SDOperand &Op,uint64_t Mask,
+                                              MVIZFnPtr MVIZ) const;
 
   //===--------------------------------------------------------------------===//
   // Inline Asm Support hooks