Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@uenoku
Copy link
Member

@uenoku uenoku commented Jan 15, 2025

LowerFormalToHW used applyPatternsGreedily on ModuleOp but that is overkill for what LowerFormalToHW does. Since applyPatternsGreedily is called on ModuleOp, canonicalizations are executed in a single thread and LowerFormalToHW consumed non-trivial amount of time in large designs.

This commit simply replaces RewriterPattern with a helper function and call it manually.

Should fix #8035.

LowerFormalToHW used `applyPatternsGreedily` on ModuleOp but
that is overkill for what LowerFormalToHW does. `applyPatternsGreedily`
is called on ModuleOp so canonicalizations are executed in a single
thread.

This commit simply replaces RewriterPattern with a helper function and
call it manually.
Seems like I messed up when replacing the code.
@uenoku uenoku merged commit 65c4186 into llvm:main Jan 15, 2025
4 checks passed
TaoBi22 pushed a commit to TaoBi22/circt that referenced this pull request Jul 17, 2025
LowerFormalToHW used `applyPatternsGreedily` on ModuleOp but
that is overkill for what LowerFormalToHW does. `applyPatternsGreedily`
is called on ModuleOp so canonicalizations are executed in a single
thread.

This commit simply replaces RewriterPattern with a helper function and
call it manually.
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.

firtool -disable-opt runs folders (via LowerFormalToHW)

2 participants