[wasm] [decoder] Fix incorrect use of VALIDATE macro
The VALIDATE macro should only be used for tests that do not have any side effect, because the side effect will only be executed if validation is active or in debug builds (because the condition is DCHECKed there). The TypeCheckBreak method has side effects since a while, since it inserts unreachable values on the stack. This did not lead to failures so far, since we only have validating users of the WasmFullDecoder. This will change once we have general lazy compilation of wasm modules, e.g. for tier-up. R=titzer@chromium.org Change-Id: I7b34dfd9297122616fa9ebdf899d9f44ca60273b Reviewed-on: https://chromium-review.googlesource.com/715416 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#48490}
This commit is contained in:
parent
ab15efa392
commit
a0cde81112
@ -1470,7 +1470,7 @@ class WasmFullDecoder : public WasmDecoder<validate> {
|
|||||||
" (previous was %u, this one %u)",
|
" (previous was %u, this one %u)",
|
||||||
i, br_arity, arity);
|
i, br_arity, arity);
|
||||||
}
|
}
|
||||||
if (!VALIDATE(TypeCheckBreak(target))) break;
|
if (!TypeCheckBreak(target)) break;
|
||||||
}
|
}
|
||||||
if (!VALIDATE(this->ok())) break;
|
if (!VALIDATE(this->ok())) break;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user