Enable use_tint_generator by default, disable shader_float16

Float16 is not standardized in WGSL or implemented in Tint,
so remove support of the extension for now.

Bug: dawn:571, dawn:426
Change-Id: Ia26f0ddb07cabf6057c0d7db9ade547494d2cc6e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56441
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
diff --git a/src/dawn_native/Device.cpp b/src/dawn_native/Device.cpp
index ac9c51b..32c13f0 100644
--- a/src/dawn_native/Device.cpp
+++ b/src/dawn_native/Device.cpp
@@ -1336,6 +1336,7 @@
     void DeviceBase::SetDefaultToggles() {
         SetToggle(Toggle::LazyClearResourceOnFirstUse, true);
         SetToggle(Toggle::DisallowUnsafeAPIs, true);
+        SetToggle(Toggle::UseTintGenerator, true);
     }
 
     void DeviceBase::ApplyToggleOverrides(const DeviceDescriptor* deviceDescriptor) {
diff --git a/src/dawn_native/d3d12/AdapterD3D12.cpp b/src/dawn_native/d3d12/AdapterD3D12.cpp
index 89adf69..7d3d2e1 100644
--- a/src/dawn_native/d3d12/AdapterD3D12.cpp
+++ b/src/dawn_native/d3d12/AdapterD3D12.cpp
@@ -108,9 +108,6 @@
         mSupportedExtensions.EnableExtension(Extension::TextureCompressionBC);
         mSupportedExtensions.EnableExtension(Extension::PipelineStatisticsQuery);
         mSupportedExtensions.EnableExtension(Extension::TimestampQuery);
-        if (mDeviceInfo.supportsShaderFloat16 && GetBackend()->GetFunctions()->IsDXCAvailable()) {
-            mSupportedExtensions.EnableExtension(Extension::ShaderFloat16);
-        }
         mSupportedExtensions.EnableExtension(Extension::MultiPlanarFormats);
     }
 
diff --git a/src/dawn_native/d3d12/DeviceD3D12.cpp b/src/dawn_native/d3d12/DeviceD3D12.cpp
index 18149ae..fd3502d 100644
--- a/src/dawn_native/d3d12/DeviceD3D12.cpp
+++ b/src/dawn_native/d3d12/DeviceD3D12.cpp
@@ -546,7 +546,6 @@
         SetToggle(Toggle::UseD3D12RenderPass, GetDeviceInfo().supportsRenderPass);
         SetToggle(Toggle::UseD3D12ResidencyManagement, true);
         SetToggle(Toggle::UseDXC, false);
-        SetToggle(Toggle::UseTintGenerator, false);
 
 #if defined(_DEBUG)
         // Enable better shader debugging with the graphics debugging tools.
diff --git a/src/dawn_native/metal/BackendMTL.mm b/src/dawn_native/metal/BackendMTL.mm
index 04082d3..ec2b036 100644
--- a/src/dawn_native/metal/BackendMTL.mm
+++ b/src/dawn_native/metal/BackendMTL.mm
@@ -234,8 +234,6 @@
             if (@available(macOS 10.11, iOS 11.0, *)) {
                 mSupportedExtensions.EnableExtension(Extension::DepthClamping);
             }
-
-            mSupportedExtensions.EnableExtension(Extension::ShaderFloat16);
         }
 
         NSPRef<id<MTLDevice>> mDevice;
diff --git a/src/dawn_native/vulkan/AdapterVk.cpp b/src/dawn_native/vulkan/AdapterVk.cpp
index 3ad6279..2226d9a 100644
--- a/src/dawn_native/vulkan/AdapterVk.cpp
+++ b/src/dawn_native/vulkan/AdapterVk.cpp
@@ -243,14 +243,6 @@
             mSupportedExtensions.EnableExtension(Extension::TextureCompressionBC);
         }
 
-        if (mDeviceInfo.HasExt(DeviceExt::ShaderFloat16Int8) &&
-            mDeviceInfo.shaderFloat16Int8Features.shaderFloat16 == VK_TRUE &&
-            mDeviceInfo.HasExt(DeviceExt::_16BitStorage) &&
-            mDeviceInfo._16BitStorageFeatures.storageBuffer16BitAccess == VK_TRUE &&
-            mDeviceInfo._16BitStorageFeatures.uniformAndStorageBuffer16BitAccess == VK_TRUE) {
-            mSupportedExtensions.EnableExtension(Extension::ShaderFloat16);
-        }
-
         if (mDeviceInfo.features.pipelineStatisticsQuery == VK_TRUE) {
             mSupportedExtensions.EnableExtension(Extension::PipelineStatisticsQuery);
         }
