diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/passes/Precompute.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/passes/Precompute.cpp b/src/passes/Precompute.cpp index 6f59fceb7..50c17510f 100644 --- a/src/passes/Precompute.cpp +++ b/src/passes/Precompute.cpp @@ -168,9 +168,10 @@ struct Precompute : public WalkerPass<PostWalker<Precompute, UnifiedExpressionVi // Until engines implement v128.const and we have SIMD-aware optimizations // that can break large v128.const instructions into smaller consts and // splats, do not try to precompute v128 expressions. - if (curr->type == v128) return; + if (isVectorType(curr->type)) return; // try to evaluate this into a const Flow flow = precomputeExpression(curr); + if (isVectorType(flow.value.type)) return; if (flow.breaking()) { if (flow.breakTo == NOTPRECOMPUTABLE_FLOW) return; if (flow.breakTo == RETURN_FLOW) { |