From 5e59988c87c40e84b0228021798455175699e824 Mon Sep 17 00:00:00 2001 From: Samson <16504129+sagudev@users.noreply.github.com> Date: Sun, 4 Aug 2024 19:19:46 +0200 Subject: [PATCH] webgpu: Use wgpu's instead of string errors and update limits handling (#32925) * Use wgpu specific errors Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * fixup expect Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * WIP Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Fix records erasing enforcerange Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * page can already be destroyed Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Support more limits Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Set good results Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Set OK (not PASS) expect CRASH Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * fixup expectation Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * bad expectations https://github.com/gfx-rs/wgpu/issues/6075 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * set bad expectation render bundleencoder needs to be rewritten Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --- .../dom/bindings/codegen/CodegenRust.py | 2 +- components/script/dom/gpuadapter.rs | 120 +- components/script/dom/gpusupportedlimits.rs | 141 +++ components/script/dom/webidls/WebGPU.webidl | 8 +- components/script/script_thread.rs | 5 +- components/webgpu/ipc_messages/to_dom.rs | 22 +- components/webgpu/wgpu_thread.rs | 55 +- .../wpt/webgpu/meta/webgpu/cts.https.html.ini | 1014 +++++------------ 8 files changed, 496 insertions(+), 871 deletions(-) diff --git a/components/script/dom/bindings/codegen/CodegenRust.py b/components/script/dom/bindings/codegen/CodegenRust.py index e358233b045..fa77c516abb 100644 --- a/components/script/dom/bindings/codegen/CodegenRust.py +++ b/components/script/dom/bindings/codegen/CodegenRust.py @@ -718,7 +718,7 @@ def getJSToNativeConversionInfo(type, descriptorProvider, failureCode=None, isMember="Sequence", isAutoRooted=isAutoRooted) declType = wrapInNativeContainerType(type, innerInfo.declType) - config = getConversionConfigForType(type, isEnforceRange, isClamp, treatNullAs) + config = getConversionConfigForType(type, innerContainerType(type).hasEnforceRange(), isClamp, treatNullAs) if type.nullable(): declType = CGWrapper(declType, pre="Option<", post=" >") diff --git a/components/script/dom/gpuadapter.rs b/components/script/dom/gpuadapter.rs index 7857121cac8..42fe0eeec90 100644 --- a/components/script/dom/gpuadapter.rs +++ b/components/script/dom/gpuadapter.rs @@ -2,15 +2,17 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -use std::convert::TryFrom; use std::rc::Rc; use dom_struct::dom_struct; use js::jsapi::{Heap, JSObject}; +use webgpu::wgc::instance::RequestDeviceError; use webgpu::wgt::MemoryHints; use webgpu::{wgt, WebGPU, WebGPUAdapter, WebGPURequest, WebGPUResponse}; +use super::bindings::codegen::Bindings::WebGPUBinding::GPUDeviceLostReason; use super::gpusupportedfeatures::GPUSupportedFeatures; +use super::gpusupportedlimits::set_limit; use super::types::{GPUAdapterInfo, GPUSupportedLimits}; use crate::dom::bindings::codegen::Bindings::WebGPUBinding::{ GPUAdapterMethods, GPUDeviceDescriptor, @@ -129,84 +131,10 @@ impl GPUAdapterMethods for GPUAdapter { }; if let Some(limits) = &descriptor.requiredLimits { for (limit, value) in (*limits).iter() { - let v = u32::try_from(*value).unwrap_or(u32::MAX); - match limit.as_ref() { - "maxTextureDimension1D" => desc.required_limits.max_texture_dimension_1d = v, - "maxTextureDimension2D" => desc.required_limits.max_texture_dimension_2d = v, - "maxTextureDimension3D" => desc.required_limits.max_texture_dimension_3d = v, - "maxTextureArrayLayers" => desc.required_limits.max_texture_array_layers = v, - "maxBindGroups" => desc.required_limits.max_bind_groups = v, - "maxBindingsPerBindGroup" => { - desc.required_limits.max_bindings_per_bind_group = v - }, - "maxDynamicUniformBuffersPerPipelineLayout" => { - desc.required_limits - .max_dynamic_uniform_buffers_per_pipeline_layout = v - }, - "maxDynamicStorageBuffersPerPipelineLayout" => { - desc.required_limits - .max_dynamic_storage_buffers_per_pipeline_layout = v - }, - "maxSampledTexturesPerShaderStage" => { - desc.required_limits.max_sampled_textures_per_shader_stage = v - }, - "maxSamplersPerShaderStage" => { - desc.required_limits.max_samplers_per_shader_stage = v - }, - "maxStorageBuffersPerShaderStage" => { - desc.required_limits.max_storage_buffers_per_shader_stage = v - }, - "maxStorageTexturesPerShaderStage" => { - desc.required_limits.max_storage_textures_per_shader_stage = v - }, - "maxUniformBuffersPerShaderStage" => { - desc.required_limits.max_uniform_buffers_per_shader_stage = v - }, - "maxUniformBufferBindingSize" => { - desc.required_limits.max_uniform_buffer_binding_size = v - }, - "maxStorageBufferBindingSize" => { - desc.required_limits.max_storage_buffer_binding_size = v - }, - "minUniformBufferOffsetAlignment" => { - desc.required_limits.min_uniform_buffer_offset_alignment = v - }, - "minStorageBufferOffsetAlignment" => { - desc.required_limits.min_storage_buffer_offset_alignment = v - }, - "maxVertexBuffers" => desc.required_limits.max_vertex_buffers = v, - "maxBufferSize" => desc.required_limits.max_buffer_size = *value, - "maxVertexAttributes" => desc.required_limits.max_vertex_attributes = v, - "maxVertexBufferArrayStride" => { - desc.required_limits.max_vertex_buffer_array_stride = v - }, - "maxInterStageShaderComponents" => { - desc.required_limits.max_inter_stage_shader_components = v - }, - "maxComputeWorkgroupStorageSize" => { - desc.required_limits.max_compute_workgroup_storage_size = v - }, - "maxComputeInvocationsPerWorkgroup" => { - desc.required_limits.max_compute_invocations_per_workgroup = v - }, - "maxComputeWorkgroupSizeX" => { - desc.required_limits.max_compute_workgroup_size_x = v - }, - "maxComputeWorkgroupSizeY" => { - desc.required_limits.max_compute_workgroup_size_y = v - }, - "maxComputeWorkgroupSizeZ" => { - desc.required_limits.max_compute_workgroup_size_z = v - }, - "maxComputeWorkgroupsPerDimension" => { - desc.required_limits.max_compute_workgroups_per_dimension = v - }, - _ => { - error!("Unknown required limit: {limit} with value {value}"); - // we should reject but spec is still evolving - // promise.reject_error(Error::Operation); - // return promise; - }, + if !set_limit(&mut desc.required_limits, limit.as_ref(), *value) { + warn!("Unknown GPUDevice limit: {limit}"); + promise.reject_error(Error::Operation); + return promise; } } } @@ -267,8 +195,7 @@ impl GPUAdapterMethods for GPUAdapter { impl AsyncWGPUListener for GPUAdapter { fn handle_response(&self, response: WebGPUResponse, promise: &Rc) { match response { - WebGPUResponse::Device(Ok(device)) => { - let descriptor = device.descriptor; + WebGPUResponse::Device((device_id, queue_id, Ok(descriptor))) => { let device = GPUDevice::new( &self.global(), self.channel.clone(), @@ -276,16 +203,37 @@ impl AsyncWGPUListener for GPUAdapter { Heap::default(), descriptor.required_features, descriptor.required_limits, - device.device_id, - device.queue_id, + device_id, + queue_id, descriptor.label.unwrap_or_default(), ); self.global().add_gpu_device(&device); promise.resolve_native(&device); }, - WebGPUResponse::Device(Err(e)) => { - warn!("Could not get GPUDevice({:?})", e); - promise.reject_error(Error::Operation); + WebGPUResponse::Device((_, _, Err(RequestDeviceError::UnsupportedFeature(f)))) => { + promise.reject_error(Error::Type( + RequestDeviceError::UnsupportedFeature(f).to_string(), + )) + }, + WebGPUResponse::Device(( + _, + _, + Err(RequestDeviceError::LimitsExceeded(_) | RequestDeviceError::InvalidAdapter), + )) => promise.reject_error(Error::Operation), + WebGPUResponse::Device((device_id, queue_id, Err(e))) => { + let device = GPUDevice::new( + &self.global(), + self.channel.clone(), + self, + Heap::default(), + wgt::Features::default(), + wgt::Limits::default(), + device_id, + queue_id, + String::new(), + ); + device.lose(GPUDeviceLostReason::Unknown, e.to_string()); + promise.resolve_native(&device); }, WebGPUResponse::None => unreachable!("Failed to get a response for RequestDevice"), _ => unreachable!("GPUAdapter received wrong WebGPUResponse"), diff --git a/components/script/dom/gpusupportedlimits.rs b/components/script/dom/gpusupportedlimits.rs index 2c30f9cbdfc..ace3f777d29 100644 --- a/components/script/dom/gpusupportedlimits.rs +++ b/components/script/dom/gpusupportedlimits.rs @@ -3,6 +3,7 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ use dom_struct::dom_struct; +use num_traits::bounds::UpperBounded; use webgpu::wgt::Limits; use GPUSupportedLimits_Binding::GPUSupportedLimitsMethods; @@ -173,4 +174,144 @@ impl GPUSupportedLimitsMethods for GPUSupportedLimits { fn MaxComputeWorkgroupsPerDimension(&self) -> u32 { self.limits.max_compute_workgroups_per_dimension } + + /// + fn MaxBindGroupsPlusVertexBuffers(&self) -> u32 { + // Not on wgpu yet, so we craft it manually + self.limits.max_bind_groups + self.limits.max_vertex_buffers + } + + /// + fn MaxInterStageShaderVariables(&self) -> u32 { + // Not in wgpu yet, so we use default value from spec + 16 + } + + /// + fn MaxColorAttachments(&self) -> u32 { + self.limits.max_color_attachments + } + + /// + fn MaxColorAttachmentBytesPerSample(&self) -> u32 { + self.limits.max_color_attachment_bytes_per_sample + } +} + +/// Returns false if unknown limit or other value error +pub fn set_limit(limits: &mut Limits, limit: &str, value: u64) -> bool { + /// per spec defaults are lower bounds for values + /// + /// https://www.w3.org/TR/webgpu/#limit-class-maximum + fn set_maximum(limit: &mut T, value: u64) -> bool + where + T: Ord + Copy + TryFrom + UpperBounded, + { + if let Ok(value) = T::try_from(value) { + *limit = value.max(*limit); + true + } else { + false + } + } + + /// per spec defaults are higher bounds for values + /// + /// + fn set_alignment(limit: &mut T, value: u64) -> bool + where + T: Ord + Copy + TryFrom + UpperBounded, + { + if !value.is_power_of_two() { + return false; + } + if let Ok(value) = T::try_from(value) { + *limit = value.min(*limit); + true + } else { + false + } + } + + match limit { + "maxTextureDimension1D" => set_maximum(&mut limits.max_texture_dimension_1d, value), + "maxTextureDimension2D" => set_maximum(&mut limits.max_texture_dimension_2d, value), + "maxTextureDimension3D" => set_maximum(&mut limits.max_texture_dimension_3d, value), + "maxTextureArrayLayers" => set_maximum(&mut limits.max_texture_array_layers, value), + "maxBindGroups" => set_maximum(&mut limits.max_bind_groups, value), + "maxBindGroupsPlusVertexBuffers" => { + // not in wgpu but we're allowed to give back better limits than requested. + // we use dummy value to still produce value verification + let mut v: u32 = 0; + set_maximum(&mut v, value) + }, + "maxBindingsPerBindGroup" => set_maximum(&mut limits.max_bindings_per_bind_group, value), + "maxDynamicUniformBuffersPerPipelineLayout" => set_maximum( + &mut limits.max_dynamic_uniform_buffers_per_pipeline_layout, + value, + ), + "maxDynamicStorageBuffersPerPipelineLayout" => set_maximum( + &mut limits.max_dynamic_storage_buffers_per_pipeline_layout, + value, + ), + "maxSampledTexturesPerShaderStage" => { + set_maximum(&mut limits.max_sampled_textures_per_shader_stage, value) + }, + "maxSamplersPerShaderStage" => { + set_maximum(&mut limits.max_samplers_per_shader_stage, value) + }, + "maxStorageBuffersPerShaderStage" => { + set_maximum(&mut limits.max_storage_buffers_per_shader_stage, value) + }, + "maxStorageTexturesPerShaderStage" => { + set_maximum(&mut limits.max_storage_textures_per_shader_stage, value) + }, + "maxUniformBuffersPerShaderStage" => { + set_maximum(&mut limits.max_uniform_buffers_per_shader_stage, value) + }, + "maxUniformBufferBindingSize" => { + set_maximum(&mut limits.max_uniform_buffer_binding_size, value) + }, + "maxStorageBufferBindingSize" => { + set_maximum(&mut limits.max_storage_buffer_binding_size, value) + }, + "minUniformBufferOffsetAlignment" => { + set_alignment(&mut limits.min_uniform_buffer_offset_alignment, value) + }, + "minStorageBufferOffsetAlignment" => { + set_alignment(&mut limits.min_storage_buffer_offset_alignment, value) + }, + "maxVertexBuffers" => set_maximum(&mut limits.max_vertex_buffers, value), + "maxBufferSize" => set_maximum(&mut limits.max_buffer_size, value), + "maxVertexAttributes" => set_maximum(&mut limits.max_vertex_attributes, value), + "maxVertexBufferArrayStride" => { + set_maximum(&mut limits.max_vertex_buffer_array_stride, value) + }, + "maxInterStageShaderComponents" => { + set_maximum(&mut limits.max_inter_stage_shader_components, value) + }, + "maxInterStageShaderVariables" => { + // not in wgpu but we're allowed to give back better limits than requested. + // we use dummy value to still produce value verification + let mut v: u32 = 0; + set_maximum(&mut v, value) + }, + "maxColorAttachments" => set_maximum(&mut limits.max_color_attachments, value), + "maxColorAttachmentBytesPerSample" => { + set_maximum(&mut limits.max_color_attachment_bytes_per_sample, value) + }, + "maxComputeWorkgroupStorageSize" => { + set_maximum(&mut limits.max_compute_workgroup_storage_size, value) + }, + "maxComputeInvocationsPerWorkgroup" => { + set_maximum(&mut limits.max_compute_invocations_per_workgroup, value) + }, + "maxComputeWorkgroupSizeX" => set_maximum(&mut limits.max_compute_workgroup_size_x, value), + "maxComputeWorkgroupSizeY" => set_maximum(&mut limits.max_compute_workgroup_size_y, value), + "maxComputeWorkgroupSizeZ" => set_maximum(&mut limits.max_compute_workgroup_size_z, value), + "maxComputeWorkgroupsPerDimension" => { + set_maximum(&mut limits.max_compute_workgroups_per_dimension, value) + }, + _ => false, + } } diff --git a/components/script/dom/webidls/WebGPU.webidl b/components/script/dom/webidls/WebGPU.webidl index 4454f59f6cf..e1ec5da3226 100644 --- a/components/script/dom/webidls/WebGPU.webidl +++ b/components/script/dom/webidls/WebGPU.webidl @@ -21,7 +21,7 @@ interface GPUSupportedLimits { readonly attribute unsigned long maxTextureDimension3D; readonly attribute unsigned long maxTextureArrayLayers; readonly attribute unsigned long maxBindGroups; - //readonly attribute unsigned long maxBindGroupsPlusVertexBuffers; + readonly attribute unsigned long maxBindGroupsPlusVertexBuffers; readonly attribute unsigned long maxBindingsPerBindGroup; readonly attribute unsigned long maxDynamicUniformBuffersPerPipelineLayout; readonly attribute unsigned long maxDynamicStorageBuffersPerPipelineLayout; @@ -39,9 +39,9 @@ interface GPUSupportedLimits { readonly attribute unsigned long maxVertexAttributes; readonly attribute unsigned long maxVertexBufferArrayStride; readonly attribute unsigned long maxInterStageShaderComponents; - //readonly attribute unsigned long maxInterStageShaderVariables; - //readonly attribute unsigned long maxColorAttachments; - //readonly attribute unsigned long maxColorAttachmentBytesPerSample; + readonly attribute unsigned long maxInterStageShaderVariables; + readonly attribute unsigned long maxColorAttachments; + readonly attribute unsigned long maxColorAttachmentBytesPerSample; readonly attribute unsigned long maxComputeWorkgroupStorageSize; readonly attribute unsigned long maxComputeInvocationsPerWorkgroup; readonly attribute unsigned long maxComputeWorkgroupSizeX; diff --git a/components/script/script_thread.rs b/components/script/script_thread.rs index 85ece3d025c..0f9e9be6419 100644 --- a/components/script/script_thread.rs +++ b/components/script/script_thread.rs @@ -2427,8 +2427,9 @@ impl ScriptThread { pipeline_id, } => { self.gpu_id_hub.free_device_id(device_id); - let global = self.documents.borrow().find_global(pipeline_id).unwrap(); - global.remove_gpu_device(WebGPUDevice(device_id)); + if let Some(global) = self.documents.borrow().find_global(pipeline_id) { + global.remove_gpu_device(WebGPUDevice(device_id)); + } // page can already be destroyed }, WebGPUMsg::FreeBuffer(id) => self.gpu_id_hub.free_buffer_id(id), WebGPUMsg::FreePipelineLayout(id) => self.gpu_id_hub.free_pipeline_layout_id(id), diff --git a/components/webgpu/ipc_messages/to_dom.rs b/components/webgpu/ipc_messages/to_dom.rs index 8ae5553685b..ef64675e82a 100644 --- a/components/webgpu/ipc_messages/to_dom.rs +++ b/components/webgpu/ipc_messages/to_dom.rs @@ -7,6 +7,8 @@ use ipc_channel::ipc::IpcSharedMemory; use serde::{Deserialize, Serialize}; use wgc::pipeline::CreateShaderModuleError; +use wgpu_core::instance::{RequestAdapterError, RequestDeviceError}; +use wgpu_core::resource::BufferAccessError; pub use {wgpu_core as wgc, wgpu_types as wgt}; use crate::identity::*; @@ -63,22 +65,20 @@ pub struct Adapter { pub channel: WebGPU, } -#[derive(Debug, Deserialize, Serialize)] -pub struct Device { - pub device_id: WebGPUDevice, - pub queue_id: WebGPUQueue, - pub descriptor: wgt::DeviceDescriptor>, -} - #[derive(Debug, Deserialize, Serialize)] #[allow(clippy::large_enum_variant)] pub enum WebGPUResponse { /// WebGPU is disabled None, - // TODO: use wgpu errors - Adapter(Result), - Device(Result), - BufferMapAsync(Result), + Adapter(Result), + Device( + ( + WebGPUDevice, + WebGPUQueue, + Result>, RequestDeviceError>, + ), + ), + BufferMapAsync(Result), SubmittedWorkDone, PoppedErrorScope(Result, PopError>), CompilationInfo(Option), diff --git a/components/webgpu/wgpu_thread.rs b/components/webgpu/wgpu_thread.rs index 27111823e41..d1f9744b32c 100644 --- a/components/webgpu/wgpu_thread.rs +++ b/components/webgpu/wgpu_thread.rs @@ -38,8 +38,8 @@ use crate::gpu_error::ErrorScope; use crate::poll_thread::Poller; use crate::render_commands::apply_render_command; use crate::{ - Adapter, ComputePassId, Device, Error, PopError, PresentationData, RenderPassId, Transmute, - WebGPU, WebGPUAdapter, WebGPUDevice, WebGPUMsg, WebGPUQueue, WebGPURequest, WebGPUResponse, + Adapter, ComputePassId, Error, PopError, PresentationData, RenderPassId, Transmute, WebGPU, + WebGPUAdapter, WebGPUDevice, WebGPUMsg, WebGPUQueue, WebGPURequest, WebGPUResponse, }; pub const PRESENTATION_BUFFER_COUNT: usize = 10; @@ -189,23 +189,21 @@ impl WGPU { let callback = BufferMapCallback::from_rust(Box::from( move |result: BufferAccessResult| { drop(token); - let response = result - .map(|_| { - let global = &glob; - let (slice_pointer, range_size) = gfx_select!(buffer_id => + let response = result.map(|_| { + let global = &glob; + let (slice_pointer, range_size) = gfx_select!(buffer_id => global.buffer_get_mapped_range(buffer_id, 0, None)) - .unwrap(); - // SAFETY: guarantee to be safe from wgpu - let data = unsafe { - slice::from_raw_parts( - slice_pointer.as_ptr(), - range_size as usize, - ) - }; + .unwrap(); + // SAFETY: guarantee to be safe from wgpu + let data = unsafe { + slice::from_raw_parts( + slice_pointer.as_ptr(), + range_size as usize, + ) + }; - IpcSharedMemory::from_bytes(data) - }) - .map_err(|e| e.to_string()); + IpcSharedMemory::from_bytes(data) + }); if let Err(e) = resp_sender.send(WebGPUResponse::BufferMapAsync(response)) { @@ -226,13 +224,14 @@ impl WGPU { operation )); self.poller.wake(); - if let Err(ref e) = result { + if let Err(e) = &result { if let Err(w) = - sender.send(WebGPUResponse::BufferMapAsync(Err(e.to_string()))) + sender.send(WebGPUResponse::BufferMapAsync(Err(e.to_owned()))) { warn!("Failed to send BufferMapAsync Response ({:?})", w); } } + // Per spec we also need to raise validation error here self.maybe_dispatch_wgpu_error(device_id, result.err()); }, WebGPURequest::CommandEncoderFinish { @@ -691,8 +690,7 @@ impl WGPU { limits, channel: WebGPU(self.sender.clone()), } - }) - .map_err(|e| e.to_string()); + }); if let Err(e) = sender.send(WebGPUResponse::Adapter(response)) { warn!( @@ -722,8 +720,11 @@ impl WGPU { Some(device_id), Some(device_id.transmute()), )); + let device = WebGPUDevice(device_id); + let queue = WebGPUQueue(queue_id); if let Some(e) = error { - if let Err(e) = sender.send(WebGPUResponse::Device(Err(e.to_string()))) + if let Err(e) = + sender.send(WebGPUResponse::Device((device, queue, Err(e)))) { warn!( "Failed to send response to WebGPURequest::RequestDevice ({})", @@ -732,8 +733,6 @@ impl WGPU { } continue; } - let device = WebGPUDevice(device_id); - let queue = WebGPUQueue(queue_id); { self.devices .lock() @@ -777,11 +776,9 @@ impl WGPU { } })); gfx_select!(device_id => global.device_set_device_lost_closure(device_id, callback)); - if let Err(e) = sender.send(WebGPUResponse::Device(Ok(Device { - device_id: device, - queue_id: queue, - descriptor, - }))) { + if let Err(e) = + sender.send(WebGPUResponse::Device((device, queue, Ok(descriptor)))) + { warn!( "Failed to send response to WebGPURequest::RequestDevice ({})", e diff --git a/tests/wpt/webgpu/meta/webgpu/cts.https.html.ini b/tests/wpt/webgpu/meta/webgpu/cts.https.html.ini index 40b77f56387..3a4bcc96925 100644 --- a/tests/wpt/webgpu/meta/webgpu/cts.https.html.ini +++ b/tests/wpt/webgpu/meta/webgpu/cts.https.html.ini @@ -48,8 +48,6 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:features,unknown:*] [:] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:invalid:*] @@ -66,8 +64,6 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,out_of_range:*] [:limit="maxBindGroups"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxBindGroupsPlusVertexBuffers"] expected: @@ -78,8 +74,6 @@ if os == "linux" and not debug: FAIL [:limit="maxBufferSize"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxColorAttachmentBytesPerSample"] expected: @@ -90,238 +84,128 @@ if os == "linux" and not debug: FAIL [:limit="maxComputeInvocationsPerWorkgroup"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupSizeX"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupSizeY"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupSizeZ"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupStorageSize"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupsPerDimension"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxDynamicStorageBuffersPerPipelineLayout"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxDynamicUniformBuffersPerPipelineLayout"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxInterStageShaderComponents"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxInterStageShaderVariables"] expected: if os == "linux" and not debug: FAIL [:limit="maxSampledTexturesPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxSamplersPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxStorageBufferBindingSize"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxStorageBuffersPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxStorageTexturesPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxTextureArrayLayers"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxTextureDimension1D"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxTextureDimension2D"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxTextureDimension3D"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxUniformBufferBindingSize"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxUniformBuffersPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxVertexAttributes"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxVertexBufferArrayStride"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxVertexBuffers"] - expected: - if os == "linux" and not debug: FAIL [:limit="minStorageBufferOffsetAlignment"] - expected: - if os == "linux" and not debug: FAIL [:limit="minUniformBufferOffsetAlignment"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limit,worse_than_default:*] [:limit="maxBindGroups"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxBindGroupsPlusVertexBuffers"] expected: if os == "linux" and not debug: FAIL [:limit="maxBindingsPerBindGroup"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxBufferSize"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxColorAttachmentBytesPerSample"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxColorAttachments"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeInvocationsPerWorkgroup"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupSizeX"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupSizeY"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupSizeZ"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupStorageSize"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeWorkgroupsPerDimension"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxDynamicStorageBuffersPerPipelineLayout"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxDynamicUniformBuffersPerPipelineLayout"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxInterStageShaderComponents"] expected: if os == "linux" and not debug: FAIL [:limit="maxInterStageShaderVariables"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxSampledTexturesPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxSamplersPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxStorageBufferBindingSize"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxStorageBuffersPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxStorageTexturesPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxTextureArrayLayers"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxTextureDimension1D"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxTextureDimension2D"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxTextureDimension3D"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxUniformBufferBindingSize"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxUniformBuffersPerShaderStage"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxVertexAttributes"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxVertexBufferArrayStride"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxVertexBuffers"] - expected: - if os == "linux" and not debug: FAIL [:limit="minStorageBufferOffsetAlignment"] - expected: - if os == "linux" and not debug: FAIL [:limit="minUniformBufferOffsetAlignment"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limits,supported:*] @@ -336,12 +220,8 @@ [:limit="maxBufferSize"] [:limit="maxColorAttachmentBytesPerSample"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxColorAttachments"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxComputeInvocationsPerWorkgroup"] @@ -362,8 +242,6 @@ [:limit="maxInterStageShaderComponents"] [:limit="maxInterStageShaderVariables"] - expected: - if os == "linux" and not debug: FAIL [:limit="maxSampledTexturesPerShaderStage"] @@ -400,8 +278,6 @@ [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:limits,unknown:*] [:] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,operation,adapter,requestDevice:stale:*] @@ -11807,8 +11683,6 @@ if os == "linux" and not debug: FAIL [:isAsync=true;format="depth32float-stencil8";enable_required_feature=false] - expected: - if os == "linux" and not debug: FAIL [:isAsync=true;format="depth32float-stencil8";enable_required_feature=true] expected: @@ -12579,12 +12453,8 @@ [:limitTest="overMaximum";testValueName="overLimit"] [:limitTest="underDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroups:setBindGroup,at_over:*] @@ -12595,8 +12465,6 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroups:validate,maxBindGroupsPlusVertexBuffers:*] [:] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroupsPlusVertexBuffers:createRenderPipeline,at_over:*] @@ -12609,12 +12477,8 @@ if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=false] expected: @@ -12625,12 +12489,8 @@ if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=true] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false] expected: @@ -12641,12 +12501,8 @@ if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true] - expected: - if os == "linux" and not debug: FAIL [:limitTest="overMaximum";testValueName="atLimit";async=false] expected: @@ -12673,12 +12529,8 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=true] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroupsPlusVertexBuffers:draw,at_over:*] @@ -12691,12 +12543,8 @@ if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";encoderType="render"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";encoderType="renderBundle"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";encoderType="render"] expected: @@ -12707,12 +12555,8 @@ if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";encoderType="render"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";encoderType="renderBundle"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";encoderType="render"] expected: @@ -12723,12 +12567,8 @@ if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";encoderType="render"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";encoderType="renderBundle"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="overMaximum";testValueName="atLimit";encoderType="render"] expected: @@ -12755,12 +12595,8 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";encoderType="render"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";encoderType="renderBundle"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindingsPerBindGroup:createBindGroupLayout,at_over:*] @@ -12785,12 +12621,8 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindingsPerBindGroup:createPipeline,at_over:*] @@ -12963,12 +12795,8 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";createPipelineType="createComputePipeline";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";createPipelineType="createComputePipeline";async=true] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";createPipelineType="createRenderPipeline";async=false] expected: @@ -12979,12 +12807,8 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";createPipelineType="createRenderPipelineWithFragmentStage";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";createPipelineType="createRenderPipelineWithFragmentStage";async=true] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";createPipelineType="createComputePipeline";async=false] expected: @@ -13035,54 +12859,30 @@ [:limitTest="overMaximum";testValueName="overLimit"] [:limitTest="underDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachmentBytesPerSample:beginRenderPass,at_over:*] [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -13125,44 +12925,24 @@ if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -13205,44 +12985,24 @@ if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -13365,44 +13125,24 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -13447,44 +13187,24 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachmentBytesPerSample:createRenderBundle,at_over:*] [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -13527,44 +13247,24 @@ if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -13607,44 +13307,24 @@ if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -13767,44 +13447,24 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -13849,24 +13509,14 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachmentBytesPerSample:createRenderPipeline,at_over:*] [:limitTest="atDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] expected: @@ -13889,24 +13539,14 @@ if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"] expected: @@ -13929,44 +13569,24 @@ if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -14009,24 +13629,14 @@ if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] expected: @@ -14049,24 +13659,14 @@ if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"] expected: @@ -14089,44 +13689,24 @@ if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -14169,24 +13749,14 @@ if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] expected: @@ -14209,24 +13779,14 @@ if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"] expected: @@ -14249,44 +13809,24 @@ if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -14489,24 +14029,14 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] expected: @@ -14529,24 +14059,14 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"] expected: @@ -14569,44 +14089,24 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -14650,6 +14150,8 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachments:beginRenderPass,at_over:*] + expected: + if os == "linux" and not debug: CRASH [:limitTest="atDefault";testValueName="atLimit"] expected: if os == "linux" and not debug: FAIL @@ -14690,6 +14192,8 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachments:createRenderBundle,at_over:*] + expected: + if os == "linux" and not debug: CRASH [:limitTest="atDefault";testValueName="atLimit"] expected: if os == "linux" and not debug: FAIL @@ -14731,16 +14235,10 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachments:createRenderPipeline,at_over:*] [:limitTest="atDefault";testValueName="atLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="atLimit";async=true] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true] expected: @@ -14751,24 +14249,16 @@ [:limitTest="atMaximum";testValueName="atLimit";async=true] [:limitTest="atMaximum";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=true] expected: if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true] expected: @@ -14791,16 +14281,10 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=true] expected: @@ -14809,14 +14293,10 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachments:validate,kMaxColorAttachmentsToTest:*] [:] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxColorAttachments:validate,maxColorAttachmentBytesPerSample:*] [:] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeInvocationsPerWorkgroup:createComputePipeline,at_over:*] @@ -16803,8 +16283,6 @@ if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true] expected: @@ -16819,8 +16297,6 @@ if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";async=true] expected: @@ -16835,8 +16311,6 @@ if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true] expected: @@ -16867,8 +16341,6 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=true] expected: @@ -18707,52 +18179,28 @@ if os == "linux" and not debug: NOTRUN [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"] expected: @@ -18779,100 +18227,52 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"] expected: @@ -18899,52 +18299,28 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: @@ -19279,12 +18655,8 @@ [:limitTest="overMaximum";testValueName="overLimit"] [:limitTest="underDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxTextureDimension1D:createTexture,at_over:*] @@ -19305,12 +18677,8 @@ [:limitTest="overMaximum";testValueName="overLimit"] [:limitTest="underDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxTextureDimension2D:configure,at_over:*] @@ -19337,12 +18705,8 @@ [:limitTest="overMaximum";testValueName="overLimit"] [:limitTest="underDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxTextureDimension2D:getCurrentTexture,at_over:*] @@ -19368,12 +18732,8 @@ [:limitTest="overMaximum";testValueName="overLimit"] [:limitTest="underDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxUniformBufferBindingSize:createBindGroup,at_over:*] @@ -19464,8 +18824,6 @@ if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=true] expected: @@ -19522,26 +18880,16 @@ [:limitTest="overMaximum";testValueName="overLimit";encoderType="renderBundle"] [:limitTest="underDefault";testValueName="atLimit";encoderType="render"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="atLimit";encoderType="renderBundle"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";encoderType="render"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";encoderType="renderBundle"] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxVertexBuffers:validate,maxBindGroupsPlusVertexBuffers:*] [:] - expected: - if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,capability_checks,limits,minStorageBufferOffsetAlignment:createBindGroup,at_over:*] @@ -19558,12 +18906,8 @@ [:limitTest="betweenDefaultAndMinimum";testValueName="underLimit"] [:limitTest="overDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="overDefault";testValueName="underLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underMinimum";testValueName="atLimit"] @@ -19584,12 +18928,8 @@ [:limitTest="betweenDefaultAndMinimum";testValueName="underLimit"] [:limitTest="overDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="overDefault";testValueName="underLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underMinimum";testValueName="atLimit"] @@ -19618,12 +18958,8 @@ [:limitTest="betweenDefaultAndMinimum";testValueName="underLimit"] [:limitTest="overDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="overDefault";testValueName="underLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underMinimum";testValueName="atLimit"] @@ -19644,12 +18980,8 @@ [:limitTest="betweenDefaultAndMinimum";testValueName="underLimit"] [:limitTest="overDefault";testValueName="atLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="overDefault";testValueName="underLimit"] - expected: - if os == "linux" and not debug: FAIL [:limitTest="underMinimum";testValueName="atLimit"] @@ -32621,19 +31953,111 @@ [cts.https.html?q=webgpu:api,validation,encoding,createRenderBundleEncoder:attachment_state,limits,maxColorAttachmentBytesPerSample,aligned:*] - expected: - if os == "linux" and not debug: CRASH + [:format="bgra8unorm"] + expected: + if os == "linux" and not debug: FAIL + + [:format="bgra8unorm-srgb"] + expected: + if os == "linux" and not debug: FAIL + + [:format="r16float"] + + [:format="r16sint"] + + [:format="r16uint"] + + [:format="r32float"] + + [:format="r32sint"] + + [:format="r32uint"] + + [:format="r8sint"] + + [:format="r8uint"] + + [:format="r8unorm"] + + [:format="rg16float"] + + [:format="rg16sint"] + + [:format="rg16uint"] + + [:format="rg32float"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rg32sint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rg32uint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rg8sint"] + + [:format="rg8uint"] + + [:format="rg8unorm"] + + [:format="rgb10a2uint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgb10a2unorm"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba16float"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba16sint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba16uint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba32float"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba32sint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba32uint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba8sint"] + + [:format="rgba8uint"] + + [:format="rgba8unorm"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba8unorm-srgb"] + expected: + if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,encoding,createRenderBundleEncoder:attachment_state,limits,maxColorAttachmentBytesPerSample,unaligned:*] [:formats=["r32float","rgba8unorm","rgba32float","r8unorm","r8unorm"\]] [:formats=["r8unorm","r32float","rgba8unorm","rgba32float","r8unorm"\]] + expected: + if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,encoding,createRenderBundleEncoder:attachment_state,limits,maxColorAttachments:*] - expected: - if os == "linux" and not debug: CRASH + [:] [cts.https.html?q=webgpu:api,validation,encoding,createRenderBundleEncoder:depth_stencil_readonly:*] @@ -49681,8 +49105,7 @@ [cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_and_bundle,color_count:*] - expected: - if os == "linux" and not debug: CRASH + [:] [cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_and_bundle,color_format:*] @@ -49692,8 +49115,83 @@ [cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_and_bundle,color_sparse:*] - expected: - if os == "linux" and not debug: CRASH + [:attachmentCount=1] + + [:attachmentCount=10] + + [:attachmentCount=11] + + [:attachmentCount=12] + + [:attachmentCount=13] + + [:attachmentCount=14] + + [:attachmentCount=15] + + [:attachmentCount=16] + + [:attachmentCount=17] + + [:attachmentCount=18] + + [:attachmentCount=19] + + [:attachmentCount=2] + expected: + if os == "linux" and not debug: FAIL + + [:attachmentCount=20] + + [:attachmentCount=21] + + [:attachmentCount=22] + + [:attachmentCount=23] + + [:attachmentCount=24] + + [:attachmentCount=25] + + [:attachmentCount=26] + + [:attachmentCount=27] + + [:attachmentCount=28] + + [:attachmentCount=29] + + [:attachmentCount=3] + expected: + if os == "linux" and not debug: FAIL + + [:attachmentCount=30] + + [:attachmentCount=31] + + [:attachmentCount=32] + + [:attachmentCount=4] + expected: + if os == "linux" and not debug: FAIL + + [:attachmentCount=5] + expected: + if os == "linux" and not debug: FAIL + + [:attachmentCount=6] + expected: + if os == "linux" and not debug: FAIL + + [:attachmentCount=7] + expected: + if os == "linux" and not debug: FAIL + + [:attachmentCount=8] + expected: + if os == "linux" and not debug: FAIL + + [:attachmentCount=9] [cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_and_bundle,depth_format:*] @@ -49723,8 +49221,9 @@ [cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_or_bundle_and_pipeline,color_count:*] - expected: - if os == "linux" and not debug: CRASH + [:encoderType="render%20bundle"] + + [:encoderType="render%20pass"] [cts.https.html?q=webgpu:api,validation,render_pass,attachment_compatibility:render_pass_or_bundle_and_pipeline,color_format:*] @@ -49936,14 +49435,103 @@ [cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,limits,maxColorAttachmentBytesPerSample,aligned:*] - expected: - if os == "linux" and not debug: CRASH + [:format="bgra8unorm"] + expected: + if os == "linux" and not debug: FAIL + + [:format="bgra8unorm-srgb"] + expected: + if os == "linux" and not debug: FAIL + + [:format="r16float"] + + [:format="r16sint"] + + [:format="r16uint"] + + [:format="r32float"] + + [:format="r32sint"] + + [:format="r32uint"] + + [:format="r8sint"] + + [:format="r8uint"] + + [:format="r8unorm"] + + [:format="rg16float"] + + [:format="rg16sint"] + + [:format="rg16uint"] + + [:format="rg32float"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rg32sint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rg32uint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rg8sint"] + + [:format="rg8uint"] + + [:format="rg8unorm"] + + [:format="rgb10a2uint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgb10a2unorm"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba16float"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba16sint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba16uint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba32float"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba32sint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba32uint"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba8sint"] + + [:format="rgba8uint"] + + [:format="rgba8unorm"] + expected: + if os == "linux" and not debug: FAIL + + [:format="rgba8unorm-srgb"] + expected: + if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,limits,maxColorAttachmentBytesPerSample,unaligned:*] [:formats=["r32float","rgba8unorm","rgba32float","r8unorm","r8unorm"\]] - expected: - if os == "linux" and not debug: FAIL [:formats=["r8unorm","r32float","rgba8unorm","rgba32float","r8unorm"\]] expected: @@ -49951,6 +49539,8 @@ [cts.https.html?q=webgpu:api,validation,render_pass,render_pass_descriptor:color_attachments,limits,maxColorAttachments:*] + expected: + if os == "linux" and not debug: CRASH [:colorAttachmentsCountVariant={"mult":1,"add":0}] expected: if os == "linux" and not debug: FAIL @@ -54158,52 +53748,28 @@ if os == "linux" and not debug: FAIL [:format="r16float"] - expected: - if os == "linux" and not debug: FAIL [:format="r16sint"] - expected: - if os == "linux" and not debug: FAIL [:format="r16uint"] - expected: - if os == "linux" and not debug: FAIL [:format="r32float"] - expected: - if os == "linux" and not debug: FAIL [:format="r32sint"] - expected: - if os == "linux" and not debug: FAIL [:format="r32uint"] - expected: - if os == "linux" and not debug: FAIL [:format="r8sint"] - expected: - if os == "linux" and not debug: FAIL [:format="r8uint"] - expected: - if os == "linux" and not debug: FAIL [:format="r8unorm"] - expected: - if os == "linux" and not debug: FAIL [:format="rg16float"] - expected: - if os == "linux" and not debug: FAIL [:format="rg16sint"] - expected: - if os == "linux" and not debug: FAIL [:format="rg16uint"] - expected: - if os == "linux" and not debug: FAIL [:format="rg32float"] expected: @@ -54218,16 +53784,10 @@ if os == "linux" and not debug: FAIL [:format="rg8sint"] - expected: - if os == "linux" and not debug: FAIL [:format="rg8uint"] - expected: - if os == "linux" and not debug: FAIL [:format="rg8unorm"] - expected: - if os == "linux" and not debug: FAIL [:format="rgb10a2uint"] expected: @@ -54262,12 +53822,8 @@ if os == "linux" and not debug: FAIL [:format="rgba8sint"] - expected: - if os == "linux" and not debug: FAIL [:format="rgba8uint"] - expected: - if os == "linux" and not debug: FAIL [:format="rgba8unorm"] expected: @@ -54280,8 +53836,6 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:limits,maxColorAttachmentBytesPerSample,unaligned:*] [:formats=["r32float","rgba8unorm","rgba32float","r8unorm","r8unorm"\]] - expected: - if os == "linux" and not debug: FAIL [:formats=["r8unorm","r32float","rgba8unorm","rgba32float","r8unorm"\]] expected: @@ -54290,16 +53844,10 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:limits,maxColorAttachments:*] [:isAsync=false;targetsLengthVariant={"mult":1,"add":0}] - expected: - if os == "linux" and not debug: FAIL [:isAsync=false;targetsLengthVariant={"mult":1,"add":1}] - expected: - if os == "linux" and not debug: FAIL [:isAsync=true;targetsLengthVariant={"mult":1,"add":0}] - expected: - if os == "linux" and not debug: FAIL [:isAsync=true;targetsLengthVariant={"mult":1,"add":1}] expected: @@ -55632,24 +55180,16 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,inter_stage:max_shader_variable_location:*] [:isAsync=false;locationDelta=-1] - expected: - if os == "linux" and not debug: FAIL [:isAsync=false;locationDelta=-2] - expected: - if os == "linux" and not debug: FAIL [:isAsync=false;locationDelta=0] expected: if os == "linux" and not debug: FAIL [:isAsync=true;locationDelta=-1] - expected: - if os == "linux" and not debug: FAIL [:isAsync=true;locationDelta=-2] - expected: - if os == "linux" and not debug: FAIL [:isAsync=true;locationDelta=0] expected: @@ -89711,8 +89251,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f32:*] - expected: - if os == "linux" and not debug: CRASH [:inputSource="const"] expected: if os == "linux" and not debug: FAIL