diff --git a/src/fuzzers/DawnWireServerAndD3D12BackendFuzzer.cpp b/src/fuzzers/DawnWireServerAndD3D12BackendFuzzer.cpp
index ae7c05a..7921136 100644
--- a/src/fuzzers/DawnWireServerAndD3D12BackendFuzzer.cpp
+++ b/src/fuzzers/DawnWireServerAndD3D12BackendFuzzer.cpp
@@ -34,12 +34,7 @@
 
                 if (properties.backendType == wgpu::BackendType::D3D12 &&
                     properties.adapterType == wgpu::AdapterType::CPU) {
-                    // Force usage of Tint to provide coverage of that code path until it becomes
-                    // the default.
-                    dawn_native::DeviceDescriptor desc;
-                    desc.forceEnabledToggles.push_back("use_tint_generator");
-
-                    device = wgpu::Device::Acquire(adapter.CreateDevice(&desc));
+                    device = wgpu::Device::Acquire(adapter.CreateDevice());
                     break;
                 }
             }
diff --git a/src/fuzzers/DawnWireServerAndFrontendFuzzer.cpp b/src/fuzzers/DawnWireServerAndFrontendFuzzer.cpp
index 3b1480c..f41b8cb 100644
--- a/src/fuzzers/DawnWireServerAndFrontendFuzzer.cpp
+++ b/src/fuzzers/DawnWireServerAndFrontendFuzzer.cpp
@@ -34,12 +34,7 @@
                 adapter.GetProperties(&properties);
 
                 if (properties.backendType == wgpu::BackendType::Null) {
-                    // Force usage of Tint to provide coverage of that code path until it becomes
-                    // the default.
-                    dawn_native::DeviceDescriptor desc;
-                    desc.forceEnabledToggles.push_back("use_tint_generator");
-
-                    nullDevice = wgpu::Device::Acquire(adapter.CreateDevice(&desc));
+                    nullDevice = wgpu::Device::Acquire(adapter.CreateDevice());
                     break;
                 }
             }
diff --git a/src/fuzzers/DawnWireServerAndVulkanBackendFuzzer.cpp b/src/fuzzers/DawnWireServerAndVulkanBackendFuzzer.cpp
index 0159a48..b23b132 100644
--- a/src/fuzzers/DawnWireServerAndVulkanBackendFuzzer.cpp
+++ b/src/fuzzers/DawnWireServerAndVulkanBackendFuzzer.cpp
@@ -34,12 +34,7 @@
 
                 if (properties.backendType == wgpu::BackendType::Vulkan &&
                     properties.adapterType == wgpu::AdapterType::CPU) {
-                    // Force usage of Tint to provide coverage of that code path until it becomes
-                    // the default.
-                    dawn_native::DeviceDescriptor desc;
-                    desc.forceEnabledToggles.push_back("use_tint_generator");
-
-                    device = wgpu::Device::Acquire(adapter.CreateDevice(&desc));
+                    device = wgpu::Device::Acquire(adapter.CreateDevice());
                     break;
                 }
             }
diff --git a/src/tests/end2end/DepthStencilLoadOpTests.cpp b/src/tests/end2end/DepthStencilLoadOpTests.cpp
index 3a3981f..be89597 100644
--- a/src/tests/end2end/DepthStencilLoadOpTests.cpp
+++ b/src/tests/end2end/DepthStencilLoadOpTests.cpp
@@ -61,10 +61,6 @@
         void SetUp() override {
             DawnTestWithParams<DepthStencilLoadOpTestParams>::SetUp();
 
-            // TODO(crbug.com/tint/827): HLSL writer produces invalid code.
-            DAWN_SUPPRESS_TEST_IF(IsD3D12() && HasToggleEnabled("use_tint_generator") &&
-                                  GetParam().mCheck == Check::SampleDepth);
-
             // Readback of Depth/Stencil textures not fully supported on GL right now.
             // Also depends on glTextureView which is not supported on ES.
             DAWN_SUPPRESS_TEST_IF(IsOpenGL() || IsOpenGLES());
diff --git a/src/tests/end2end/NonzeroTextureCreationTests.cpp b/src/tests/end2end/NonzeroTextureCreationTests.cpp
index 5db236e..0274631 100644
--- a/src/tests/end2end/NonzeroTextureCreationTests.cpp
+++ b/src/tests/end2end/NonzeroTextureCreationTests.cpp
@@ -128,12 +128,6 @@
             DAWN_TEST_UNSUPPORTED_IF(GetParam().mFormat == wgpu::TextureFormat::BC1RGBAUnorm &&
                                      (IsOpenGL() || IsOpenGLES()));
 
-            // TODO(crbug.com/tint/827): HLSL writer produces invalid code.
-            DAWN_SUPPRESS_TEST_IF(HasToggleEnabled("use_tint_generator") &&
-                                  GetParam().mFormat == wgpu::TextureFormat::Depth24PlusStencil8 &&
-                                  GetParam().mAspect == wgpu::TextureAspect::DepthOnly &&
-                                  IsD3D12());
-
             wgpu::TextureDescriptor descriptor;
             descriptor.dimension = GetParam().mDimension;
             descriptor.size.width = kSize;