diff options
Diffstat (limited to 'deps/v8/test/mjsunit/regress/wasm/regress-772332.js')
-rw-r--r-- | deps/v8/test/mjsunit/regress/wasm/regress-772332.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/regress/wasm/regress-772332.js b/deps/v8/test/mjsunit/regress/wasm/regress-772332.js new file mode 100644 index 0000000000..56e6f2ceb8 --- /dev/null +++ b/deps/v8/test/mjsunit/regress/wasm/regress-772332.js @@ -0,0 +1,33 @@ +// 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. + +// Flags: --expose-wasm --wasm-interpret-all + +load('test/mjsunit/wasm/wasm-constants.js'); +load('test/mjsunit/wasm/wasm-module-builder.js'); + +assertThrows(() => { +let __v_50315 = 0; +function __f_15356(__v_50316, __v_50317) { + let __v_50318 = new WasmModuleBuilder(); + if (__v_50317) { + let __v_50319 = __v_50318.addImport('import_module', 'other_module_fn', kSig_i_i); + } + __v_50318.addMemory(); + __v_50318.addFunction('load', kSig_i_i).addBody([ 0, 0, 0]).exportFunc(); + return __v_50318; +} + (function __f_15357() { + let __v_50320 = __f_15356(__v_50350 = false, __v_50351 = kSig_i_i); + __v_50320.addFunction('plus_one', kSig_i_i).addBody([kExprGetLocal, 0, kExprCallFunction, __v_50315, kExprI32Const, kExprI32Add, kExprReturn]).exportFunc(); + let __v_50321 = __f_15356(); + let __v_50324 = __v_50321.instantiate(); + let __v_50325 = __v_50320.instantiate({ + import_module: { + other_module_fn: __v_50324.exports.load + } + }); + __v_50325.exports.plus_one(); + })(); +}); |