[wasm] Do the default int64-lowering for all non-i64 stores.
First issue I found with my local fuzzing. R=titzer@chromium.org BUG=v8:5884 Review-Url: https://codereview.chromium.org/2656563003 Cr-Commit-Position: refs/heads/master@{#42683}
This commit is contained in:
parent
b98dd0af92
commit
a5e7382d84
@ -237,9 +237,7 @@ void Int64Lowering::LowerNode(Node* node) {
|
||||
NodeProperties::ChangeOp(node, store_op);
|
||||
ReplaceNode(node, node, high_node);
|
||||
} else {
|
||||
if (HasReplacementLow(node->InputAt(2))) {
|
||||
node->ReplaceInput(2, GetReplacementLow(node->InputAt(2)));
|
||||
}
|
||||
DefaultLowering(node);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
20
test/mjsunit/regress/wasm/regression-5884.js
Normal file
20
test/mjsunit/regress/wasm/regression-5884.js
Normal file
@ -0,0 +1,20 @@
|
||||
// Copyright 2017 the V8 project authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
load('test/mjsunit/wasm/wasm-constants.js');
|
||||
load('test/mjsunit/wasm/wasm-module-builder.js');
|
||||
|
||||
(function() {
|
||||
var builder = new WasmModuleBuilder();
|
||||
builder.addMemory(31, 31, false);
|
||||
builder.addFunction('test', kSig_i_iii)
|
||||
.addBodyWithEnd([
|
||||
// body:
|
||||
kExprI64Const, 0x41, kExprI64Const, 0x41, kExprI64LtS, kExprI32Const,
|
||||
0x01, kExprI32StoreMem, 0x00, 0x41, kExprUnreachable,
|
||||
kExprEnd, // @60
|
||||
])
|
||||
.exportFunc();
|
||||
var module = builder.instantiate();
|
||||
})();
|
Loading…
Reference in New Issue
Block a user