@@ -759,21 +759,21 @@ transform::FuseOp::apply(transform::TransformRewriter &rewriter,
759759}
760760
761761LogicalResult transform::FuseOp::verify () {
762- auto iterspace_dim = getStaticTileSizes ().size ();
762+ auto iterspace_rank = getStaticTileSizes ().size ();
763763 ArrayRef<int64_t > permutation = getStaticTileInterchange ();
764- if (permutation.size () > iterspace_dim )
764+ if (permutation.size () > iterspace_rank )
765765 return emitOpError ()
766766 << " interchange length exceeds iteration space dimensions ("
767- << iterspace_dim << " ), found " << getTileInterchange ();
768- llvm::SmallDenseSet< int64_t , 4 > seen;
767+ << iterspace_rank << " ), found " << getTileInterchange ();
768+ SmallVector< bool > seen (iterspace_rank, false ) ;
769769 for (int64_t v : permutation) {
770770 if (!ShapedType::isDynamic (v)) {
771- if (v < 0 || v >= static_cast <int64_t >(iterspace_dim ))
771+ if (v < 0 || v >= static_cast <int64_t >(iterspace_rank ))
772772 return emitOpError () << " expects interchange values to be in range [0, "
773- << iterspace_dim << " ), found: " << v;
774- auto result = seen.insert (v);
775- if (!result.second )
773+ << iterspace_rank << " ), found: " << v;
774+ if (seen[v])
776775 return emitOpError () << " found duplicate interchange value: " << v;
776+ seen[v] = true ;
777777 }
778778 }
779779
0 commit comments