Index: src/wasm/ast-decoder.cc |
diff --git a/src/wasm/ast-decoder.cc b/src/wasm/ast-decoder.cc |
index d596610eb53bc4b89488d60d724449ec49ff99d6..08837de6bbcd22673e0c4513788cf5112aaf9197 100644 |
--- a/src/wasm/ast-decoder.cc |
+++ b/src/wasm/ast-decoder.cc |
@@ -1627,6 +1627,7 @@ class WasmFullDecoder : public WasmDecoder { |
builder_->Terminate(env->effect, env->control); |
if (FLAG_wasm_loop_assignment_analysis) { |
BitVector* assigned = AnalyzeLoopAssignment(pc); |
+ if (failed()) return env; |
if (assigned != nullptr) { |
// Only introduce phis for variables assigned in this loop. |
for (int i = EnvironmentCount() - 1; i >= 0; i--) { |