summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCasper Beyer <caspervonb@pm.me>2021-04-13 18:20:05 +0800
committerGitHub <noreply@github.com>2021-04-13 06:20:05 -0400
commitec1fce58d93de61462ddf0c9e9c58e6e844d2230 (patch)
tree420f2acf3636206f2d68d4af2e221d66b5cac56a
parent36f147364a6990dc7c57542243021a54f2f0a606 (diff)
fix(core): remove wasm-test-streaming flag (#10158)
-rw-r--r--cli/dts/lib.deno.shared_globals.d.ts26
-rw-r--r--cli/tests/integration_tests.rs5
-rw-r--r--cli/tests/wasm_streaming.js28
-rw-r--r--cli/tests/wasm_streaming.out1
-rw-r--r--core/runtime.rs1
-rw-r--r--tools/wpt/expectation.json129
6 files changed, 22 insertions, 168 deletions
diff --git a/cli/dts/lib.deno.shared_globals.d.ts b/cli/dts/lib.deno.shared_globals.d.ts
index d96d06830..e3fd2bf60 100644
--- a/cli/dts/lib.deno.shared_globals.d.ts
+++ b/cli/dts/lib.deno.shared_globals.d.ts
@@ -192,7 +192,7 @@ declare namespace WebAssembly {
maximum?: number;
}
- /** The value returned from `WebAssembly.instantiate` and `WebAssembly.instantiateStreaming`. */
+ /** The value returned from `WebAssembly.instantiate`. */
export interface WebAssemblyInstantiatedSource {
/* A `WebAssembly.Instance` object that contains all the exported WebAssembly functions. */
instance: Instance;
@@ -224,18 +224,6 @@ declare namespace WebAssembly {
export function compile(bytes: BufferSource): Promise<Module>;
/**
- * The `WebAssembly.compileStreaming()` function compiles a `WebAssembly.Module`
- * directly from a streamed underlying source. This function is useful if it
- * is necessary to a compile a module before it can be instantiated (otherwise,
- * the `WebAssembly.instantiateStreaming()` function should be used).
- *
- * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/compileStreaming)
- */
- export function compileStreaming(
- source: Response | Promise<Response>,
- ): Promise<Module>;
-
- /**
* The WebAssembly.instantiate() function allows you to compile and instantiate
* WebAssembly code.
*
@@ -267,18 +255,6 @@ declare namespace WebAssembly {
): Promise<Instance>;
/**
- * The `WebAssembly.instantiateStreaming()` function compiles and instantiates a
- * WebAssembly module directly from a streamed underlying source. This is the most
- * efficient, optimized way to load WebAssembly code.
- *
- * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/instantiateStreaming)
- */
- export function instantiateStreaming(
- response: Response | PromiseLike<Response>,
- importObject?: Imports,
- ): Promise<WebAssemblyInstantiatedSource>;
-
- /**
* The `WebAssembly.validate()` function validates a given typed array of
* WebAssembly binary code, returning whether the bytes form a valid wasm
* module (`true`) or not (`false`).
diff --git a/cli/tests/integration_tests.rs b/cli/tests/integration_tests.rs
index f856b90b8..1252d8500 100644
--- a/cli/tests/integration_tests.rs
+++ b/cli/tests/integration_tests.rs
@@ -3433,11 +3433,6 @@ console.log("finish");
output: "wasm_async.out",
});
- itest!(wasm_streaming {
- args: "run wasm_streaming.js",
- output: "wasm_streaming.out",
- });
-
itest!(wasm_unreachable {
args: "run wasm_unreachable.js",
output: "wasm_unreachable.out",
diff --git a/cli/tests/wasm_streaming.js b/cli/tests/wasm_streaming.js
deleted file mode 100644
index 1933425d7..000000000
--- a/cli/tests/wasm_streaming.js
+++ /dev/null
@@ -1,28 +0,0 @@
-// The following blob can be created by taking the following s-expr and pass
-// it through wat2wasm.
-// (module
-// (func $add (param $a i32) (param $b i32) (result i32)
-// local.get $a
-// local.get $b
-// i32.add)
-// (export "add" (func $add))
-// )
-// deno-fmt-ignore
-const bytes = new Uint8Array([
- 0x00, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00, 0x01, 0x07, 0x01, 0x60,
- 0x02, 0x7f, 0x7f, 0x01, 0x7f, 0x03, 0x02, 0x01, 0x00, 0x07, 0x07, 0x01,
- 0x03, 0x61, 0x64, 0x64, 0x00, 0x00, 0x0a, 0x09, 0x01, 0x07, 0x00, 0x20,
- 0x00, 0x20, 0x01, 0x6a, 0x0b
-]);
-
-async function main() {
- const wasm = await WebAssembly.instantiateStreaming(bytes, {});
-
- const result = wasm.instance.exports.add(1, 3);
- console.log("1 + 3 =", result);
- if (result != 4) {
- throw Error("bad");
- }
-}
-
-main();
diff --git a/cli/tests/wasm_streaming.out b/cli/tests/wasm_streaming.out
deleted file mode 100644
index 5cdf17de7..000000000
--- a/cli/tests/wasm_streaming.out
+++ /dev/null
@@ -1 +0,0 @@
-1 + 3 = 4
diff --git a/core/runtime.rs b/core/runtime.rs
index e974bdbb2..1f87fef9a 100644
--- a/core/runtime.rs
+++ b/core/runtime.rs
@@ -156,7 +156,6 @@ fn v8_init(v8_platform: Option<v8::UniquePtr<v8::Platform>>) {
v8::V8::initialize();
let flags = concat!(
- "--wasm-test-streaming",
// TODO(ry) This makes WASM compile synchronously. Eventually we should
// remove this to make it work asynchronously too. But that requires getting
// PumpMessageLoop and RunMicrotasks setup correctly.
diff --git a/tools/wpt/expectation.json b/tools/wpt/expectation.json
index 520ed3b01..587bd69c8 100644
--- a/tools/wpt/expectation.json
+++ b/tools/wpt/expectation.json
@@ -470,7 +470,9 @@
"Growing shared memory does not detach old buffer"
],
"toString.any.js": true,
- "type.tentative.any.js": false
+ "type.tentative.any.js": false,
+ "constructor-shared.tentative.any.js": false,
+ "constructor-types.tentative.any.js": false
},
"module": {
"constructor.any.js": true,
@@ -487,7 +489,16 @@
"length.any.js": [
"Setting (sloppy mode)"
],
- "toString.any.js": true
+ "toString.any.js": true,
+ "constructor-reftypes.tentative.any.js": [
+ "initialize externref table with default value",
+ "initialize anyfunc table with default value",
+ "initialize anyfunc table with a bad default value"
+ ],
+ "constructor-types.tentative.any.js": false,
+ "grow-reftypes.tentative.any.js": false,
+ "set-reftypes.tentative.any.js": false,
+ "type.tentative.any.js": false
}
},
"serialization": {
@@ -502,117 +513,19 @@
},
"webapi": {
"abort.any.js": false,
- "body.any.js": true,
- "contenttype.any.js": [
- "Response with Content-Type \"application/wasm\": compileStreaming",
- "Response with Content-Type \"application/wasm\": instantiateStreaming",
- "Response with Content-Type \"APPLICATION/wasm\": compileStreaming",
- "Response with Content-Type \"APPLICATION/wasm\": instantiateStreaming",
- "Response with Content-Type \"APPLICATION/WASM\": compileStreaming",
- "Response with Content-Type \"APPLICATION/WASM\": instantiateStreaming"
- ],
+ "body.any.js": false,
+ "contenttype.any.js": false,
"empty-body.any.js": false,
"historical.any.js": false,
"idlharness.any.js": false,
- "instantiateStreaming-bad-imports.any.js": [
- "Importing a function with an incorrectly-typed value: undefined",
- "Importing a function with an incorrectly-typed value: null",
- "Importing a function with an incorrectly-typed value: true",
- "Importing a function with an incorrectly-typed value: \"\"",
- "Importing a function with an incorrectly-typed value: symbol \"Symbol()\"",
- "Importing a function with an incorrectly-typed value: 1",
- "Importing a function with an incorrectly-typed value: 0.1",
- "Importing a function with an incorrectly-typed value: NaN",
- "Importing a function with an incorrectly-typed value: object \"[object Object]\"",
- "Importing an i32 global with an incorrectly-typed value: undefined",
- "Importing an i32 global with an incorrectly-typed value: null",
- "Importing an i32 global with an incorrectly-typed value: true",
- "Importing an i32 global with an incorrectly-typed value: \"\"",
- "Importing an i32 global with an incorrectly-typed value: symbol \"Symbol()\"",
- "Importing an i32 global with an incorrectly-typed value: plain object",
- "Importing an i32 global with an incorrectly-typed value: WebAssembly.Global",
- "Importing an i32 global with an incorrectly-typed value: WebAssembly.Global.prototype",
- "Importing an i32 global with an incorrectly-typed value: Object.create(WebAssembly.Global.prototype)",
- "Importing an i32 global with an incorrectly-typed value: BigInt",
- "Importing an i32 global with an incorrectly-typed value: WebAssembly.Global object (wrong value type)",
- "Importing an i64 global with an incorrectly-typed value: undefined",
- "Importing an i64 global with an incorrectly-typed value: null",
- "Importing an i64 global with an incorrectly-typed value: true",
- "Importing an i64 global with an incorrectly-typed value: \"\"",
- "Importing an i64 global with an incorrectly-typed value: symbol \"Symbol()\"",
- "Importing an i64 global with an incorrectly-typed value: plain object",
- "Importing an i64 global with an incorrectly-typed value: WebAssembly.Global",
- "Importing an i64 global with an incorrectly-typed value: WebAssembly.Global.prototype",
- "Importing an i64 global with an incorrectly-typed value: Object.create(WebAssembly.Global.prototype)",
- "Importing an i64 global with an incorrectly-typed value: Number",
- "Importing an i64 global with an incorrectly-typed value: WebAssembly.Global object (wrong value type)",
- "Importing an f32 global with an incorrectly-typed value: undefined",
- "Importing an f32 global with an incorrectly-typed value: null",
- "Importing an f32 global with an incorrectly-typed value: true",
- "Importing an f32 global with an incorrectly-typed value: \"\"",
- "Importing an f32 global with an incorrectly-typed value: symbol \"Symbol()\"",
- "Importing an f32 global with an incorrectly-typed value: plain object",
- "Importing an f32 global with an incorrectly-typed value: WebAssembly.Global",
- "Importing an f32 global with an incorrectly-typed value: WebAssembly.Global.prototype",
- "Importing an f32 global with an incorrectly-typed value: Object.create(WebAssembly.Global.prototype)",
- "Importing an f32 global with an incorrectly-typed value: BigInt",
- "Importing an f32 global with an incorrectly-typed value: WebAssembly.Global object (wrong value type)",
- "Importing an f64 global with an incorrectly-typed value: undefined",
- "Importing an f64 global with an incorrectly-typed value: null",
- "Importing an f64 global with an incorrectly-typed value: true",
- "Importing an f64 global with an incorrectly-typed value: \"\"",
- "Importing an f64 global with an incorrectly-typed value: symbol \"Symbol()\"",
- "Importing an f64 global with an incorrectly-typed value: plain object",
- "Importing an f64 global with an incorrectly-typed value: WebAssembly.Global",
- "Importing an f64 global with an incorrectly-typed value: WebAssembly.Global.prototype",
- "Importing an f64 global with an incorrectly-typed value: Object.create(WebAssembly.Global.prototype)",
- "Importing an f64 global with an incorrectly-typed value: BigInt",
- "Importing an f64 global with an incorrectly-typed value: WebAssembly.Global object (wrong value type)",
- "Importing an i32 mutable global with a primitive value",
- "Importing an i32 mutable global with an immutable Global object",
- "Importing an i64 mutable global with a primitive value",
- "Importing an i64 mutable global with an immutable Global object",
- "Importing an f32 mutable global with a primitive value",
- "Importing an f32 mutable global with an immutable Global object",
- "Importing an f64 mutable global with a primitive value",
- "Importing an f64 mutable global with an immutable Global object",
- "Importing memory with an incorrectly-typed value: undefined",
- "Importing memory with an incorrectly-typed value: null",
- "Importing memory with an incorrectly-typed value: true",
- "Importing memory with an incorrectly-typed value: \"\"",
- "Importing memory with an incorrectly-typed value: symbol \"Symbol()\"",
- "Importing memory with an incorrectly-typed value: 1",
- "Importing memory with an incorrectly-typed value: 0.1",
- "Importing memory with an incorrectly-typed value: NaN",
- "Importing memory with an incorrectly-typed value: plain object",
- "Importing memory with an incorrectly-typed value: WebAssembly.Memory",
- "Importing memory with an incorrectly-typed value: WebAssembly.Memory.prototype",
- "Importing memory with an incorrectly-typed value: Object.create(WebAssembly.Memory.prototype)",
- "Importing memory with an incorrectly-typed value: WebAssembly.Memory object (too large)",
- "Importing table with an incorrectly-typed value: undefined",
- "Importing table with an incorrectly-typed value: null",
- "Importing table with an incorrectly-typed value: true",
- "Importing table with an incorrectly-typed value: \"\"",
- "Importing table with an incorrectly-typed value: symbol \"Symbol()\"",
- "Importing table with an incorrectly-typed value: 1",
- "Importing table with an incorrectly-typed value: 0.1",
- "Importing table with an incorrectly-typed value: NaN",
- "Importing table with an incorrectly-typed value: plain object",
- "Importing table with an incorrectly-typed value: WebAssembly.Table",
- "Importing table with an incorrectly-typed value: WebAssembly.Table.prototype",
- "Importing table with an incorrectly-typed value: Object.create(WebAssembly.Table.prototype)",
- "Importing table with an incorrectly-typed value: WebAssembly.Table object (too large)"
- ],
+ "instantiateStreaming-bad-imports.any.js": false,
"instantiateStreaming.any.js": false,
- "invalid-args.any.js": true,
+ "invalid-args.any.js": false,
"invalid-code.any.js": false,
- "modified-contenttype.any.js": [
- "compileStreaming with Content-Type set late",
- "instantiateStreaming with Content-Type set late"
- ],
- "origin.sub.any.js": true,
- "rejected-arg.any.js": true,
- "status.any.js": true
+ "modified-contenttype.any.js": false,
+ "origin.sub.any.js": false,
+ "rejected-arg.any.js": false,
+ "status.any.js": false
}
},
"WebIDL": {