diff options
author | Michaël Zasso <targos@protonmail.com> | 2018-09-21 09:14:51 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2018-09-22 18:29:25 +0200 |
commit | 0e7ddbd3d7e9439c67573b854c49cf82c398ae82 (patch) | |
tree | 2afe372acde921cb57ddb3444ff00c5adef8848c /deps/v8/test/mjsunit/regress/wasm/regress-8059.js | |
parent | 13245dc50da4cb7443c39ef6c68d419d5e6336d4 (diff) | |
download | android-node-v8-0e7ddbd3d7e9439c67573b854c49cf82c398ae82.tar.gz android-node-v8-0e7ddbd3d7e9439c67573b854c49cf82c398ae82.tar.bz2 android-node-v8-0e7ddbd3d7e9439c67573b854c49cf82c398ae82.zip |
deps: update V8 to 7.0.276.20
PR-URL: https://github.com/nodejs/node/pull/22754
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'deps/v8/test/mjsunit/regress/wasm/regress-8059.js')
-rw-r--r-- | deps/v8/test/mjsunit/regress/wasm/regress-8059.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/regress/wasm/regress-8059.js b/deps/v8/test/mjsunit/regress/wasm/regress-8059.js new file mode 100644 index 0000000000..5c421c4ee4 --- /dev/null +++ b/deps/v8/test/mjsunit/regress/wasm/regress-8059.js @@ -0,0 +1,42 @@ +// Copyright 2018 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: --no-wasm-disable-structured-cloning + +load("test/mjsunit/wasm/wasm-constants.js"); +load("test/mjsunit/wasm/wasm-module-builder.js"); + +(function TestPostModule() { + let builder = new WasmModuleBuilder(); + builder.addFunction("add", kSig_i_ii) + .addBody([kExprGetLocal, 0, kExprGetLocal, 1, kExprI32Add]) + .exportFunc(); + + let module = builder.toModule(); + + let workerScript = ` + onmessage = function(module) { + try { + let instance = new WebAssembly.Instance(module); + let result = instance.exports.add(40, 2); + postMessage(result); + } catch(e) { + postMessage('ERROR: ' + e); + } + } + `; + + let realm = Realm.create(); + Realm.shared = { m:module, s:workerScript }; + + let realmScript = ` + let worker = new Worker(Realm.shared.s); + worker.postMessage(Realm.shared.m); + let message = worker.getMessage(); + worker.terminate(); + message; + `; + let message = Realm.eval(realm, realmScript); + assertEquals(42, message); +})(); |