Bug 1947780 - build(webgpu): update WGPU to 723abcb1d3d182f9a4bf973f02c6da39a4090f23 r=webgpu-reviewers,supply-chain-reviewers,nical

Differential Revision: https://phabricator.services.mozilla.com/D238138
This commit is contained in:
Erich Gubler
2025-02-18 21:28:29 +00:00
parent d8f76711cf
commit a06dab1f5d
100 changed files with 5642 additions and 2223 deletions

View File

@@ -17,7 +17,7 @@ default = []
[dependencies.wgc]
package = "wgpu-core"
git = "https://github.com/gfx-rs/wgpu"
rev = "db896a86d0db0637149d7012bd865059f8783ec3"
rev = "723abcb1d3d182f9a4bf973f02c6da39a4090f23"
# TODO: remove the replay feature on the next update containing https://github.com/gfx-rs/wgpu/pull/5182
features = ["serde", "replay", "trace", "strict_asserts", "wgsl", "api_log_info", "indirect-validation"]
@@ -26,32 +26,32 @@ features = ["serde", "replay", "trace", "strict_asserts", "wgsl", "api_log_info"
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.wgc]
package = "wgpu-core"
git = "https://github.com/gfx-rs/wgpu"
rev = "db896a86d0db0637149d7012bd865059f8783ec3"
rev = "723abcb1d3d182f9a4bf973f02c6da39a4090f23"
features = ["metal"]
# We want the wgpu-core Direct3D backends on Windows.
[target.'cfg(windows)'.dependencies.wgc]
package = "wgpu-core"
git = "https://github.com/gfx-rs/wgpu"
rev = "db896a86d0db0637149d7012bd865059f8783ec3"
rev = "723abcb1d3d182f9a4bf973f02c6da39a4090f23"
features = ["dx12"]
# We want the wgpu-core Vulkan backend on Linux and Windows.
[target.'cfg(any(windows, all(unix, not(any(target_os = "macos", target_os = "ios")))))'.dependencies.wgc]
package = "wgpu-core"
git = "https://github.com/gfx-rs/wgpu"
rev = "db896a86d0db0637149d7012bd865059f8783ec3"
rev = "723abcb1d3d182f9a4bf973f02c6da39a4090f23"
features = ["vulkan"]
[dependencies.wgt]
package = "wgpu-types"
git = "https://github.com/gfx-rs/wgpu"
rev = "db896a86d0db0637149d7012bd865059f8783ec3"
rev = "723abcb1d3d182f9a4bf973f02c6da39a4090f23"
[dependencies.wgh]
package = "wgpu-hal"
git = "https://github.com/gfx-rs/wgpu"
rev = "db896a86d0db0637149d7012bd865059f8783ec3"
rev = "723abcb1d3d182f9a4bf973f02c6da39a4090f23"
features = ["oom_panic", "device_lost_panic", "internal_error_panic"]
[target.'cfg(windows)'.dependencies]

View File

@@ -40,6 +40,7 @@ using WGPUCommandBufferId = uint64_t;
using WGPUCommandEncoderId = uint64_t;
using WGPUComputePipelineId = uint64_t;
using WGPUDeviceId = uint64_t;
using WGPUFeaturesWebGPU = uint64_t;
using WGPUPipelineLayoutId = uint64_t;
using WGPUQuerySetId = uint64_t;
using WGPUQueueId = uint64_t;
@@ -84,6 +85,7 @@ include = ["BufferUsages"]
"SamplerDescriptor______nsACString" = "WGPUSamplerDescriptor"
"AdapterInformation_nsString" = "WGPUAdapterInformation"
"QuerySetDescriptor______nsACString" = "WGPUQuerySetDescriptor"
"RenderPassColorAttachment_TextureViewId" = "WGPURenderPassColorAttachment"
[parse]
parse_deps = true

View File

@@ -20,11 +20,11 @@ origin:
# Human-readable identifier for this version/release
# Generally "version NNN", "tag SSS", "bookmark SSS"
release: db896a86d0db0637149d7012bd865059f8783ec3 (2025-02-07T04:10:28Z).
release: 723abcb1d3d182f9a4bf973f02c6da39a4090f23 (2025-02-14T23:38:55Z).
# Revision to pull in
# Must be a long or short commit SHA (long preferred)
revision: db896a86d0db0637149d7012bd865059f8783ec3
revision: 723abcb1d3d182f9a4bf973f02c6da39a4090f23
license: ['MIT', 'Apache-2.0']

View File

