OpenGL: Always use the Tint IR backend

Add CTS expectations for cube array tests that need be skipped by CTS
when targeting compat.

Bug: 42251044
Include-Ci-Only-Tests: true
Change-Id: I2dc19efa0ef2ee1cea99bbbf09c52c24562fd299
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/210095
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: James Price <jrprice@google.com>
diff --git a/src/dawn/native/opengl/ShaderModuleGL.cpp b/src/dawn/native/opengl/ShaderModuleGL.cpp
index 8e70ff3..d77d19f 100644
--- a/src/dawn/native/opengl/ShaderModuleGL.cpp
+++ b/src/dawn/native/opengl/ShaderModuleGL.cpp
@@ -94,7 +94,6 @@
     X(std::optional<tint::ast::transform::SubstituteOverride::Config>, substituteOverrideConfig) \
     X(LimitsForCompilationRequest, limits)                                                       \
     X(bool, disableSymbolRenaming)                                                               \
-    X(bool, useTintIR)                                                                           \
     X(std::vector<InterstageLocationAndName>, interstageVariables)                               \
     X(std::vector<std::string>, bufferBindingVariables)                                          \
     X(tint::glsl::writer::Options, tintOptions)                                                  \
@@ -480,7 +479,6 @@
     }
 
     req.disableSymbolRenaming = GetDevice()->IsToggleEnabled(Toggle::DisableSymbolRenaming);
-    req.useTintIR = GetDevice()->IsToggleEnabled(Toggle::UseTintIR);
 
     req.interstageVariables = {};
     for (size_t i = 0; i < entryPointMetaData.interStageVariables.size(); i++) {
@@ -575,18 +573,14 @@
             // TODO(crbug.com/356424898): In the long run, we want to move SingleEntryPoint to Tint,
             // but that has interactions with SubstituteOverrides which need to be handled first.
             remappedEntryPoint = "";
-            tint::Result<tint::glsl::writer::Output> result;
-            if (r.useTintIR) {
-                // Convert the AST program to an IR module.
-                auto ir = tint::wgsl::reader::ProgramToLoweredIR(program);
-                DAWN_INVALID_IF(ir != tint::Success,
-                                "An error occurred while generating Tint IR\n%s",
-                                ir.Failure().reason.Str());
 
-                result = tint::glsl::writer::Generate(ir.Get(), r.tintOptions, remappedEntryPoint);
-            } else {
-                result = tint::glsl::writer::Generate(program, r.tintOptions, remappedEntryPoint);
-            }
+            // Convert the AST program to an IR module.
+            auto ir = tint::wgsl::reader::ProgramToLoweredIR(program);
+            DAWN_INVALID_IF(ir != tint::Success, "An error occurred while generating Tint IR\n%s",
+                            ir.Failure().reason.Str());
+
+            // Generate GLSL from Tint IR.
+            auto result = tint::glsl::writer::Generate(ir.Get(), r.tintOptions, remappedEntryPoint);
             DAWN_INVALID_IF(result != tint::Success, "An error occurred while generating GLSL:\n%s",
                             result.Failure().reason.Str());
 
diff --git a/webgpu-cts/compat-expectations.txt b/webgpu-cts/compat-expectations.txt
index bc4a352..f6c67bb 100644
--- a/webgpu-cts/compat-expectations.txt
+++ b/webgpu-cts/compat-expectations.txt
@@ -2669,6 +2669,23 @@
 crbug.com/372198639 [ linux nvidia ] webgpu:api,validation,state,device_lost,destroy:importExternalTexture:sourceType="VideoFrame";awaitLost=true [ RetryOnFailure ]
 crbug.com/372198639 [ android arm ] webgpu:api,validation,state,device_lost,destroy:importExternalTexture:sourceType="VideoElement";awaitLost=false [ RetryOnFailure ]
 
+# Not valid for GLES, need to be skipped in CTS when targeting compat.
+crbug.com/dawn/372654300 webgpu:api,validation,compute_pipeline:resource_compatibility:apiResource="texture_depth_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,compute_pipeline:resource_compatibility:apiResource="texture_float_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,compute_pipeline:resource_compatibility:apiResource="texture_sint_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,compute_pipeline:resource_compatibility:apiResource="texture_uint_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,compute_pipeline:resource_compatibility:apiResource="texture_unfilterable-float_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="fragment";apiResource="texture_depth_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="fragment";apiResource="texture_float_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="fragment";apiResource="texture_sint_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="fragment";apiResource="texture_uint_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="fragment";apiResource="texture_unfilterable-float_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="vertex";apiResource="texture_depth_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="vertex";apiResource="texture_float_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="vertex";apiResource="texture_sint_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="vertex";apiResource="texture_uint_cube-array_false" [ Failure ]
+crbug.com/dawn/372654300 webgpu:api,validation,render_pipeline,resource_compatibility:resource_compatibility:stage="vertex";apiResource="texture_unfilterable-float_cube-array_false" [ Failure ]
+
 ################################################################################
 # New flakes. Please triage - will be discarded/regenerated by the next roll:
 # ##ROLLER_DISCARD_AND_REWRITE##