Use fallthrough in optimizeInstructions to further optimize (unsigned)x < 0 ==> i32(0) #7480
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently,
wasm-opt
cannot optimize the code as expected:(unsigned)x < 0 ==> i32(0)
.It should have been optimized after
merge-blocks
, as thestore
could have been hoisted. However, the load and store cannot be reordered, preventingwasm-opt
from doing so.This can be addressed in
optimizeInstructions
by usingfallthrough
to hoist the constant zero, enabling further optimizations.Fixes: #7455