Closed
Description
It appears that the OptimizeInstructions
pass does not yet hand-optimize i64 instructions as much as it optimizes i32 instructions. This recently surfaced when we changed compilation of !someI64
to emit eqz(isTrueish)
instead of using a dedicated isFalseish
helper, leading to missed optimizations like
i64.const 0
i64.ne
i32.eqz
becoming
i64.const 0
i64.eq
but not being optimized further to
i64.eqz
initially leading to the assumption that this is caused by the expression collapsing very late, thus requiring --converge
, which is not the case at it seems. Pinning it here so we don't forget :)
Metadata
Metadata
Assignees
Labels
No labels