summaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/regress/wasm/regress-1284980.js
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2022-04-12 11:10:15 +0200
committerMichaël Zasso <targos@protonmail.com>2022-04-12 22:08:39 +0200
commitfd4f80ce54d7f7b7503e0999f6a9d293d493846d (patch)
tree00fba34b8aabeb481c7128fccee635719ee44a3b /deps/v8/test/mjsunit/regress/wasm/regress-1284980.js
parent73d53fe9f56d7ce5de4b9c9ad5257dc601bbce14 (diff)
downloadnode-new-fd4f80ce54d7f7b7503e0999f6a9d293d493846d.tar.gz
deps: update V8 to 10.1.124.6
PR-URL: https://github.com/nodejs/node/pull/42657 Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
Diffstat (limited to 'deps/v8/test/mjsunit/regress/wasm/regress-1284980.js')
-rw-r--r--deps/v8/test/mjsunit/regress/wasm/regress-1284980.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/regress/wasm/regress-1284980.js b/deps/v8/test/mjsunit/regress/wasm/regress-1284980.js
new file mode 100644
index 0000000000..a173673aa0
--- /dev/null
+++ b/deps/v8/test/mjsunit/regress/wasm/regress-1284980.js
@@ -0,0 +1,38 @@
+// Copyright 2022 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-liftoff --turbo-force-mid-tier-regalloc
+
+d8.file.execute('test/mjsunit/wasm/wasm-module-builder.js');
+
+const builder = new WasmModuleBuilder();
+builder.addMemory(16, 32, false);
+builder.addType(makeSig([kWasmI32, kWasmI32, kWasmI32], []));
+builder.addType(makeSig([kWasmS128], []));
+builder.addType(makeSig([], [kWasmF64, kWasmF64]));
+builder.addTag(makeSig([], []));
+// Generate function 1 (out of 3).
+builder.addFunction(undefined, 0 /* sig */)
+ .addLocals(kWasmI32, 2).addLocals(kWasmF32, 1).addLocals(kWasmI32, 1).addLocals(kWasmF64, 1)
+ .addBody([
+ kExprTry, kWasmVoid, // try i32
+ kExprCallFunction, 2, // call function #2
+ kExprI32Const, 0, // i32.const
+ kExprSelect, // select
+ kExprI32SConvertF64, // i32.trunc_f64_s
+ kExprI32Const, 0x00, // i32.const
+ kSimdPrefix, kExprI8x16Splat, // i8x16.splat
+ kSimdPrefix, kExprS128Store8Lane, 0x00, 0x00, 0x00, // s128.store8_lane
+ kExprCatch, 0, // catch
+ kExprCatchAll, // catch-all
+ kExprEnd, // end
+ kExprI32Const, 0x00, // i32.const
+ kSimdPrefix, kExprI8x16Splat, // i8x16.splat
+ kExprCallFunction, 1, // call function #1
+]);
+// Generate function 2 (out of 3).
+builder.addFunction(undefined, 1 /* sig */).addBody([kExprUnreachable]);
+// Generate function 3 (out of 3).
+builder.addFunction(undefined, 2 /* sig */).addBody([kExprUnreachable]);
+builder.toModule();