[Mlir-commits] [mlir] [mlir][sparse] partially support lowering sparse coiteration loops to scf.while/for. (PR #105565)

Aart Bik llvmlistbot at llvm.org
Thu Aug 22 15:16:58 PDT 2024


================
@@ -96,24 +96,32 @@ class I64BitSet {
     return *this;
   }
 
+  bool isSubSetOf(const I64BitSet p) const {
+    I64BitSet tmp = *this;
+    tmp |= p;
+    return tmp == p;
+  }
+
   // Needed by `llvm::const_set_bits_iterator_impl`.
   int find_first() const { return min(); }
   int find_next(unsigned prev) const {
-    if (prev >= max())
+    if (prev >= max() - 1)
----------------
aartbik wrote:

any -1 or +1 always makes me a bit nervous on boundaries
is prev > max() here okay?

https://github.com/llvm/llvm-project/pull/105565


More information about the Mlir-commits mailing list