Skip to content

Conversation

@weinbe58
Copy link
Member

No description provided.

This PR packages the current `scf.unroll` rewrite rules into a pass to
be used to try and unroll the scf.

The usage:

```python
from kirin. passes.aggressive import UnrollScf
UnrollScf(dialects).fixpoint(method)
```

For a single application, this pass unrolls the top-level of scf nodes
in the method body. Therefore, to unroll nested SCF you must apply this
in a fixpoint way.

The modification if removing `terminate` in the UnrollFor rewrite rule
fixes issue #475 because now this Pass fixpoint should be over the depth
of the nesting, not the number of iterations.
@weinbe58 weinbe58 closed this Sep 17, 2025
@weinbe58 weinbe58 reopened this Sep 17, 2025
@weinbe58 weinbe58 changed the base branch from main to release-0-17 September 17, 2025 15:33
@weinbe58 weinbe58 requested a review from Roger-luo September 17, 2025 15:33
@Roger-luo Roger-luo merged commit f9b98c9 into release-0-17 Sep 18, 2025
3 checks passed
@Roger-luo Roger-luo deleted the phil/release-0-17-backport-493 branch September 18, 2025 19:59
@github-actions
Copy link
Contributor

PR Preview Action v1.6.2
Preview removed because the pull request was closed.
2025-09-18 19:59 UTC

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants