Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: merge basic blocks algorithm #956

Merged
merged 26 commits into from
May 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
ce9e634
Add basic-block-merging algorithm (using InlineDFG)
acl-cqc Jan 30, 2024
ef51577
Refactor: mk_rep takes immutable view only
acl-cqc Apr 15, 2024
9102fe8
Start on test (just build input CFG)
acl-cqc Apr 15, 2024
662bbed
Run test - merge_basic_blocks fails
acl-cqc Apr 15, 2024
a7d090e
More complex test without self-cycle, also failing
acl-cqc Apr 16, 2024
0a31201
Better handle entry/exit, less defensive unique-succ-of-pred
acl-cqc Apr 16, 2024
e840b06
use hugr_mut for deeper ops
acl-cqc Apr 19, 2024
bca80f3
Tuple unpacking at junction, add Input and Output nodes in merged bb
acl-cqc Apr 19, 2024
010679f
entry/exit changes, so don't cache
acl-cqc Apr 19, 2024
e74a782
validate
acl-cqc Apr 19, 2024
e7767a5
clippy
acl-cqc Apr 22, 2024
5b2e5c1
Try to make test clearer, comments
acl-cqc Apr 22, 2024
bf7b32e
Merge remote-tracking branch 'origin/main' into HEAD
acl-cqc Apr 26, 2024
fbd6b56
Parametrize with self_loop:bool - new/true case failing
acl-cqc Apr 26, 2024
113248c
fix self-loop
acl-cqc Apr 25, 2024
2c323c6
Break out extension
acl-cqc Apr 25, 2024
28ac13c
WIP test building three-bb cfg
acl-cqc Apr 25, 2024
496e56b
Call merge-basic-blocks - crashes! - fix entry/exit check
acl-cqc Apr 25, 2024
0932fb4
test we have one BB + exit -> fail, we are only merging once
acl-cqc Apr 25, 2024
2d9718e
fix via worklist
acl-cqc Apr 25, 2024
0635563
check Test node has the only Input, and a LoadConstant
acl-cqc Apr 25, 2024
9ae4a3e
Fix for extension inference
acl-cqc Apr 26, 2024
4e875b3
Rewrite triple test w/ builder
acl-cqc Apr 26, 2024
7819211
Common up find_unique
acl-cqc Apr 26, 2024
fbc6f75
simplify single-predecessor check; comments
acl-cqc May 10, 2024
6e4a3fe
missed debug
acl-cqc May 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions hugr/src/algorithm.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@

pub mod const_fold;
mod half_node;
pub mod merge_bbs;
pub mod nest_cfgs;
Loading