summaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/wasm/stringrefs-valid.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/mjsunit/wasm/stringrefs-valid.js')
-rw-r--r--deps/v8/test/mjsunit/wasm/stringrefs-valid.js31
1 files changed, 30 insertions, 1 deletions
diff --git a/deps/v8/test/mjsunit/wasm/stringrefs-valid.js b/deps/v8/test/mjsunit/wasm/stringrefs-valid.js
index 9bcc294e99..d045f77c14 100644
--- a/deps/v8/test/mjsunit/wasm/stringrefs-valid.js
+++ b/deps/v8/test/mjsunit/wasm/stringrefs-valid.js
@@ -40,6 +40,7 @@ for (let [name, code] of [['string', kStringRefCode],
b => b.addFunction(undefined, kSig_v_v).addLocals(code, 1).addBody([]));
}
+let kSig_w_i = makeSig([kWasmI32], [kWasmStringRef]);
let kSig_w_ii = makeSig([kWasmI32, kWasmI32], [kWasmStringRef]);
let kSig_w_v = makeSig([], [kWasmStringRef]);
let kSig_i_w = makeSig([kWasmStringRef], [kWasmI32]);
@@ -77,6 +78,11 @@ let kSig_w_zi = makeSig([kWasmStringViewIter, kWasmI32],
kExprLocalGet, 0, kExprLocalGet, 1,
...GCInstr(kExprStringNewUtf8), 0
]);
+ builder.addFunction("string.new_utf8_try", kSig_w_ii)
+ .addBody([
+ kExprLocalGet, 0, kExprLocalGet, 1,
+ ...GCInstr(kExprStringNewUtf8Try), 0
+ ]);
builder.addFunction("string.new_lossy_utf8", kSig_w_ii)
.addBody([
kExprLocalGet, 0, kExprLocalGet, 1,
@@ -245,6 +251,18 @@ let kSig_w_zi = makeSig([kWasmStringViewIter, kWasmI32],
...GCInstr(kExprStringViewIterSlice)
]);
+ builder.addFunction("string.from_code_point", kSig_w_i)
+ .addBody([
+ kExprLocalGet, 0,
+ ...GCInstr(kExprStringFromCodePoint)
+ ]);
+
+ builder.addFunction("string.hash", kSig_i_w)
+ .addBody([
+ kExprLocalGet, 0,
+ ...GCInstr(kExprStringHash)
+ ]);
+
let i8_array = builder.addArray(kWasmI8, true);
let i16_array = builder.addArray(kWasmI16, true);
@@ -253,7 +271,14 @@ let kSig_w_zi = makeSig([kWasmStringViewIter, kWasmI32],
kExprRefNull, i8_array,
kExprI32Const, 0,
kExprI32Const, 0,
- ...GCInstr(kExprStringNewWtf8Array)
+ ...GCInstr(kExprStringNewUtf8Array)
+ ]);
+ builder.addFunction("string.new_utf8_array_try", kSig_w_v)
+ .addBody([
+ kExprRefNull, i8_array,
+ kExprI32Const, 0,
+ kExprI32Const, 0,
+ ...GCInstr(kExprStringNewUtf8ArrayTry)
]);
builder.addFunction("string.new_lossy_utf8_array", kSig_w_v)
.addBody([
@@ -421,3 +446,7 @@ assertInvalid(
]);
},
/string.encode_wtf16_array\[1\] expected array of mutable i16, found local.get of type \(ref 0\)/);
+
+assertInvalid(builder => {
+ builder.addFunction(undefined, kSig_v_v).addBody([...GCInstr(0x790)]);
+}, /invalid stringref opcode: fb790/);