aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/gpudevice.rs
Commit message (Collapse)AuthorAgeFilesLines
* webgpu: Implement device lost (#32354)Samson2024-06-171-21/+21
| | | | | | | | | | | | | * device lost promise should be init at creation of device object * device lost impl * lock for device poll workaround for wgpu deadlocks * expect * Less lost reason reasoning in script
* webgpu: Move errorscopes to WGPU thread (#32304)Samson2024-05-221-274/+117
| | | | | | | | | | | | | | | | | | | | | * Prepare errorscopes logic in wgpu_thread * remove scope_id from ipc * new GPUErrors per spec * remove cotent timeline error_scope * fixup poperrorscope types * device_scope -> gpu_error and nice errors * Handle errors detection more elegantly * good expectations * new expectations * Make error_scope.errors Vec as per spec
* webgpu: Refactor webgpu crate (#32255)Samson2024-05-081-4/+3
| | | | | | | * wgpu(_core) -> wgc * Refactor webgpu crate split lib.rs into multiple modules
* webgpu: Update to wgpu 0.20 (#32173)Samson2024-05-081-3/+11
| | | | | | | | | | | * Update wgpu to 0.20 * good expectations * Throw TypeError in configure on unsupported format instead of panic * Expect * `into_command_buffer_id`,`into_command_encoder_id`
* webgpu: Update wgpu to 0.19 (#31995)Samson2024-04-261-9/+28
| | | | | | | | | | | * Update wgpu to https://github.com/gfx-rs/wgpu/commit/32e70bc1635905c508d408eb1cf22b2aa062ffe1 (0.19) * Update expect only good * reexpect * remove dbg stuff * Remove all occurrences of dx11_hub
* clippy: Allow `too_many_arguments` for existing functions (#31974)eri2024-04-021-0/+2
| | | | | * Allow `too_many_arguments` for existing functions * fix: Surround ASCII with code block in rustdoc
* fix redundant closures in component/script/dom (#31917)Ekta Siwach2024-03-281-1/+1
| | | | | | | | | | | | | * fixed unnecessary conversions * resolved conflicts * resolved conflicts * fix redundant closures in component/script/dom * resolved conflicts * fixed formatting
* clippy: Fix collapsible_else_if warnings (#31853)Oluwatobi Sofela2024-03-261-4/+2
|
* clippy: Fix `explicit_auto_deref` warnings in `components/script` (#31837)Oluwatobi Sofela2024-03-231-2/+2
| | | | | | | | | * clippy: Fix explicit auto-deref warnings * clippy: Fix explicit auto-deref warnings * refactor: Tidy up code * refactor: Fix method not found errors
* clippy: Fix needless borrow warnings (#31813)Oluwatobi Sofela2024-03-211-6/+6
|
* clippy: Fix redundant field names warnings (#31793)Oluwatobi Sofela2024-03-201-1/+1
|
* rustdoc: Convert url text to anchor link (#31755)Oluwatobi Sofela2024-03-191-1/+1
|
* Add pseudo async Create*PipelineAsync methods (#31695)Samson2024-03-191-14/+23
| | | | | | | * Create fake CreatePipelineAsync * Update WebGPU CTS * Update expectations and disable some webgpu tests
* Move convert_* functions into gpuconvert.rs (#31521)eri2024-03-061-266/+13
| | | | | * feat: unify convert_* functions across gpu*.rs files #31104 * chore: reorder and format
* WebIDL: Use `ArrayBuffer` instead of raw `JSObject` in bindings (#31202)Taym Haddadi2024-02-131-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * WebIDL: Use ArrayBuffer instead of raw JSObject in bindings Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Convert GPUBufferMapInfo mapping to Arc<Mutex> * Remove #[allow(unsafe_code)] from GPUBuffer * Add doc comments * Implement trace for Arc<Mutex<Vec<T>>> Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Use #[no_trace] for GPUBufferMapInfo.mapping * Make create_new_external_array_buffer generic Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Address review comments * Remove HeapTypedArray::new and avoid cloning Arc Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Use expect for GetMappedRange and ReadAsArrayBuffer Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Use doc comments for FileReaderSyncMethods Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Return for Error::JsFailed GetMappedRange and ReadAsArrayBuffer Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Fix detached_internal implementation and comments Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * format code Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Update expectations --------- Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> Co-authored-by: sagudev <16504129+sagudev@users.noreply.github.com>
* rustdoc: Fix many rustdoc errors (#31147)Martin Robinson2024-01-221-23/+23
| | | | This fixes many rustdoc errors that occur due to raw URLs in rustdoc comments as well as unescaped Rust code that should be in backticks.
* Update WebGPU CTS (#30954)Samson2023-12-281-4/+6
| | | | | | | | | | | * Update WebGPU CTS to https://github.com/gpuweb/cts/commit/ae15a59832989c22982acaeaccdf5d379afced62 * Add internal to GPUErrorFilter to make more test work * No crash in CreateRenderBundleEncoder * getCompilationInfo * Update expectations
* Compile Servo with the latest version of rust stable (#30831)Martin Robinson2023-12-061-4/+4
| | | | | | | | | | | | | | | | This completes the transition to compiling Servo with rust stable. Some nightly-only features are still used when compiling the `script` and `crown` crates, as well as for some style unit tests. These will likely break with newer compiler versions, but `crown` can be disabled for them conditionally. This is just the first step. This has some caveats: 1. We need to disable setting up the special linker on Linux. The -Z option isn't supported with stable rust so using this is out -- meanwhile we can't be sure that lld is installed on most systems. 2. `cargo fmt` still uses some unstable options, so we need to rely on the unstable toolchain just for running `fmt`. The idea is to fix this gradually.
* Codegen support multiple interfaces in single webidl file & WebGPU single ↵Samson2023-09-301-34/+13
| | | | | | | | | webidl (#30448) * Codegen support multiple interfaces in single webidl file * Merge GPU*.webidl into WebGPU.webidl * Update gpu files to use WebGPUBinding module file
* Use Foo_Binding instead of FooBinding for namespace modules (#30447)Samson2023-09-301-1/+1
| | | | | * Update Codegen.py to emit Foo_Binding instead of FooBinding * s/FooBinding/Foo_Binding/g
* Add GPUSupportedFeatures and update GPUSupportedLimits (#30359)Samson2023-09-141-1/+12
| | | | | | | * GPUSupportedFeatures * New supported limits * Update expectations
* Strict import formatting (grouping and granularity) (#30325)Samson2023-09-111-25/+26
| | | | | * strict imports formatting * Reformat all imports
* Upgrade whole webgpu stack (#29795)Samson2023-08-201-311/+367
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Allow noidl files in script/dom/webidls * Upgrade wgpu to 0.16 and refresh whole webgpu implementation * Update WebGPU test expectations * misc * MutNullableDom -> DomRefCell<Option<Dom for GPUTexture * Direct use of GPUTextureDescriptor * Remove config from GPUCanvasContext * misc * finally blue color * gpubuffer "handle" error * GPU object have non-null label * gpu limits and info * use buffer_size * fix warnings * Cleanup * device destroy * fallback adapter * mach update-webgpu write webgpu commit hash in file * Mising deps in CI for webgpu tests * Updated expectations * Fixups * early reject * DomRefCell<Option<Dom -> MutNullableDom for GPUTexture
* No tracing of nop traceable fields (#29926)Samson2023-08-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add `no_trace` option to JSTraceable derive * NoTrace wrapper * Port some types to no_trace schematics * Fixing my unsafe mistakes (not tracing traceables) * Add docs & safety guards for no_trace Safety guards (trait shenanigans) guarantees safety usage of `no_trace` * Port canvas_traits to no_trace * Port servo_media to no_trace * Port net_traits to no_trace * Port style to no_trace * Port webgpu to no_trace * Port script_traits to no_trace * Port canvas_traits, devtools_traits, embedder_traits, profile_traits to no_trace * unrooted_must_root lint in seperate file * Add trace_in_no_trace_lint as script_plugin * Composable types in must_not_have_traceable * Introduced HashMapTracedValues wrapper * `HashMap<NoTrace<K>,V>`->`HashMapTracedValues<K,V>` * Port rest of servo's types to no_trace * Port html5ever, euclid, mime and http to no_trace * Port remaining externals to no_trace * Port webxr and Arc<Mutex<_>> * Fix spelling in notrace doc
* Remove global argument from Promise::new_in_current_realm.Josh Matthews2023-05-201-2/+2
|
* Use Device limits and features provided by userKunal Mohan2020-09-231-25/+63
| | | | Spec update
* update wgpuKunal Mohan2020-09-221-0/+1
|
* defer encoding errors to finish()Kunal Mohan2020-08-221-9/+0
|
* upgrade wgpu to v0.6Kunal Mohan2020-08-221-0/+8
|
* Implement GPUPipelineBase for implicit pipeline layoutsKunal Mohan2020-08-191-4/+50
|
* update wgpu and some cleanupKunal Mohan2020-08-171-52/+15
|
* update wgpuKunal Mohan2020-08-161-37/+83
|
* Implement GPUUncapturedErrorEventKunal Mohan2020-08-111-11/+26
|
* fix ErrorScope modelKunal Mohan2020-08-071-15/+33
|
* Register invalid resources separatelyKunal Mohan2020-08-061-132/+163
|
* Change ErrorScopeId type to NonZeroU64Kunal Mohan2020-08-031-55/+73
| | | | And extract it from WebGPURequest
* Report errors from void returning operationsKunal Mohan2020-08-011-3/+5
|
* Refactor and improve GPUErrorScopesKunal Mohan2020-07-301-52/+87
| | | | Remove use of equivalent BGLs
* Implement GPURenderBundleEncoder and GPURenderBundleKunal Mohan2020-07-241-31/+93
|
* update wgpu, use serializable descriptorsKunal Mohan2020-07-221-149/+161
|
* Implement GPUCommandEncoder.copy commandsKunal Mohan2020-07-211-4/+8
|
* Update GPUObjectBase webidl and cleanup valid flagsKunal Mohan2020-07-201-44/+53
|
* address review commentsKunal Mohan2020-07-171-106/+97
|
* Use existing BindGroupLayout if an equivalent BGL already existsKunal Mohan2020-07-161-2/+23
|
* Implement Async Error reporting for WebGPU and update wgpu-coreKunal Mohan2020-07-161-1/+164
|
* Implement GPUQueue.writeBuffer and GPUQueue.writeTextureKunal Mohan2020-07-041-2/+2
|
* Encapsulate buffer map fields in a separate structKunal Mohan2020-07-011-10/+13
|
* Implement GPUBuffer.getMappedRange()Kunal Mohan2020-07-011-15/+7
|
* Fix ArrayBuffer creation in buffer mappingKunal Mohan2020-06-271-4/+6
|
* address review commentsKunal Mohan2020-06-271-3/+3
|