Require VK_EXT_filter_cubic for cubic filtering

Make the copy and blit tests for cubic filtering depend on
VK_EXT_filter_cubic to stop them being run on drivers supporting
VK_IMG_filter_cubic.

Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.color.*
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*
dEQP-VK.api.copy_and_blit.dedicated_allocation.blit_image.all_formats.color.*
dEQP-VK.api.copy_and_blit.dedicated_allocation.blit_image.all_formats.generate_mipmaps.*

Components: Vulkan

VK-GL-CTS issue: 2417

Change-Id: I3b2b689410603d639837bed48fa8f7e924da577c
diff --git a/external/vulkancts/modules/vulkan/api/vktApiCopiesAndBlittingTests.cpp b/external/vulkancts/modules/vulkan/api/vktApiCopiesAndBlittingTests.cpp
index e15dde2..f383a54 100644
--- a/external/vulkancts/modules/vulkan/api/vktApiCopiesAndBlittingTests.cpp
+++ b/external/vulkancts/modules/vulkan/api/vktApiCopiesAndBlittingTests.cpp
@@ -3036,9 +3036,14 @@
 			TCU_THROW(NotSupportedError, "Source format feature sampled image filter linear not supported");
 		}
 
-		if (m_params.filter == VK_FILTER_CUBIC_EXT && !(srcFormatFeatures & VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT))
+		if (m_params.filter == VK_FILTER_CUBIC_EXT)
 		{
-			TCU_THROW(NotSupportedError, "Source format feature sampled image filter cubic not supported");
+			context.requireDeviceFunctionality("VK_EXT_filter_cubic");
+
+			if (!(srcFormatFeatures & VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT))
+			{
+				TCU_THROW(NotSupportedError, "Source format feature sampled image filter cubic not supported");
+			}
 		}
 	}
 
@@ -3725,8 +3730,15 @@
 		if (m_params.filter == VK_FILTER_LINEAR && !(srcFormatProperties.optimalTilingFeatures & VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT))
 			TCU_THROW(NotSupportedError, "Source format feature sampled image filter linear not supported");
 
-		if (m_params.filter == VK_FILTER_CUBIC_EXT && !(srcFormatProperties.optimalTilingFeatures & VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT))
-			TCU_THROW(NotSupportedError, "Source format feature sampled image filter cubic not supported");
+		if (m_params.filter == VK_FILTER_CUBIC_EXT)
+		{
+			context.requireDeviceFunctionality("VK_EXT_filter_cubic");
+
+			if (!(srcFormatProperties.optimalTilingFeatures & VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT))
+			{
+				TCU_THROW(NotSupportedError, "Source format feature sampled image filter cubic not supported");
+			}
+		}
 	}
 
 private: