Remove the use_tint_generator toggle
We now always use Tint. Bug: dawn:571 Change-Id: Ic65669a9e00493292ed60cde00af6fa3f6e55ec2 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/65665 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Ben Clayton <bclayton@google.com>
This commit is contained in:
parent
2f8a68ce21
commit
deb4057d27
|
@ -186,15 +186,6 @@ namespace dawn_native {
|
||||||
|
|
||||||
mFormatTable = BuildFormatTable(this);
|
mFormatTable = BuildFormatTable(this);
|
||||||
SetDefaultToggles();
|
SetDefaultToggles();
|
||||||
if ((adapter->GetBackendType() == wgpu::BackendType::Metal ||
|
|
||||||
adapter->GetBackendType() == wgpu::BackendType::Vulkan ||
|
|
||||||
adapter->GetBackendType() == wgpu::BackendType::D3D12) &&
|
|
||||||
!IsToggleEnabled(Toggle::UseTintGenerator)) {
|
|
||||||
EmitLog(
|
|
||||||
WGPULoggingType_Warning,
|
|
||||||
"Non-tint generator is not available on this backend; toggle disable ignored.\n");
|
|
||||||
ForceSetToggle(Toggle::UseTintGenerator, true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DeviceBase::DeviceBase() : mState(State::Alive) {
|
DeviceBase::DeviceBase() : mState(State::Alive) {
|
||||||
|
@ -1537,7 +1528,6 @@ namespace dawn_native {
|
||||||
void DeviceBase::SetDefaultToggles() {
|
void DeviceBase::SetDefaultToggles() {
|
||||||
SetToggle(Toggle::LazyClearResourceOnFirstUse, true);
|
SetToggle(Toggle::LazyClearResourceOnFirstUse, true);
|
||||||
SetToggle(Toggle::DisallowUnsafeAPIs, true);
|
SetToggle(Toggle::DisallowUnsafeAPIs, true);
|
||||||
SetToggle(Toggle::UseTintGenerator, true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DeviceBase::ApplyToggleOverrides(const DeviceDescriptor* deviceDescriptor) {
|
void DeviceBase::ApplyToggleOverrides(const DeviceDescriptor* deviceDescriptor) {
|
||||||
|
|
|
@ -160,9 +160,6 @@ namespace dawn_native {
|
||||||
"Produces validation errors on API entry points or parameter combinations that "
|
"Produces validation errors on API entry points or parameter combinations that "
|
||||||
"aren't considered secure yet.",
|
"aren't considered secure yet.",
|
||||||
"http://crbug.com/1138528"}},
|
"http://crbug.com/1138528"}},
|
||||||
{Toggle::UseTintGenerator,
|
|
||||||
{"use_tint_generator", "Use Tint instead of SPRIV-cross to generate shaders.",
|
|
||||||
"https://crbug.com/dawn/571"}},
|
|
||||||
{Toggle::FlushBeforeClientWaitSync,
|
{Toggle::FlushBeforeClientWaitSync,
|
||||||
{"flush_before_client_wait_sync",
|
{"flush_before_client_wait_sync",
|
||||||
"Call glFlush before glClientWaitSync to work around bugs in the latter",
|
"Call glFlush before glClientWaitSync to work around bugs in the latter",
|
||||||
|
|
|
@ -48,7 +48,6 @@ namespace dawn_native {
|
||||||
DisableRobustness,
|
DisableRobustness,
|
||||||
MetalEnableVertexPulling,
|
MetalEnableVertexPulling,
|
||||||
DisallowUnsafeAPIs,
|
DisallowUnsafeAPIs,
|
||||||
UseTintGenerator,
|
|
||||||
FlushBeforeClientWaitSync,
|
FlushBeforeClientWaitSync,
|
||||||
UseTempBufferInSmallFormatTextureToTextureCopyFromGreaterToLessMipLevel,
|
UseTempBufferInSmallFormatTextureToTextureCopyFromGreaterToLessMipLevel,
|
||||||
EmitHLSLDebugSymbols,
|
EmitHLSLDebugSymbols,
|
||||||
|
|
|
@ -352,13 +352,13 @@ namespace dawn_native { namespace opengl {
|
||||||
// Modify the decoration of variables so that SPIRV-Cross outputs only
|
// Modify the decoration of variables so that SPIRV-Cross outputs only
|
||||||
// layout(binding=<index>) for interface variables.
|
// layout(binding=<index>) for interface variables.
|
||||||
//
|
//
|
||||||
// When the use_tint_generator toggle is on, Tint is used for the reflection of bindings
|
// Tint is used for the reflection of bindings for the implicit pipeline layout and
|
||||||
// for the implicit pipeline layout and pipeline/layout validation, but bindingInfo is set
|
// pipeline/layout validation, but bindingInfo is set to mGLEntryPoints which is the
|
||||||
// to mGLEntryPoints which is the SPIRV-Cross reflection. Tint reflects bindings used more
|
// SPIRV-Cross reflection. Tint reflects bindings used more precisely than SPIRV-Cross so
|
||||||
// precisely than SPIRV-Cross so some bindings in bindingInfo might not exist in the layout
|
// some bindings in bindingInfo might not exist in the layout and querying the layout for
|
||||||
// and querying the layout for them would cause an ASSERT. That's why we defensively check
|
// them would cause an ASSERT. That's why we defensively check that bindings are in the
|
||||||
// that bindings are in the layout before modifying them. This slight hack is ok because in
|
// layout before modifying them. This slight hack is ok because in the long term we will use
|
||||||
// the long term we will use Tint to produce GLSL.
|
// Tint to produce GLSL.
|
||||||
for (BindGroupIndex group : IterateBitSet(layout->GetBindGroupLayoutsMask())) {
|
for (BindGroupIndex group : IterateBitSet(layout->GetBindGroupLayoutsMask())) {
|
||||||
for (const auto& it : bindingInfo[group]) {
|
for (const auto& it : bindingInfo[group]) {
|
||||||
const BindGroupLayoutBase* bgl = layout->GetBindGroupLayout(group);
|
const BindGroupLayoutBase* bgl = layout->GetBindGroupLayout(group);
|
||||||
|
|
|
@ -385,7 +385,7 @@ void DawnTestEnvironment::ParseArgs(int argc, char** argv) {
|
||||||
" enable all available backend validation with less performance overhead.\n"
|
" enable all available backend validation with less performance overhead.\n"
|
||||||
" Set to 'disabled' to run with no validation (same as no flag).\n"
|
" Set to 'disabled' to run with no validation (same as no flag).\n"
|
||||||
" --enable-toggles: Comma-delimited list of Dawn toggles to enable.\n"
|
" --enable-toggles: Comma-delimited list of Dawn toggles to enable.\n"
|
||||||
" ex.) skip_validation,use_tint_generator,disable_robustness,turn_off_vsync\n"
|
" ex.) skip_validation,disable_robustness,turn_off_vsync\n"
|
||||||
" --disable-toggles: Comma-delimited list of Dawn toggles to disable\n"
|
" --disable-toggles: Comma-delimited list of Dawn toggles to disable\n"
|
||||||
" --adapter-vendor-id: Select adapter by vendor id to run end2end tests"
|
" --adapter-vendor-id: Select adapter by vendor id to run end2end tests"
|
||||||
"on multi-GPU systems \n"
|
"on multi-GPU systems \n"
|
||||||
|
|
|
@ -986,9 +986,6 @@ TEST_P(BindGroupTests, DrawThenChangePipelineTwiceAndBindGroup) {
|
||||||
// Regression test for crbug.com/dawn/408 where dynamic offsets were applied in the wrong order.
|
// Regression test for crbug.com/dawn/408 where dynamic offsets were applied in the wrong order.
|
||||||
// Dynamic offsets should be applied in increasing order of binding number.
|
// Dynamic offsets should be applied in increasing order of binding number.
|
||||||
TEST_P(BindGroupTests, DynamicOffsetOrder) {
|
TEST_P(BindGroupTests, DynamicOffsetOrder) {
|
||||||
// Does not work with SPIRV-Cross. crbug.com/dawn/975
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsD3D12() && !HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
// We will put the following values and the respective offsets into a buffer.
|
// We will put the following values and the respective offsets into a buffer.
|
||||||
// The test will ensure that the correct dynamic offset is applied to each buffer by reading the
|
// The test will ensure that the correct dynamic offset is applied to each buffer by reading the
|
||||||
// value from an offset binding.
|
// value from an offset binding.
|
||||||
|
|
|
@ -135,8 +135,6 @@ class ComputeLayoutMemoryBufferTests
|
||||||
: public DawnTestWithParams<ComputeLayoutMemoryBufferTestParams> {
|
: public DawnTestWithParams<ComputeLayoutMemoryBufferTestParams> {
|
||||||
void SetUp() override {
|
void SetUp() override {
|
||||||
DawnTestBase::SetUp();
|
DawnTestBase::SetUp();
|
||||||
DAWN_TEST_UNSUPPORTED_IF((IsD3D12() || IsMetal()) &&
|
|
||||||
!HasToggleEnabled("use_tint_generator"));
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -339,10 +339,6 @@ TEST_P(ComputeStorageBufferBarrierTests, UniformToStorageAddPingPongInOnePass) {
|
||||||
// 2 - Write ones into it with a compute shader.
|
// 2 - Write ones into it with a compute shader.
|
||||||
// 3 - Use the indirect buffer in a Dispatch while also reading its data.
|
// 3 - Use the indirect buffer in a Dispatch while also reading its data.
|
||||||
TEST_P(ComputeStorageBufferBarrierTests, IndirectBufferCorrectBarrier) {
|
TEST_P(ComputeStorageBufferBarrierTests, IndirectBufferCorrectBarrier) {
|
||||||
// For some reason SPIRV-Cross crashes when translating the step3 shader to HLSL. Suppress the
|
|
||||||
// failure since we'll remove SPIRV-Cross at some point.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsD3D12() && !HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
wgpu::ComputePipelineDescriptor step2PipelineDesc;
|
wgpu::ComputePipelineDescriptor step2PipelineDesc;
|
||||||
step2PipelineDesc.compute.entryPoint = "main";
|
step2PipelineDesc.compute.entryPoint = "main";
|
||||||
step2PipelineDesc.compute.module = utils::CreateShaderModule(device, R"(
|
step2PipelineDesc.compute.module = utils::CreateShaderModule(device, R"(
|
||||||
|
|
|
@ -140,10 +140,6 @@ class CopyTextureForBrowserTests : public DawnTest {
|
||||||
|
|
||||||
void SetUp() override {
|
void SetUp() override {
|
||||||
DawnTest::SetUp();
|
DawnTest::SetUp();
|
||||||
// crbug.com/dawn/948: Tint required for multiple entrypoints in a module.
|
|
||||||
// CopyTextureForBrowser uses and internal pipeline with a multi-entrypoint
|
|
||||||
// shader module.
|
|
||||||
DAWN_TEST_UNSUPPORTED_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
testPipeline = MakeTestPipeline();
|
testPipeline = MakeTestPipeline();
|
||||||
|
|
||||||
|
|
|
@ -741,9 +741,6 @@ TEST_P(DepthStencilSamplingTest, CompareFunctionsRender) {
|
||||||
// Initialization via renderPass loadOp doesn't work on Mac Intel.
|
// Initialization via renderPass loadOp doesn't work on Mac Intel.
|
||||||
DAWN_SUPPRESS_TEST_IF(IsMetal() && IsIntel());
|
DAWN_SUPPRESS_TEST_IF(IsMetal() && IsIntel());
|
||||||
|
|
||||||
// Depends on Tint's shader reflection
|
|
||||||
DAWN_TEST_UNSUPPORTED_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
wgpu::RenderPipeline pipeline = CreateComparisonRenderPipeline();
|
wgpu::RenderPipeline pipeline = CreateComparisonRenderPipeline();
|
||||||
|
|
||||||
for (wgpu::TextureFormat format : kDepthFormats) {
|
for (wgpu::TextureFormat format : kDepthFormats) {
|
||||||
|
|
|
@ -62,10 +62,6 @@ TEST_P(ExternalTextureTests, CreateExternalTextureSuccess) {
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_P(ExternalTextureTests, SampleExternalTexture) {
|
TEST_P(ExternalTextureTests, SampleExternalTexture) {
|
||||||
// SPIRV-Cross is unable to reflect texture_external correctly, which causes errors during
|
|
||||||
// validation.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
wgpu::ShaderModule vsModule = utils::CreateShaderModule(device, R"(
|
wgpu::ShaderModule vsModule = utils::CreateShaderModule(device, R"(
|
||||||
[[stage(vertex)]] fn main([[builtin(vertex_index)]] VertexIndex : u32) -> [[builtin(position)]] vec4<f32> {
|
[[stage(vertex)]] fn main([[builtin(vertex_index)]] VertexIndex : u32) -> [[builtin(position)]] vec4<f32> {
|
||||||
var positions : array<vec4<f32>, 3> = array<vec4<f32>, 3>(
|
var positions : array<vec4<f32>, 3> = array<vec4<f32>, 3>(
|
||||||
|
|
|
@ -50,8 +50,6 @@ class FirstIndexOffsetTests : public DawnTest {
|
||||||
protected:
|
protected:
|
||||||
void SetUp() override {
|
void SetUp() override {
|
||||||
DawnTest::SetUp();
|
DawnTest::SetUp();
|
||||||
DAWN_TEST_UNSUPPORTED_IF(IsD3D12() && !HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
// WGSL doesn't have the ability to tag attributes as "flat". "flat" is required on u32
|
// WGSL doesn't have the ability to tag attributes as "flat". "flat" is required on u32
|
||||||
// attributes for correct runtime behavior under Vulkan and codegen under OpenGL(ES).
|
// attributes for correct runtime behavior under Vulkan and codegen under OpenGL(ES).
|
||||||
// TODO(tint:451): Remove once resolved by spec/tint
|
// TODO(tint:451): Remove once resolved by spec/tint
|
||||||
|
|
|
@ -756,7 +756,7 @@ TEST_P(MultisampledRenderingTest, MultisampledRenderingWithDepthTestAndSampleMas
|
||||||
TEST_P(MultisampledRenderingTest, ResolveInto2DTextureWithSampleMaskAndShaderOutputMask) {
|
TEST_P(MultisampledRenderingTest, ResolveInto2DTextureWithSampleMaskAndShaderOutputMask) {
|
||||||
// TODO(github.com/KhronosGroup/SPIRV-Cross/issues/1626): SPIRV-Cross produces bad GLSL for
|
// TODO(github.com/KhronosGroup/SPIRV-Cross/issues/1626): SPIRV-Cross produces bad GLSL for
|
||||||
// unsigned SampleMask builtins
|
// unsigned SampleMask builtins
|
||||||
DAWN_SUPPRESS_TEST_IF(HasToggleEnabled("use_tint_generator") && (IsOpenGL() || IsOpenGLES()));
|
DAWN_SUPPRESS_TEST_IF(IsOpenGL() || IsOpenGLES());
|
||||||
|
|
||||||
// TODO(crbug.com/dawn/673): Work around or enforce via validation that sample variables are not
|
// TODO(crbug.com/dawn/673): Work around or enforce via validation that sample variables are not
|
||||||
// supported on some platforms.
|
// supported on some platforms.
|
||||||
|
@ -818,7 +818,7 @@ TEST_P(MultisampledRenderingTest, ResolveInto2DTextureWithSampleMaskAndShaderOut
|
||||||
TEST_P(MultisampledRenderingTest, ResolveIntoMultipleResolveTargetsWithShaderOutputMask) {
|
TEST_P(MultisampledRenderingTest, ResolveIntoMultipleResolveTargetsWithShaderOutputMask) {
|
||||||
// TODO(github.com/KhronosGroup/SPIRV-Cross/issues/1626): SPIRV-Cross produces bad GLSL for
|
// TODO(github.com/KhronosGroup/SPIRV-Cross/issues/1626): SPIRV-Cross produces bad GLSL for
|
||||||
// unsigned SampleMask builtins
|
// unsigned SampleMask builtins
|
||||||
DAWN_SUPPRESS_TEST_IF(HasToggleEnabled("use_tint_generator") && (IsOpenGL() || IsOpenGLES()));
|
DAWN_SUPPRESS_TEST_IF(IsOpenGL() || IsOpenGLES());
|
||||||
|
|
||||||
// TODO(crbug.com/dawn/673): Work around or enforce via validation that sample variables are not
|
// TODO(crbug.com/dawn/673): Work around or enforce via validation that sample variables are not
|
||||||
// supported on some platforms.
|
// supported on some platforms.
|
||||||
|
|
|
@ -126,8 +126,6 @@ class MultisampledSamplingTest : public DawnTest {
|
||||||
// must cover both the X and Y coordinates of the sample position (no false positives if
|
// must cover both the X and Y coordinates of the sample position (no false positives if
|
||||||
// it covers the X position but not the Y, or vice versa).
|
// it covers the X position but not the Y, or vice versa).
|
||||||
TEST_P(MultisampledSamplingTest, SamplePositions) {
|
TEST_P(MultisampledSamplingTest, SamplePositions) {
|
||||||
DAWN_TEST_UNSUPPORTED_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
static constexpr wgpu::Extent3D kTextureSize = {1, 1, 1};
|
static constexpr wgpu::Extent3D kTextureSize = {1, 1, 1};
|
||||||
|
|
||||||
wgpu::Texture colorTexture;
|
wgpu::Texture colorTexture;
|
||||||
|
|
|
@ -36,11 +36,10 @@ class ShaderFloat16Tests : public DawnTest {
|
||||||
};
|
};
|
||||||
|
|
||||||
// Test basic 16bit float arithmetic and 16bit storage features.
|
// Test basic 16bit float arithmetic and 16bit storage features.
|
||||||
TEST_P(ShaderFloat16Tests, Basic16BitFloatFeaturesTest) {
|
// TODO(crbug.com/tint/404): Implement float16 in Tint.
|
||||||
|
TEST_P(ShaderFloat16Tests, DISABLED_Basic16BitFloatFeaturesTest) {
|
||||||
DAWN_TEST_UNSUPPORTED_IF(!IsShaderFloat16Supported());
|
DAWN_TEST_UNSUPPORTED_IF(!IsShaderFloat16Supported());
|
||||||
DAWN_SUPPRESS_TEST_IF(IsD3D12() && IsIntel()); // Flaky crashes. crbug.com/dawn/586
|
DAWN_SUPPRESS_TEST_IF(IsD3D12() && IsIntel()); // Flaky crashes. crbug.com/dawn/586
|
||||||
// TODO(crbug.com/tint/404): Implement float16 in Tint.
|
|
||||||
DAWN_TEST_UNSUPPORTED_IF(HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
uint16_t uniformData[] = {Float32ToFloat16(1.23), Float32ToFloat16(0.0)}; // 0.0 is a padding.
|
uint16_t uniformData[] = {Float32ToFloat16(1.23), Float32ToFloat16(0.0)}; // 0.0 is a padding.
|
||||||
wgpu::Buffer uniformBuffer = utils::CreateBufferFromData(
|
wgpu::Buffer uniformBuffer = utils::CreateBufferFromData(
|
||||||
|
|
|
@ -278,9 +278,6 @@ fn main(input : FragmentIn) -> [[location(0)]] vec4<f32> {
|
||||||
|
|
||||||
// Tests that shaders I/O structs can be shared between vertex and fragment shaders.
|
// Tests that shaders I/O structs can be shared between vertex and fragment shaders.
|
||||||
TEST_P(ShaderTests, WGSLSharedStructIO) {
|
TEST_P(ShaderTests, WGSLSharedStructIO) {
|
||||||
// crbug.com/dawn/948: Tint required for multiple entrypoints in a module.
|
|
||||||
DAWN_TEST_UNSUPPORTED_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
std::string shader = R"(
|
std::string shader = R"(
|
||||||
struct VertexIn {
|
struct VertexIn {
|
||||||
[[location(0)]] position : vec3<f32>;
|
[[location(0)]] position : vec3<f32>;
|
||||||
|
|
|
@ -409,7 +409,7 @@ void ShaderRobustnessPerf::SetUp() {
|
||||||
DAWN_SUPPRESS_TEST_IF(IsD3D12() && IsWARP());
|
DAWN_SUPPRESS_TEST_IF(IsD3D12() && IsWARP());
|
||||||
|
|
||||||
// TODO(crbug.com/dawn/945): Generation via SPIRV-Cross fails
|
// TODO(crbug.com/dawn/945): Generation via SPIRV-Cross fails
|
||||||
DAWN_SUPPRESS_TEST_IF(IsOpenGL() || !HasToggleEnabled("use_tint_generator"));
|
DAWN_SUPPRESS_TEST_IF(IsOpenGL());
|
||||||
|
|
||||||
const size_t dataASize = mDimAOuter * mDimInner;
|
const size_t dataASize = mDimAOuter * mDimInner;
|
||||||
std::vector<float> dataA(dataASize);
|
std::vector<float> dataA(dataASize);
|
||||||
|
|
|
@ -2426,7 +2426,7 @@ TEST_F(SamplerTypeBindingTest, ShaderAndBGLMatches) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Test that filtering sampler binding does not work with comparison sampler in the shader.
|
// Test that filtering sampler binding does not work with comparison sampler in the shader.
|
||||||
if (HasToggleEnabled("use_tint_generator")) {
|
{
|
||||||
wgpu::BindGroupLayout bindGroupLayout = utils::MakeBindGroupLayout(
|
wgpu::BindGroupLayout bindGroupLayout = utils::MakeBindGroupLayout(
|
||||||
device, {{0, wgpu::ShaderStage::Fragment, wgpu::SamplerBindingType::Filtering}});
|
device, {{0, wgpu::ShaderStage::Fragment, wgpu::SamplerBindingType::Filtering}});
|
||||||
|
|
||||||
|
@ -2438,7 +2438,7 @@ TEST_F(SamplerTypeBindingTest, ShaderAndBGLMatches) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Test that non-filtering sampler binding does not work with comparison sampler in the shader.
|
// Test that non-filtering sampler binding does not work with comparison sampler in the shader.
|
||||||
if (HasToggleEnabled("use_tint_generator")) {
|
{
|
||||||
wgpu::BindGroupLayout bindGroupLayout = utils::MakeBindGroupLayout(
|
wgpu::BindGroupLayout bindGroupLayout = utils::MakeBindGroupLayout(
|
||||||
device, {{0, wgpu::ShaderStage::Fragment, wgpu::SamplerBindingType::NonFiltering}});
|
device, {{0, wgpu::ShaderStage::Fragment, wgpu::SamplerBindingType::NonFiltering}});
|
||||||
|
|
||||||
|
@ -2450,7 +2450,7 @@ TEST_F(SamplerTypeBindingTest, ShaderAndBGLMatches) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Test that comparison sampler binding does not work with normal sampler in the shader.
|
// Test that comparison sampler binding does not work with normal sampler in the shader.
|
||||||
if (HasToggleEnabled("use_tint_generator")) {
|
{
|
||||||
wgpu::BindGroupLayout bindGroupLayout = utils::MakeBindGroupLayout(
|
wgpu::BindGroupLayout bindGroupLayout = utils::MakeBindGroupLayout(
|
||||||
device, {{0, wgpu::ShaderStage::Fragment, wgpu::SamplerBindingType::Comparison}});
|
device, {{0, wgpu::ShaderStage::Fragment, wgpu::SamplerBindingType::Comparison}});
|
||||||
|
|
||||||
|
@ -2532,7 +2532,7 @@ TEST_F(SamplerTypeBindingTest, ShaderAndBGLMatches) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Test that a filtering sampler cannot be used to sample an unfilterable-float texture.
|
// Test that a filtering sampler cannot be used to sample an unfilterable-float texture.
|
||||||
if (HasToggleEnabled("use_tint_generator")) {
|
{
|
||||||
wgpu::BindGroupLayout bindGroupLayout = utils::MakeBindGroupLayout(
|
wgpu::BindGroupLayout bindGroupLayout = utils::MakeBindGroupLayout(
|
||||||
device, {{0, wgpu::ShaderStage::Fragment, wgpu::SamplerBindingType::Filtering},
|
device, {{0, wgpu::ShaderStage::Fragment, wgpu::SamplerBindingType::Filtering},
|
||||||
{1, wgpu::ShaderStage::Fragment, wgpu::TextureSampleType::UnfilterableFloat}});
|
{1, wgpu::ShaderStage::Fragment, wgpu::TextureSampleType::UnfilterableFloat}});
|
||||||
|
|
|
@ -162,8 +162,6 @@ TEST_F(GetBindGroupLayoutTests, DefaultTextureSampleType) {
|
||||||
// Getting the same pointer to equivalent bind group layouts is an implementation detail of Dawn
|
// Getting the same pointer to equivalent bind group layouts is an implementation detail of Dawn
|
||||||
// Native.
|
// Native.
|
||||||
DAWN_SKIP_TEST_IF(UsesWire());
|
DAWN_SKIP_TEST_IF(UsesWire());
|
||||||
// Relies on Tint shader reflection.
|
|
||||||
DAWN_SKIP_TEST_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
wgpu::BindGroupLayout filteringBGL = utils::MakeBindGroupLayout(
|
wgpu::BindGroupLayout filteringBGL = utils::MakeBindGroupLayout(
|
||||||
device, {{0, wgpu::ShaderStage::Vertex | wgpu::ShaderStage::Fragment,
|
device, {{0, wgpu::ShaderStage::Vertex | wgpu::ShaderStage::Fragment,
|
||||||
|
@ -1082,10 +1080,7 @@ TEST_F(GetBindGroupLayoutTests, Reflection) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Test that fragment output validation is for the correct entryPoint
|
// Test that fragment output validation is for the correct entryPoint
|
||||||
// TODO(dawn:216): Re-enable when we correctly reflect which bindings are used for an entryPoint.
|
|
||||||
TEST_F(GetBindGroupLayoutTests, FromCorrectEntryPoint) {
|
TEST_F(GetBindGroupLayoutTests, FromCorrectEntryPoint) {
|
||||||
DAWN_SKIP_TEST_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
wgpu::ShaderModule module = utils::CreateShaderModule(device, R"(
|
wgpu::ShaderModule module = utils::CreateShaderModule(device, R"(
|
||||||
[[block]] struct Data {
|
[[block]] struct Data {
|
||||||
data : f32;
|
data : f32;
|
||||||
|
|
|
@ -435,8 +435,6 @@ TEST_F(ShaderModuleValidationTest, MaximumInterStageShaderComponents) {
|
||||||
|
|
||||||
// Tests that we validate workgroup size limits.
|
// Tests that we validate workgroup size limits.
|
||||||
TEST_F(ShaderModuleValidationTest, ComputeWorkgroupSizeLimits) {
|
TEST_F(ShaderModuleValidationTest, ComputeWorkgroupSizeLimits) {
|
||||||
DAWN_SKIP_TEST_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
auto MakeShaderWithWorkgroupSize = [this](uint32_t x, uint32_t y, uint32_t z) {
|
auto MakeShaderWithWorkgroupSize = [this](uint32_t x, uint32_t y, uint32_t z) {
|
||||||
std::ostringstream ss;
|
std::ostringstream ss;
|
||||||
ss << "[[stage(compute), workgroup_size(" << x << "," << y << "," << z
|
ss << "[[stage(compute), workgroup_size(" << x << "," << y << "," << z
|
||||||
|
@ -467,8 +465,6 @@ TEST_F(ShaderModuleValidationTest, ComputeWorkgroupSizeLimits) {
|
||||||
|
|
||||||
// Tests that we validate workgroup storage size limits.
|
// Tests that we validate workgroup storage size limits.
|
||||||
TEST_F(ShaderModuleValidationTest, ComputeWorkgroupStorageSizeLimits) {
|
TEST_F(ShaderModuleValidationTest, ComputeWorkgroupStorageSizeLimits) {
|
||||||
DAWN_SKIP_TEST_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
wgpu::Limits supportedLimits = GetSupportedLimits().limits;
|
wgpu::Limits supportedLimits = GetSupportedLimits().limits;
|
||||||
|
|
||||||
constexpr uint32_t kVec4Size = 16;
|
constexpr uint32_t kVec4Size = 16;
|
||||||
|
|
|
@ -63,7 +63,7 @@ void InitDawnValidationTestEnvironment(int argc, char** argv) {
|
||||||
" [--enable-toggles=toggles] [--disable-toggles=toggles]\n"
|
" [--enable-toggles=toggles] [--disable-toggles=toggles]\n"
|
||||||
" -w, --use-wire: Run the tests through the wire (defaults to no wire)\n"
|
" -w, --use-wire: Run the tests through the wire (defaults to no wire)\n"
|
||||||
" --enable-toggles: Comma-delimited list of Dawn toggles to enable.\n"
|
" --enable-toggles: Comma-delimited list of Dawn toggles to enable.\n"
|
||||||
" ex.) skip_validation,use_tint_generator,disable_robustness,turn_off_vsync\n"
|
" ex.) skip_validation,disable_robustness,turn_off_vsync\n"
|
||||||
" --disable-toggles: Comma-delimited list of Dawn toggles to disable\n";
|
" --disable-toggles: Comma-delimited list of Dawn toggles to disable\n";
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
|
@ -737,9 +737,6 @@ TEST_P(D3D12DescriptorHeapTests, EncodeReuseUBOMultipleSubmits) {
|
||||||
// Verify encoding many sampler and ubo worth of bindgroups.
|
// Verify encoding many sampler and ubo worth of bindgroups.
|
||||||
// Shader-visible heaps should switch out |kNumOfViewHeaps| times.
|
// Shader-visible heaps should switch out |kNumOfViewHeaps| times.
|
||||||
TEST_P(D3D12DescriptorHeapTests, EncodeManyUBOAndSamplers) {
|
TEST_P(D3D12DescriptorHeapTests, EncodeManyUBOAndSamplers) {
|
||||||
// TODO(crbug.com/dawn/571): HLSL emission via SPIRV-Cross produces incorrect results.
|
|
||||||
DAWN_TEST_UNSUPPORTED_IF(!HasToggleEnabled("use_tint_generator"));
|
|
||||||
|
|
||||||
DAWN_TEST_UNSUPPORTED_IF(!mD3DDevice->IsToggleEnabled(
|
DAWN_TEST_UNSUPPORTED_IF(!mD3DDevice->IsToggleEnabled(
|
||||||
dawn_native::Toggle::UseD3D12SmallShaderVisibleHeapForTesting));
|
dawn_native::Toggle::UseD3D12SmallShaderVisibleHeapForTesting));
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue