Merge vk-gl-cts/dev/VK_EXT_mutable_descriptor_type into vk-gl-cts/main
authorMatthew Netsch <quic_mnetsch@quicinc.com>
Mon, 21 Nov 2022 18:19:02 +0000 (10:19 -0800)
committerMatthew Netsch <quic_mnetsch@quicinc.com>
Mon, 21 Nov 2022 18:48:35 +0000 (10:48 -0800)
Change-Id: I122066282bff61b7e0f9877f1dd49825f3fd7ad0

1  2 
AndroidGen.mk
android/cts/main/vk-master-2022-03-01/api.txt
external/vulkancts/framework/vulkan/generated/vulkan/vkMandatoryFeatures.inl
external/vulkancts/modules/vulkan/binding_model/CMakeLists.txt
external/vulkancts/modules/vulkan/binding_model/vktBindingModelTests.cpp
external/vulkancts/scripts/src/extensions/VK_EXT_mutable_descriptor_type.json

diff --cc AndroidGen.mk
Simple merge
@@@ -1698,8 -1694,6 +1697,7 @@@ dEQP-VK.api.device_init.create_device_u
  dEQP-VK.api.device_init.create_device_unsupported_features.legacy_dithering_features_ext
  dEQP-VK.api.device_init.create_device_unsupported_features.multisampled_render_to_single_sampled_features_ext
  dEQP-VK.api.device_init.create_device_unsupported_features.pipeline_protected_access_features_ext
- dEQP-VK.api.device_init.create_device_unsupported_features.rasterization_order_attachment_access_features_ext
 +dEQP-VK.api.device_init.create_device_unsupported_features.descriptor_buffer_features_ext
  dEQP-VK.api.device_init.create_device_unsupported_features.graphics_pipeline_library_features_ext
  dEQP-VK.api.device_init.create_device_unsupported_features.descriptor_set_host_mapping_features_valve
  dEQP-VK.api.device_init.create_device_unsupported_features.shader_module_identifier_features_ext
@@@ -378,6 -348,6 +378,16 @@@ bool checkMandatoryFeatures(const vkt::
                nextPtr  = &physicalDeviceMultiviewFeatures.pNext;
        }
  
++      vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT physicalDeviceMutableDescriptorTypeFeaturesEXT;
++      deMemset(&physicalDeviceMutableDescriptorTypeFeaturesEXT, 0, sizeof(physicalDeviceMutableDescriptorTypeFeaturesEXT));
++
++      if ( isExtensionStructSupported(deviceExtensions, RequiredExtension("VK_EXT_mutable_descriptor_type")) )
++      {
++              physicalDeviceMutableDescriptorTypeFeaturesEXT.sType = getStructureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT>();
++              *nextPtr = &physicalDeviceMutableDescriptorTypeFeaturesEXT;
++              nextPtr  = &physicalDeviceMutableDescriptorTypeFeaturesEXT.pNext;
++      }
++
        vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE physicalDeviceMutableDescriptorTypeFeaturesVALVE;
        deMemset(&physicalDeviceMutableDescriptorTypeFeaturesVALVE, 0, sizeof(physicalDeviceMutableDescriptorTypeFeaturesVALVE));
  
                }
        }
  
++      if ( isExtensionStructSupported(deviceExtensions, RequiredExtension("VK_EXT_mutable_descriptor_type")) )
++      {
++              if ( physicalDeviceMutableDescriptorTypeFeaturesEXT.mutableDescriptorType == VK_FALSE )
++              {
++                      log << tcu::TestLog::Message << "Mandatory feature mutableDescriptorType not supported" << tcu::TestLog::EndMessage;
++                      result = false;
++              }
++      }
++
  #if defined(CTS_USES_VULKAN)
        if ( isExtensionStructSupported(deviceExtensions, RequiredExtension("VK_EXT_non_seamless_cube_map")) )
        {
@@@ -26,11 -26,8 +26,11 @@@ set(DEQP_VK_BINDING_MODEL_SRC
        vktBindingDescriptorUpdateASTests.hpp
        vktBindingDynamicOffsetTests.cpp
        vktBindingDynamicOffsetTests.hpp
-       vktBindingValveMutableTests.cpp
-       vktBindingValveMutableTests.hpp
+       vktBindingMutableTests.cpp
 -      vktBindingMutableTests.hpp      )
++      vktBindingMutableTests.hpp
 +      vktBindingDescriptorBufferTests.cpp
 +      vktBindingDescriptorBufferTests.hpp
 +      )
  
  PCH(DEQP_VK_BINDING_MODEL_SRCS ../pch.cpp)
  
@@@ -31,8 -31,7 +31,8 @@@
  #include "vktTestGroupUtil.hpp"
  #ifndef CTS_USES_VULKANSC
  #include "vktBindingDynamicOffsetTests.hpp"
- #include "vktBindingValveMutableTests.hpp"
+ #include "vktBindingMutableTests.hpp"
 +#include "vktBindingDescriptorBufferTests.hpp"
  #endif // CTS_USES_VULKANSC
  
  namespace vkt
@@@ -54,8 -53,7 +54,8 @@@ void createChildren (tcu::TestCaseGroup
        group->addChild(createBufferDeviceAddressTests(testCtx));
  #ifndef CTS_USES_VULKANSC
        group->addChild(createDynamicOffsetTests(testCtx));
-       group->addChild(createDescriptorValveMutableTests(testCtx));
+       group->addChild(createDescriptorMutableTests(testCtx));
 +      group->addChild(createDescriptorBufferTests(testCtx));
  #endif
  
        // \todo [2015-07-30 jarkko] .change_binding.{between_renderpasses, within_pass}
index 0000000,0000000..0aeb54d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,9 @@@
++{
++      "mandatory_features":
++      {
++              "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT":
++              [
++                      { "features": ["mutableDescriptorType"],        "requirements": ["VK_EXT_mutable_descriptor_type"] }
++              ]
++      }
++}