From 17d58e8da46b208b97f90e9d16f9d62ab3878728 Mon Sep 17 00:00:00 2001 From: Jorg Wagner Date: Thu, 28 Sep 2017 12:41:14 +0200 Subject: [PATCH] Skip more basic subgroup tests requiring the ballot feature The check to skip certain tests happened at the wrong level and missed several _framebuffer variants. Affects: dEQP-VK.subgroups.basic.* Components: Vulkan VK-GL-CTS issue: 719 Change-Id: Ib40382f88ece0a369215be1eb62ea4e2d6df80b7 --- .../vulkan/subgroups/vktSubgroupsBasicTests.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/external/vulkancts/modules/vulkan/subgroups/vktSubgroupsBasicTests.cpp b/external/vulkancts/modules/vulkan/subgroups/vktSubgroupsBasicTests.cpp index ba540feab..2ec8698b2 100644 --- a/external/vulkancts/modules/vulkan/subgroups/vktSubgroupsBasicTests.cpp +++ b/external/vulkancts/modules/vulkan/subgroups/vktSubgroupsBasicTests.cpp @@ -1100,6 +1100,14 @@ tcu::TestStatus test(Context& context, const CaseDefinition caseDef) " is a required capability!"); } + if (OPTYPE_ELECT != caseDef.opType && VK_SHADER_STAGE_COMPUTE_BIT != caseDef.shaderStage) + { + if (!subgroups::isSubgroupFeatureSupportedForDevice(context, VK_SUBGROUP_FEATURE_BALLOT_BIT)) + { + TCU_THROW(NotSupportedError, "Subgroup basic operation non-compute stage test required that ballot operations are supported!"); + } + } + //Tests which don't use the SSBO if(caseDef.noSSBO) { @@ -1178,14 +1186,6 @@ tcu::TestStatus test(Context& context, const CaseDefinition caseDef) TCU_THROW(NotSupportedError, "Subgroup basic operation require that the fragment stage be able to write to SSBOs!"); } - if (OPTYPE_ELECT != caseDef.opType) - { - if (!subgroups::isSubgroupFeatureSupportedForDevice(context, VK_SUBGROUP_FEATURE_BALLOT_BIT)) - { - TCU_THROW(NotSupportedError, "Subgroup basic operation fragment stage test required that ballot operations are supported!"); - } - } - if (OPTYPE_ELECT == caseDef.opType) { subgroups::SSBOData inputData; -- 2.34.1