diff options
author | Thomas Lively <tlively@google.com> | 2023-01-12 16:33:02 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-12 22:33:02 +0000 |
commit | 0cbbcc2b24dd30777c5b92d6840e3ecdfeeab023 (patch) | |
tree | b6529a0bfc1eeca12837f0a6984a0a215fd60d0e /src/passes/SignaturePruning.cpp | |
parent | abfe8cd7208dbaf58abaedd156093be9a3e2774d (diff) | |
download | binaryen-0cbbcc2b24dd30777c5b92d6840e3ecdfeeab023.tar.gz binaryen-0cbbcc2b24dd30777c5b92d6840e3ecdfeeab023.tar.bz2 binaryen-0cbbcc2b24dd30777c5b92d6840e3ecdfeeab023.zip |
[Wasm GC] Optimize casts of null values better (#5423)
Instead of only looking at the final fallthrough value and seeing whether it is
a `RefNull` expression to determine if we are casting a null value, check the
type of each intermediate fallthrough value to see if it is a null reference.
Also improve `evaluateCastCheck` to return `Failure` instead of
`SuccessOnlyIfNonNull` if the cast value is a reference to bottom type, since
those can never be non-null.
Diffstat (limited to 'src/passes/SignaturePruning.cpp')
0 files changed, 0 insertions, 0 deletions