diff options
Diffstat (limited to 'deps/v8/src/wasm/wasm-external-refs.cc')
-rw-r--r-- | deps/v8/src/wasm/wasm-external-refs.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/deps/v8/src/wasm/wasm-external-refs.cc b/deps/v8/src/wasm/wasm-external-refs.cc index 9ca45183ef..13c159c0ef 100644 --- a/deps/v8/src/wasm/wasm-external-refs.cc +++ b/deps/v8/src/wasm/wasm-external-refs.cc @@ -247,6 +247,10 @@ int32_t int64_mod_wrapper(Address data) { if (divisor == 0) { return 0; } + if (divisor == -1 && dividend == std::numeric_limits<int64_t>::min()) { + WriteUnalignedValue<int64_t>(data, 0); + return 1; + } WriteUnalignedValue<int64_t>(data, dividend % divisor); return 1; } |