Adds a mode to compaction that removes unused functions, global
variables, and named types and overrides. This mode is used
everywhere except the compaction at the end of lowering, where
it is important to preserve unused items for type checking and
other validation of the module.
Pruning all but the active entry point and then compacting makes
`process_overrides` tolerant of missing values for overrides that are
not used by the active entry point.
Fixes#5885
Implementing it is tracked by #6495. In the mean time it is okay for it
to be a no-op. `destroy` just recovers the resources earlier than garbage
collection might, doing nothing is not a leak.
* Make wgpu-core's copy_buffer_to_buffer `size` parameter optional
* Make the copy size optional in more places
* Fix for webgpu backend
* [deno_webgpu] Support additional copyBufferToBuffer signatures
* Add changelog entry
* Add copyBufferToBuffer tests to CTS test list
(This doesn't actually enable the tests for the new overloads, because
of a different error reporting issue that affects many CTS tests
including these. But if you run the tests for the new overloads
manually, before and after the fix, you can see that the behavior has
changed.)
* Reproducible formula for vendoring modified webgpu-sys
Commit the updated vendor command in all the files for consistency.
Includes the following minor functional fixes to deno_webgpu:
* Don't throw an error immediately when `create_buffer` is called with invalid usage flags.
* Implement `on_submitted_work_done`.
* Correct validation of GPUExtent3D element count.
* Run without tracing (instead of panic) if the DENO_WEBGPU_TRACE env var is not set.
Fixes#6838
* chore(deno_webgpu): bump deno_core to 0.114.0
ca75752e5a dates back to Aug 30 2021, so is nearly 5 months old.
There are no breaking changes updating `deno_core` to `0.114.0` (released 6 days ago)
Also by using the crate directly from cargo we avoid cloning https://github.com/denoland/deno and https://github.com/denoland/deno_third_party which can be quite large so crate DL/install is much faster
* bump cts_runner's deno crates
* minor cts_runner fixes
* WIP: add cts_runner and deno_webgpu crate
* add test
* remove Cargo.lock
* review comment
* simplify
* fix bugs
* improve cts_runner to work with crowlKats/webgpu-examples
* fix
* remove build.rs
cts_runner binaries are now not portable anymore.
Also startup will now print a bunch of cargo:rerun-if-changed=. This
will be fixed in deno_core.
* remove d.ts
* add original deno license file