summaryrefslogtreecommitdiff
path: root/ext/webgpu/01_webgpu.js
diff options
context:
space:
mode:
authorAaron O'Mullan <aaron.omullan@gmail.com>2022-01-24 23:47:05 +0100
committerGitHub <noreply@github.com>2022-01-24 23:47:05 +0100
commitbd5d445da98435d03e2f6a6f6d5478ff623bd714 (patch)
treea3b43fe0a33048b6eaa4d8adf736545f740bb423 /ext/webgpu/01_webgpu.js
parentbc8de78da3c37bb5ce70547a7d3a3576d1a7734f (diff)
chore: re-enable wgpu_sync (#13453)
Diffstat (limited to 'ext/webgpu/01_webgpu.js')
-rw-r--r--ext/webgpu/01_webgpu.js49
1 files changed, 43 insertions, 6 deletions
diff --git a/ext/webgpu/01_webgpu.js b/ext/webgpu/01_webgpu.js
index f1d3eb120..45d910c1a 100644
--- a/ext/webgpu/01_webgpu.js
+++ b/ext/webgpu/01_webgpu.js
@@ -3061,6 +3061,48 @@
}
/**
+ * @param {GPUBuffer} destination
+ * @param {GPUSize64} destinationOffset
+ * @param {GPUSize64} size
+ */
+ clearBuffer(destination, destinationOffset, size) {
+ webidl.assertBranded(this, GPUCommandEncoder);
+ const prefix = "Failed to execute 'clearBuffer' on 'GPUCommandEncoder'";
+ webidl.requiredArguments(arguments.length, 3, { prefix });
+ destination = webidl.converters.GPUBuffer(destination, {
+ prefix,
+ context: "Argument 1",
+ });
+ destinationOffset = webidl.converters.GPUSize64(destinationOffset, {
+ prefix,
+ context: "Argument 2",
+ });
+ size = webidl.converters.GPUSize64(size, {
+ prefix,
+ context: "Argument 3",
+ });
+ const device = assertDevice(this, { prefix, context: "this" });
+ const commandEncoderRid = assertResource(this, {
+ prefix,
+ context: "this",
+ });
+ const destinationRid = assertResource(destination, {
+ prefix,
+ context: "Argument 1",
+ });
+ const { err } = core.opSync(
+ "op_webgpu_command_encoder_clear_buffer",
+ {
+ commandEncoderRid,
+ destinationRid,
+ destinationOffset,
+ size,
+ },
+ );
+ device.pushError(err);
+ }
+
+ /**
* @param {string} groupLabel
*/
pushDebugGroup(groupLabel) {
@@ -3203,7 +3245,7 @@
prefix,
context: "Argument 3",
});
- destination = webidl.converters.GPUQuerySet(destination, {
+ destination = webidl.converters.GPUBuffer(destination, {
prefix,
context: "Argument 4",
});
@@ -4527,15 +4569,10 @@
webidl.illegalConstructor();
}
- get executionTime() {
- throw new Error("Not yet implemented");
- }
-
[SymbolFor("Deno.privateCustomInspect")](inspect) {
return `${this.constructor.name} ${
inspect({
label: this.label,
- // TODO(crowlKats): executionTime
})
}`;
}