Skip to content

ConstraintAnalysis: Add AND fusing of { x <= C && x < C } => x < C - #8937

Merged
kripken merged 112 commits into
WebAssembly:mainfrom
kripken:compar.b.replace.2
Jul 24, 2026
Merged

ConstraintAnalysis: Add AND fusing of { x <= C && x < C } => x < C #8937
kripken merged 112 commits into
WebAssembly:mainfrom
kripken:compar.b.replace.2

Conversation

@kripken

@kripken kripken commented Jul 24, 2026

Copy link
Copy Markdown
Member

This is common in loops, where after we increment, we apply a bound.

@kripken
kripken requested a review from tlively July 24, 2026 18:58
@kripken
kripken requested a review from a team as a code owner July 24, 2026 18:58
@kripken

kripken commented Jul 24, 2026

Copy link
Copy Markdown
Member Author

After this PR, the next one is my Interesting Idea, which if it works, will actually optimize real-world loops with incrementing and possible overflowing...

@kripken

kripken commented Jul 24, 2026

Copy link
Copy Markdown
Member Author

(and assuming that works, all that is left afterwards is filling out missing patterns)

Comment thread src/ir/constraint.cpp Outdated
Co-authored-by: Thomas Lively <tlively123@gmail.com>
@kripken
kripken merged commit ad13059 into WebAssembly:main Jul 24, 2026
16 checks passed
@kripken
kripken deleted the compar.b.replace.2 branch July 24, 2026 20:20
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.

2 participants