Suppress dawn_end2end_tests that fail against WARP
Specifically against the latest Windows 10 system WARP driver: 10.0.19041.4355.
Bug: 409094881
Change-Id: I88b5933198416795e52a335073478aacfe552d36
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/235374
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: James Price <jrprice@google.com>
diff --git a/src/dawn/tests/end2end/BindGroupTests.cpp b/src/dawn/tests/end2end/BindGroupTests.cpp
index 1bce07a..c0d9ba3 100644
--- a/src/dawn/tests/end2end/BindGroupTests.cpp
+++ b/src/dawn/tests/end2end/BindGroupTests.cpp
@@ -1177,6 +1177,8 @@
// conflict. This can happen if the backend treats dynamic bindings separately from non-dynamic
// bindings.
TEST_P(BindGroupTests, DynamicAndNonDynamicBindingsDoNotConflictAfterRemapping) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
auto RunTestWith = [&](bool dynamicBufferFirst) {
uint32_t dynamicBufferBindingNumber = dynamicBufferFirst ? 0 : 1;
uint32_t bufferBindingNumber = dynamicBufferFirst ? 1 : 0;
@@ -1340,6 +1342,8 @@
// Test that bind group bindings may have unbounded and arbitrary binding numbers
TEST_P(BindGroupTests, ArbitraryBindingNumbers) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::BasicRenderPass renderPass = utils::CreateBasicRenderPass(device, kRTSize, kRTSize);
wgpu::ShaderModule vsModule = utils::CreateShaderModule(device, R"(
diff --git a/src/dawn/tests/end2end/ColorStateTests.cpp b/src/dawn/tests/end2end/ColorStateTests.cpp
index e09fd82..2a4a97a 100644
--- a/src/dawn/tests/end2end/ColorStateTests.cpp
+++ b/src/dawn/tests/end2end/ColorStateTests.cpp
@@ -338,6 +338,8 @@
// The following tests check test that the blend operation works
TEST_P(ColorStateTest, BlendOperationAdd) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<utils::RGBA8, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -346,6 +348,8 @@
}
TEST_P(ColorStateTest, BlendOperationSubtract) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<utils::RGBA8, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -354,6 +358,8 @@
}
TEST_P(ColorStateTest, BlendOperationReverseSubtract) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<utils::RGBA8, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -362,6 +368,8 @@
}
TEST_P(ColorStateTest, BlendOperationMin) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<utils::RGBA8, utils::RGBA8>> tests;
std::transform(
@@ -371,6 +379,8 @@
}
TEST_P(ColorStateTest, BlendOperationMax) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<utils::RGBA8, utils::RGBA8>> tests;
std::transform(
@@ -381,6 +391,8 @@
// The following tests check that the Source blend factor works
TEST_P(ColorStateTest, SrcBlendFactorZero) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(
@@ -390,6 +402,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorOne) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -400,6 +414,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorSrc) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -413,6 +429,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorOneMinusSrc) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -426,6 +444,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorSrcAlpha) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -438,6 +458,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorOneMinusSrcAlpha) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(
@@ -452,6 +474,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorDst) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -465,6 +489,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorOneMinusDst) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -478,6 +504,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorDstAlpha) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -490,6 +518,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorOneMinusDstAlpha) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(
@@ -504,6 +534,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorSrcAlphaSaturated) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -518,6 +550,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorConstant) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -531,6 +565,8 @@
}
TEST_P(ColorStateTest, SrcBlendFactorOneMinusConstant) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -546,6 +582,8 @@
// The following tests check that the Destination blend factor works
TEST_P(ColorStateTest, DstBlendFactorZero) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(
@@ -555,6 +593,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorOne) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -565,6 +605,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorSrc) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -578,6 +620,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorOneMinusSrc) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -591,6 +635,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorSrcAlpha) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -603,6 +649,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorOneMinusSrcAlpha) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(
@@ -617,6 +665,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorDst) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -630,6 +680,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorOneMinusDst) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -643,6 +695,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorDstAlpha) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -655,6 +709,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorOneMinusDstAlpha) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(
@@ -669,6 +725,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorSrcAlphaSaturated) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -683,6 +741,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorConstant) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -696,6 +756,8 @@
}
TEST_P(ColorStateTest, DstBlendFactorOneMinusConstant) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
@@ -711,6 +773,8 @@
// Check that the color write mask works
TEST_P(ColorStateTest, ColorWriteMask) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
wgpu::BlendComponent blendComponent;
blendComponent.operation = wgpu::BlendOperation::Add;
blendComponent.srcFactor = wgpu::BlendFactor::One;
@@ -795,6 +859,8 @@
// Test that independent color states on render targets works
TEST_P(ColorStateTest, IndependentColorState) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
// Compatibility mode doesn't support per-draw-buffer blending
DAWN_TEST_UNSUPPORTED_IF(IsCompatibilityMode());
@@ -945,6 +1011,8 @@
// Test that the default blend color is correctly set at the beginning of every subpass
TEST_P(ColorStateTest, DefaultBlendColor) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
wgpu::ShaderModule fsModule = utils::CreateShaderModule(device, R"(
struct MyBlock {
color : vec4f
@@ -1195,6 +1263,8 @@
// This is a regression test against an Intel driver issue about using DstAlpha as
// SrcBlendFactor for both color and alpha blend factors.
TEST_P(ColorStateTest, SrcBlendFactorDstAlphaDstBlendFactorZero) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
utils::RGBA8 base(32, 64, 128, 192);
std::vector<std::pair<TriangleSpec, utils::RGBA8>> tests;
std::transform(kColors.begin(), kColors.end(), std::back_inserter(tests),
diff --git a/src/dawn/tests/end2end/CompressedTextureFormatTests.cpp b/src/dawn/tests/end2end/CompressedTextureFormatTests.cpp
index a619262..ad4b4c0 100644
--- a/src/dawn/tests/end2end/CompressedTextureFormatTests.cpp
+++ b/src/dawn/tests/end2end/CompressedTextureFormatTests.cpp
@@ -1444,6 +1444,8 @@
// its virtual size.
TEST_P(CompressedTextureWriteTextureTest,
WriteIntoSubresourceWithPhysicalSizeNotEqualToVirtualSize) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
// TODO(crbug.com/dawn/976): Failing on Linux Intel OpenGL drivers.
DAWN_SUPPRESS_TEST_IF(IsIntel() && IsOpenGL() && IsLinux());
diff --git a/src/dawn/tests/end2end/ComputeDispatchTests.cpp b/src/dawn/tests/end2end/ComputeDispatchTests.cpp
index 4819e85..fbd03e9 100644
--- a/src/dawn/tests/end2end/ComputeDispatchTests.cpp
+++ b/src/dawn/tests/end2end/ComputeDispatchTests.cpp
@@ -302,6 +302,7 @@
// Test indirect dispatches exceeding the max limit with an offset are noop-ed.
TEST_P(ComputeDispatchTests, ExceedsMaxWorkgroupsWithOffsetNoop) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
DAWN_TEST_UNSUPPORTED_IF(HasToggleEnabled("skip_validation"));
uint32_t max = GetSupportedLimits().maxComputeWorkgroupsPerDimension;
@@ -523,6 +524,7 @@
// TODO(crbug.com/dawn/1196): Fails on Chromium's Quadro P400 bots
DAWN_SUPPRESS_TEST_IF(IsD3D12() && IsNvidia());
#endif
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
// Control case: One DispatchWorkgroupsIndirect call
IndirectTest({0, 0, 0, 2, 3, 4}, {3 * sizeof(uint32_t)});
@@ -552,6 +554,7 @@
// Test indirect dispatches exceeding the max limit with an offset are noop-ed.
TEST_P(ComputeMultipleDispatchesTests, ExceedsMaxWorkgroupsWithOffsetNoop) {
DAWN_TEST_UNSUPPORTED_IF(HasToggleEnabled("skip_validation"));
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
#if DAWN_PLATFORM_IS(32_BIT)
// TODO(crbug.com/dawn/1196): Fails on Chromium's Quadro P400 bots
diff --git a/src/dawn/tests/end2end/MultisampledRenderingTests.cpp b/src/dawn/tests/end2end/MultisampledRenderingTests.cpp
index d73afa7..2c32c44 100644
--- a/src/dawn/tests/end2end/MultisampledRenderingTests.cpp
+++ b/src/dawn/tests/end2end/MultisampledRenderingTests.cpp
@@ -372,6 +372,8 @@
// Test using one multisampled color attachment with resolve target can render correctly.
TEST_P(MultisampledRenderingTest, ResolveInto2DTexture) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
constexpr bool kTestDepth = false;
wgpu::RenderPipeline pipeline = CreateRenderPipelineWithOneOutputForTest(kTestDepth);
@@ -526,6 +528,7 @@
// TODO(dawn:1550) Workaround introduces a bug on Qualcomm GPUs, but is necessary for ARM GPUs.
DAWN_TEST_UNSUPPORTED_IF(IsAndroid() && IsQualcomm() &&
HasToggleEnabled("resolve_multiple_attachments_in_separate_passes"));
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
wgpu::TextureView multisampledColorView2 =
CreateTextureForRenderAttachment(kColorFormat, kSampleCount).CreateView();
diff --git a/src/dawn/tests/end2end/QueryTests.cpp b/src/dawn/tests/end2end/QueryTests.cpp
index be30a82..d96a155 100644
--- a/src/dawn/tests/end2end/QueryTests.cpp
+++ b/src/dawn/tests/end2end/QueryTests.cpp
@@ -1073,6 +1073,8 @@
// Test resolving timestamp query to one slot in the buffer
TEST_P(TimestampQueryTests, ResolveToBufferWithOffset) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
constexpr uint32_t kQueryCount = 2;
constexpr uint64_t kBufferSize = kQueryCount * sizeof(uint64_t) + kMinDestinationOffset;
constexpr uint64_t kCount = kQueryCount + kMinCount;
diff --git a/src/dawn/tests/end2end/SamplerFilterAnisotropicTests.cpp b/src/dawn/tests/end2end/SamplerFilterAnisotropicTests.cpp
index 9d6fb8e..5b10ca7 100644
--- a/src/dawn/tests/end2end/SamplerFilterAnisotropicTests.cpp
+++ b/src/dawn/tests/end2end/SamplerFilterAnisotropicTests.cpp
@@ -294,6 +294,8 @@
// requires EXT_texture_filter_anisotropic
DAWN_SUPPRESS_TEST_IF(IsCompatibilityMode() &&
HasToggleEnabled("gl_force_es_31_and_no_extensions"));
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
const uint16_t maxAnisotropyLists[] = {1, 2, 16, 128};
for (uint16_t t : maxAnisotropyLists) {
TestFilterAnisotropic(t);
diff --git a/src/dawn/tests/end2end/SamplerTests.cpp b/src/dawn/tests/end2end/SamplerTests.cpp
index dd19ae3..fd89b51 100644
--- a/src/dawn/tests/end2end/SamplerTests.cpp
+++ b/src/dawn/tests/end2end/SamplerTests.cpp
@@ -316,6 +316,8 @@
// Test drawing a rect with a checkerboard texture using a static sampler with different address
// modes.
TEST_P(StaticSamplerTest, AddressMode) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
for (auto u : addressModes) {
for (auto v : addressModes) {
for (auto w : addressModes) {
@@ -333,6 +335,8 @@
// Test that passing texture and static sampler objects through user-defined functions works
// correctly.
TEST_P(StaticSamplerTest, PassThroughUserFunctionParameters) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
for (auto u : addressModes) {
for (auto v : addressModes) {
for (auto w : addressModes) {
diff --git a/src/dawn/tests/end2end/ShaderAtomicTests.cpp b/src/dawn/tests/end2end/ShaderAtomicTests.cpp
index db41322..80e463a 100644
--- a/src/dawn/tests/end2end/ShaderAtomicTests.cpp
+++ b/src/dawn/tests/end2end/ShaderAtomicTests.cpp
@@ -103,6 +103,7 @@
TEST_P(ShaderAtomicTests, WorkgroupAtomicArray) {
// Suppression for Mali gpus.
DAWN_SUPPRESS_TEST_IF(gpu_info::IsARM(GetParam().adapterProperties.vendorID));
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
// Test code only supports up to 256 workgroup size.
DAWN_ASSERT(GetParam().mWorkgroupSizeParameter <= 256);
diff --git a/src/dawn/tests/end2end/TextureZeroInitTests.cpp b/src/dawn/tests/end2end/TextureZeroInitTests.cpp
index f865bf4..cfbfb46 100644
--- a/src/dawn/tests/end2end/TextureZeroInitTests.cpp
+++ b/src/dawn/tests/end2end/TextureZeroInitTests.cpp
@@ -2067,6 +2067,8 @@
// Test that 0 lazy clear count happens when we copy buffer to texture to a nonzero mip level
// (with physical size different from the virtual mip size)
TEST_P(CompressedTextureZeroInitTest, FullCopyToNonZeroMipLevel) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
wgpu::TextureDescriptor textureDescriptor;
textureDescriptor.usage = wgpu::TextureUsage::CopySrc | wgpu::TextureUsage::CopyDst |
wgpu::TextureUsage::TextureBinding;
@@ -2091,6 +2093,7 @@
TEST_P(CompressedTextureZeroInitTest, HalfCopyToNonZeroMipLevel) {
// TODO(crbug.com/346264229): diagnose this failure on ANGLE/D3D11
DAWN_SUPPRESS_TEST_IF(IsANGLED3D11());
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
wgpu::TextureDescriptor textureDescriptor;
textureDescriptor.usage = wgpu::TextureUsage::CopySrc | wgpu::TextureUsage::CopyDst |
@@ -2259,6 +2262,7 @@
TEST_P(CompressedTextureZeroInitTest, Copy2DArrayCompressedB2T2B) {
// Compatibility mode does not support compressed texture-to-buffer copies.
DAWN_SUPPRESS_TEST_IF(IsCompatibilityMode());
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
// create srcTexture with data
wgpu::TextureDescriptor textureDescriptor = CreateTextureDescriptor(
diff --git a/src/dawn/tests/white_box/D3D12DescriptorHeapTests.cpp b/src/dawn/tests/white_box/D3D12DescriptorHeapTests.cpp
index 8a53b72..656a2a4 100644
--- a/src/dawn/tests/white_box/D3D12DescriptorHeapTests.cpp
+++ b/src/dawn/tests/white_box/D3D12DescriptorHeapTests.cpp
@@ -523,6 +523,7 @@
TEST_P(D3D12DescriptorHeapTests, EncodeUBOOverflowMultipleSubmit) {
DAWN_TEST_UNSUPPORTED_IF(
!mD3DDevice->IsToggleEnabled(native::Toggle::UseD3D12SmallShaderVisibleHeapForTesting));
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
utils::BasicRenderPass renderPass = utils::CreateBasicRenderPass(device, kRTSize, kRTSize);
diff --git a/src/dawn/tests/white_box/QueryInternalShaderTests.cpp b/src/dawn/tests/white_box/QueryInternalShaderTests.cpp
index f230d94..40c727c 100644
--- a/src/dawn/tests/white_box/QueryInternalShaderTests.cpp
+++ b/src/dawn/tests/white_box/QueryInternalShaderTests.cpp
@@ -237,6 +237,8 @@
// timestamp period (here use GPU frequency (HZ) on Intel D3D12 to calculate the period in
// ns for testing).
TEST_P(QueryInternalShaderTests, TimestampComputeShaderMultiplication) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
+
constexpr std::array<float, 5> kPeriodsToTest = {
1,
7,
@@ -264,6 +266,7 @@
}
TEST_P(QueryInternalShaderTests, TimestampComputeShaderQuantization) {
+ DAWN_SUPPRESS_TEST_IF(IsWARP());
DAWN_TEST_UNSUPPORTED_IF(!HasToggleEnabled("timestamp_quantization"));
constexpr std::array<uint32_t, 3> kQuantizationMasksToTest = {