This diff switches OperationVerifier to using a worklist rather than recursion. The exception is our handling of isolated regions, it can still contain recursive calls, however, the parallel processing of these regions is preserved. This fixes the crash of the "verifier" on the input from https://github.com/llvm/circt/issues/5316 (but the IR printer would still crash with stack overflow). Test plan: ninja check-mlir check-all Differential revision: https://reviews.llvm.org/D154925
16 KiB
16 KiB