@@ -71,7 +71,7 @@ impl ProgrammableStageDescriptor {
wgc::pipeline::ProgrammableStageDescriptor {
module: self.module,
entry_point: cow_label(&self.entry_point),
constants: Cow::Owned(constants),
constants,
zero_initialize_workgroup_memory: true,
}
}
@@ -461,7 +461,7 @@ pub extern "C" fn wgpu_client_adapter_extract_info(
#[repr(C)]
pub struct FfiDeviceDescriptor<'a> {
pub label: Option<&'a nsACString>,
pub required_features: wgt::Features,
pub required_features: wgt::FeaturesWebGPU,
pub required_limits: wgt::Limits,
}
@@ -471,9 +471,11 @@ pub extern "C" fn wgpu_client_serialize_device_descriptor(
bb: &mut ByteBuf,
) {
let label = wgpu_string(desc.label);
let required_features =
wgt::Features::from_internal_flags(wgt::FeaturesWGPU::empty(), desc.required_features);
let desc = wgt::DeviceDescriptor {
label,
required_features: desc.required_features.clone(),
required_features,
required_limits: desc.required_limits.clone(),
memory_hints: wgt::MemoryHints::MemoryUsage,
};
@@ -803,7 +805,6 @@ pub unsafe extern "C" fn wgpu_command_encoder_begin_compute_pass(
end_of_pass_write_index,
}
});
let timestamp_writes = timestamp_writes.as_ref();
let pass = crate::command::RecordedComputePass::new(&wgc::command::ComputePassDescriptor {
label,
@@ -829,7 +830,7 @@ pub unsafe extern "C" fn wgpu_compute_pass_destroy(pass: *mut crate::command::Re
#[repr(C)]
pub struct RenderPassDescriptor<'a> {
pub label: Option<&'a nsACString>,
pub color_attachments: *const wgc::command::RenderPassColorAttachment,
pub color_attachments: *const wgc::command::RenderPassColorAttachment<id::TextureViewId>,
pub color_attachments_length: usize,
pub depth_stencil_attachment: Option<&'a RenderPassDepthStencilAttachment>,
pub timestamp_writes: Option<&'a PassTimestampWrites<'a>>,
@@ -1065,7 +1066,7 @@ pub unsafe extern "C" fn wgpu_client_create_bind_group(
binding: entry.binding,
resource: if let Some(id) = entry.buffer {
wgc::binding_model::BindingResource::Buffer(wgc::binding_model::BufferBinding {
buffer_id: id,
buffer: id,
offset: entry.offset,
size: entry.size,
})

View File

@@ -89,7 +89,7 @@ impl RecordedComputePass {
dynamic_offsets: Vec::new(),
string_data: Vec::new(),
},
timestamp_writes: desc.timestamp_writes.cloned(),
timestamp_writes: desc.timestamp_writes.clone(),
}
}
}
@@ -929,7 +929,7 @@ pub fn replay_compute_pass(
id,
&wgc::command::ComputePassDescriptor {
label: src_pass.base.label.as_ref().map(|s| s.as_str().into()),
timestamp_writes: src_pass.timestamp_writes.as_ref(),
timestamp_writes: src_pass.timestamp_writes.clone(),
},
);
if let Some(err) = err {

View File

@@ -96,7 +96,7 @@ impl ByteBuf {
pub struct AdapterInformation<S> {
id: id::AdapterId,
limits: wgt::Limits,
features: wgt::Features,
features: wgt::FeaturesWebGPU,
name: S,
vendor: u32,
device: u32,

View File

@@ -150,11 +150,12 @@ pub extern "C" fn wgpu_server_new(owner: *mut c_void, use_dxc: bool) -> *mut Glo
backend_options: wgt::BackendOptions {
gl: wgt::GlBackendOptions {
gles_minor_version: wgt::Gles3MinorVersion::Automatic,
short_circuit_fences: wgt::GlFenceBehavior::Normal,
fence_behavior: wgt::GlFenceBehavior::Normal,
},
dx12: wgt::Dx12BackendOptions {
shader_compiler: dx12_shader_compiler,
},
noop: wgt::NoopBackendOptions { enable: false },
},
},
);
@@ -185,9 +186,9 @@ pub extern "C" fn wgpu_server_device_poll(
force_wait: bool,
) {
let maintain = if force_wait {
wgt::Maintain::Wait
wgt::PollType::Wait
} else {
wgt::Maintain::Poll
wgt::PollType::Poll
};
global.device_poll(device_id, maintain).unwrap();
}
@@ -376,7 +377,7 @@ pub unsafe extern "C" fn wgpu_server_adapter_pack_info(
let info = AdapterInformation {
id,
limits: restrict_limits(global.adapter_limits(id)),
features: global.adapter_features(id),
features: global.adapter_features(id).features_webgpu,
name,
vendor,
device,