Commit 46d3f02a by Yuly Novikov Committed by Commit Bot

Suppress dEQP.KHR_GLES31/core_vertex_attrib_binding_basicinputcase5

on Vulkan Pixel2 and SwiftShader. Ignore device and vendor in test config if we are running on SwiftShader. Bug: angleproject:5500 Change-Id: Ib07240dfe1c2ae1d6d081ffa389d041d97b22b36 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611309Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: 's avatarIan Elliott <ianelliott@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
parent ebf00703
...@@ -126,3 +126,7 @@ ...@@ -126,3 +126,7 @@
// New failures with latest dEQP roll (2020-04-28) // New failures with latest dEQP roll (2020-04-28)
4593 SWIFTSHADER : KHR-GLES31.core.nearest_edge.offset_left = FAIL 4593 SWIFTSHADER : KHR-GLES31.core.nearest_edge.offset_left = FAIL
// Started failing on SwANGLE and Pixel 2 Vulkan after clang roll
5500 SWIFTSHADER : KHR-GLES31.core.vertex_attrib_binding.basic-input-case5 = FAIL
5500 VULKAN PIXEL2ORXL : KHR-GLES31.core.vertex_attrib_binding.basic-input-case5 = FAIL
\ No newline at end of file
...@@ -537,7 +537,9 @@ inline bool IsMetal(const GPUTestConfig::API &api) ...@@ -537,7 +537,9 @@ inline bool IsMetal(const GPUTestConfig::API &api)
} // anonymous namespace } // anonymous namespace
// Load all conditions in the constructor since this data will not change during a test set. // Load all conditions in the constructor since this data will not change during a test set.
GPUTestConfig::GPUTestConfig() GPUTestConfig::GPUTestConfig() : GPUTestConfig(false) {}
GPUTestConfig::GPUTestConfig(bool isSwiftShader)
{ {
mConditions[kConditionNone] = false; mConditions[kConditionNone] = false;
mConditions[kConditionWinXP] = IsWinXP(); mConditions[kConditionWinXP] = IsWinXP();
...@@ -560,24 +562,27 @@ GPUTestConfig::GPUTestConfig() ...@@ -560,24 +562,27 @@ GPUTestConfig::GPUTestConfig()
mConditions[kConditionIOS] = IsIOS(); mConditions[kConditionIOS] = IsIOS();
mConditions[kConditionLinux] = IsLinux(); mConditions[kConditionLinux] = IsLinux();
mConditions[kConditionAndroid] = IsAndroid(); mConditions[kConditionAndroid] = IsAndroid();
mConditions[kConditionNVIDIA] = IsNVIDIA(); // HW vendors are irrelevant if we are running on SW
mConditions[kConditionAMD] = IsAMD(); mConditions[kConditionNVIDIA] = !isSwiftShader && IsNVIDIA();
mConditions[kConditionIntel] = IsIntel(); mConditions[kConditionAMD] = !isSwiftShader && IsAMD();
mConditions[kConditionVMWare] = IsVMWare(); mConditions[kConditionIntel] = !isSwiftShader && IsIntel();
mConditions[kConditionRelease] = IsRelease(); mConditions[kConditionVMWare] = !isSwiftShader && IsVMWare();
mConditions[kConditionDebug] = IsDebug(); mConditions[kConditionSwiftShader] = isSwiftShader;
mConditions[kConditionRelease] = IsRelease();
mConditions[kConditionDebug] = IsDebug();
// If no API provided, pass these conditions by default // If no API provided, pass these conditions by default
mConditions[kConditionD3D9] = true; mConditions[kConditionD3D9] = true;
mConditions[kConditionD3D11] = true; mConditions[kConditionD3D11] = true;
mConditions[kConditionGLDesktop] = true; mConditions[kConditionGLDesktop] = true;
mConditions[kConditionGLES] = true; mConditions[kConditionGLES] = true;
mConditions[kConditionVulkan] = true; mConditions[kConditionVulkan] = true;
mConditions[kConditionSwiftShader] = true; mConditions[kConditionMetal] = true;
mConditions[kConditionMetal] = true;
// Devices are irrelevent if we are running on SW
mConditions[kConditionNexus5X] = IsNexus5X(); mConditions[kConditionNexus5X] = !isSwiftShader && IsNexus5X();
mConditions[kConditionPixel2OrXL] = IsPixel2() || IsPixel2XL(); mConditions[kConditionPixel2OrXL] = !isSwiftShader && (IsPixel2() || IsPixel2XL());
mConditions[kConditionNVIDIAQuadroP400] = IsNVIDIAQuadroP400(); mConditions[kConditionNVIDIAQuadroP400] = !isSwiftShader && IsNVIDIAQuadroP400();
mConditions[kConditionPreRotation] = false; mConditions[kConditionPreRotation] = false;
mConditions[kConditionPreRotation90] = false; mConditions[kConditionPreRotation90] = false;
...@@ -586,15 +591,15 @@ GPUTestConfig::GPUTestConfig() ...@@ -586,15 +591,15 @@ GPUTestConfig::GPUTestConfig()
} }
// If the constructor is passed an API, load those conditions as well // If the constructor is passed an API, load those conditions as well
GPUTestConfig::GPUTestConfig(const API &api, uint32_t preRotation) : GPUTestConfig() GPUTestConfig::GPUTestConfig(const API &api, uint32_t preRotation)
{ : GPUTestConfig(IsSwiftShader(api))
mConditions[kConditionD3D9] = IsD3D9(api); {
mConditions[kConditionD3D11] = IsD3D11(api); mConditions[kConditionD3D9] = IsD3D9(api);
mConditions[kConditionGLDesktop] = IsGLDesktop(api); mConditions[kConditionD3D11] = IsD3D11(api);
mConditions[kConditionGLES] = IsGLES(api); mConditions[kConditionGLDesktop] = IsGLDesktop(api);
mConditions[kConditionVulkan] = IsVulkan(api); mConditions[kConditionGLES] = IsGLES(api);
mConditions[kConditionSwiftShader] = IsSwiftShader(api); mConditions[kConditionVulkan] = IsVulkan(api);
mConditions[kConditionMetal] = IsMetal(api); mConditions[kConditionMetal] = IsMetal(api);
switch (preRotation) switch (preRotation)
{ {
......
...@@ -77,6 +77,7 @@ struct GPUTestConfig ...@@ -77,6 +77,7 @@ struct GPUTestConfig
using ConditionArray = angle::BitSet<GPUTestConfig::kNumberOfConditions>; using ConditionArray = angle::BitSet<GPUTestConfig::kNumberOfConditions>;
GPUTestConfig(); GPUTestConfig();
GPUTestConfig(bool isSwiftShader);
GPUTestConfig(const API &api, uint32_t preRotation); GPUTestConfig(const API &api, uint32_t preRotation);
const GPUTestConfig::ConditionArray &getConditions() const; const GPUTestConfig::ConditionArray &getConditions() const;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment