Josh Matthews
575e885529
Mark promise creation methods with CanGc ( #33928 )
...
* Add CanGc annotations to promise constructor.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Propagate CanGc arguments for Promise::new_in_current_realm.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Fix out-of-order entries.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Propagate CanGc from Promise::new.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Suppress clippy warning.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
2024-10-22 09:35:20 +00:00
webbeef
2b71130a8a
Various CanGc fixes ( #33800 )
...
* CanGc fix for pagetransitionevent
Signed-off-by: webbeef <me@webbeef.org >
* CanGc fix for dom/node
Signed-off-by: webbeef <me@webbeef.org >
* CanGc fix for gamepad
Signed-off-by: webbeef <me@webbeef.org >
* CanGc fix for gpu
Signed-off-by: webbeef <me@webbeef.org >
* CanGc fix for dom/element
Signed-off-by: webbeef <me@webbeef.org >
* CanGc fix for xhr
Signed-off-by: webbeef <me@webbeef.org >
* CanGc fix for dom/worker
Signed-off-by: webbeef <me@webbeef.org >
* CanGc fix for rtcdatachannel
Signed-off-by: webbeef <me@webbeef.org >
* CanGc fix for rtcerror
Signed-off-by: webbeef <me@webbeef.org >
* Address review comments
Signed-off-by: webbeef <me@webbeef.org >
---------
Signed-off-by: webbeef <me@webbeef.org >
2024-10-11 03:53:39 +00:00
Samson
24ad2a0526
chore: Update wgpu ( #33506 )
...
* Update wgpu
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* use all backends at runtime
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* clean up some adapter stuff
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Update expectations
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* flakes
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
2024-09-21 04:20:18 +00:00
Samson
ebed9218f2
webgpu: Move actual Create* implementations from GPUDevice to Self ( #33320 )
...
* Move actual Create* implementations from `GPUDevice` to Self
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* move Create*Pipeline to Self::create
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* `parse_render_pipeline` outside`GPURenderPipeline::create`
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
2024-09-05 19:48:16 +00:00
Taym Haddadi
00389cf007
Transform convert_* functions in gpuconvert.rs to From/TryFrom implementations ( #33302 )
...
Signed-off-by: Taym <haddadi.taym@gmail.com >
2024-09-04 16:03:59 +00:00
Samson
817a91f2ac
webgpu: Clean up GPUCommandEncoders and add some validation ( #33223 )
...
* TextureUsages::from_bits_retain
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Fixup CreateBindGroupLayout
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* GPUExtent3D checking and converting
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Cleanup GPUCommandEncoders and some TODOs
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* validate gpuorigin3d
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* validate GPUColor
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* set good expect
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
2024-08-30 11:23:17 +00:00
Samson
7fce24f9d5
webgpu: Sync GPUBuffer ( #33154 )
...
* More helpers on `Promise`
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Sync `GPUBuffer`
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Set some good expectations
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Some bad expect
also on firefox
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Extract DataBlock, DataView impl from GPUBuffer
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Fix size check to work on 32bit platforms
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
2024-08-27 07:54:55 +00:00
Samson
65bd5a3b99
webgpu: Align writeBuffer with spec ( #33147 )
...
* Sync `WriteBuffer`
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Set good expectations
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Change assert to debug_assert
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
2024-08-21 11:46:23 +00:00
Samson
f989d3776e
separate Queue&Device Id ( #32966 )
...
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
2024-08-08 07:53:17 +00:00
Samson
34eed29037
Less nesting in webgpu response ( #32799 )
...
* Remove Option wrap of WebGPUResponse
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
* Replace WebGPUResponseResult with WebGPUResponse
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
2024-07-17 20:37:52 +00:00
Samson
794110ebe5
webgpu: Move errorscopes to WGPU thread ( #32304 )
...
* 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
2024-05-22 16:47:35 +00:00
Samson
168d43f24a
webgpu: Refactor webgpu crate ( #32255 )
...
* wgpu(_core) -> wgc
* Refactor webgpu crate
split lib.rs into multiple modules
2024-05-08 13:53:39 +00:00
Samson
62a916ce5c
webgpu: Implement onSubmittedWorkDone ( #31772 )
...
* Implement onSubmittedWorkDone
* Use rust closures for callback & actually remove entries from hashmap.
* Remove hashmap
* Fix warnings
* Update expectations
* clean flaky crashes
* re
* Update components/script/dom/gpuqueue.rs
Co-authored-by: Martin Robinson <mrobinson@igalia.com >
---------
Co-authored-by: Martin Robinson <mrobinson@igalia.com >
2024-04-04 08:12:40 +00:00
Aarya Khandelwal
bd39e03eeb
changed match to 'matches!' ( #31850 )
2024-03-25 11:28:12 +00:00
eri
a8170966ec
Move convert_* functions into gpuconvert.rs ( #31521 )
...
* feat: unify convert_* functions across gpu*.rs files #31104
* chore: reorder and format
2024-03-06 16:48:34 +00:00
Martin Robinson
5c1723c983
rustdoc: Fix many rustdoc errors ( #31147 )
...
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.
2024-01-22 13:13:48 +00:00
Samson
ddc47aa56b
Codegen support multiple interfaces in single webidl file & WebGPU single webidl ( #30448 )
...
* Codegen support multiple interfaces in single webidl file
* Merge GPU*.webidl into WebGPU.webidl
* Update gpu files to use WebGPUBinding module file
2023-09-30 12:30:12 +00:00
Samson
aad2dccc9c
Strict import formatting (grouping and granularity) ( #30325 )
...
* strict imports formatting
* Reformat all imports
2023-09-11 19:16:54 +00:00
Samson
71e0372ac1
Upgrade whole webgpu stack ( #29795 )
...
* 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
2023-08-20 23:16:46 +00:00
Samson
9514f670d1
No tracing of nop traceable fields ( #29926 )
...
* 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
2023-08-04 10:17:43 +00:00
Kunal Mohan
3661aa3d8c
Use Device limits and features provided by user
...
Spec update
2020-09-23 11:37:03 +05:30
Kunal Mohan
ce6e09a3aa
Change ErrorScopeId type to NonZeroU64
...
And extract it from WebGPURequest
2020-08-03 01:45:29 +05:30
Kunal Mohan
8cb5fad828
Report errors from void returning operations
2020-08-01 16:32:37 +05:30
Kunal Mohan
5285c07f1f
Implement GPUCommandEncoder.copy commands
2020-07-21 21:00:23 +05:30
Kunal Mohan
cdc0a75fe4
Update GPUObjectBase webidl and cleanup valid flags
2020-07-20 23:03:53 +05:30
Kunal Mohan
fae66089fa
Implement GPUQueue.writeBuffer and GPUQueue.writeTexture
2020-07-04 21:49:32 +05:30
Kunal Mohan
b74cea3a46
Implement GPUBuffer.mapAsync and update wgpu-core
2020-06-27 20:27:17 +05:30
Kunal Mohan
3b5ede153d
Update wgpu-core and wgpu-types
2020-06-04 01:19:13 +05:30
YUAN LYU
3ea6d87bcc
Add trait DomObjectWrap to provide WRAP function
2020-03-20 22:16:56 -04:00
Istvan Miklos
000a5d543d
Fixing some style related issues in WebGPU.
...
Changed the Requests/Response from tuples to named struct variants and also sorted in alphabetical order.
Replaced the ID generator functions from `globalscope` with a single function,
which returns a `RefMut` and can call the appropriate method to generate resource IDs.
2020-02-27 15:10:24 +01:00
Zakor
a3c6810b18
Initial implementation of GPUQueue
...
Added WebIDL bindings for `GPUQueue`.
Implemented the `submit` function of `GPUQueue` and `defaultQueue` function of `GPUDevice`.
2020-02-13 14:37:25 +01:00