[Mlir-commits] [mlir] [mlir][affine] fix the issue of celidiv mul ceildiv expression not satisfying commutative (PR #109382)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Fri Oct 4 03:17:51 PDT 2024
================
@@ -349,6 +350,82 @@ unsigned AffineDimExpr::getPosition() const {
return static_cast<ImplType *>(expr)->position;
}
+/// A manually managed stack used to convert recursive function calls into
----------------
lipracer wrote:
I see. Using the walk method can avoid the strange way of scope exit from the stack, but I have two reasons why I don't use walk. One is that walk itself is a recursive call that already uses the stack, so it feels a bit strange to use an additional stack. One idea is to refactor the visitor to use the display stack management, which may be a big change. The other reason is to avoid stack overflow (although I haven't encountered this problem, others may have) https://github.com/llvm/llvm-project/issues/100059)This is also one reason why I want to refactor.
https://github.com/llvm/llvm-project/pull/109382
More information about the Mlir-commits
mailing list