Skip to content

SSA CFG: identity remover pass and TLSF backed instruction store#16674

Merged
clonker merged 6 commits into
developfrom
ssa-cfg-add-identity-remover-pass
May 6, 2026
Merged

SSA CFG: identity remover pass and TLSF backed instruction store#16674
clonker merged 6 commits into
developfrom
ssa-cfg-add-identity-remover-pass

Conversation

@clonker
Copy link
Copy Markdown
Member

@clonker clonker commented May 5, 2026

Adds the following two:

  • TLSF free list: a two-level segregated fit allocator used as backing structure for the instruction store that enables stable ids across deletions
  • identity/nop/tombstone opcodes added to the instruction representation plus IdentityRemover pass
  • TrivialPhiEliminator rewritten on top of the new identity/nop primitives
  • UnreachableBlockCleaner frees instructions in unreachable blocks back into the store rather than keeping them around indefinitely

@clonker clonker force-pushed the ssa-cfg-add-identity-remover-pass branch 5 times, most recently from f56bdcd to 4524310 Compare May 5, 2026 14:57
@clonker clonker requested a review from blishko May 5, 2026 15:09
@clonker clonker marked this pull request as ready for review May 5, 2026 15:09
Copy link
Copy Markdown
Contributor

@blishko blishko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!
Just some things to clarify.

Comment thread libyul/backends/evm/ssa/transform/IdentityAndNopRemover.cpp
Comment thread libyul/backends/evm/ssa/transform/IdentityRemover.cpp Outdated
@clonker clonker force-pushed the ssa-cfg-add-identity-remover-pass branch from 4524310 to c45d441 Compare May 6, 2026 14:27
Copy link
Copy Markdown
Contributor

@blishko blishko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@clonker clonker merged commit eccdf47 into develop May 6, 2026
83 checks passed
@clonker clonker deleted the ssa-cfg-add-identity-remover-pass branch May 6, 2026 15:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants