Skip to content

Commit 11f8683

Browse files
committed
Deal with Vulkan 1.2 devices a bit better.
Subgroup size control is 1.3, not 1.2.
1 parent 6952f28 commit 11f8683

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

vulkan/context.cpp

+9-5
Original file line numberDiff line numberDiff line change
@@ -1315,17 +1315,21 @@ bool Context::create_device(VkPhysicalDevice gpu_, VkSurfaceKHR surface,
13151315
ADD_CHAIN(ext.storage_8bit_features, 8BIT_STORAGE_FEATURES_KHR);
13161316
enabled_extensions.push_back(VK_KHR_8BIT_STORAGE_EXTENSION_NAME);
13171317
}
1318+
}
13181319

1320+
if (ext.device_api_core_version >= VK_API_VERSION_1_3)
1321+
{
1322+
ADD_CHAIN(ext.vk13_features, VULKAN_1_3_FEATURES);
1323+
}
1324+
else
1325+
{
13191326
if (has_extension(VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME))
13201327
{
13211328
ADD_CHAIN(ext.subgroup_size_control_features, SUBGROUP_SIZE_CONTROL_FEATURES_EXT);
13221329
enabled_extensions.push_back(VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME);
13231330
}
13241331
}
13251332

1326-
if (ext.device_api_core_version >= VK_API_VERSION_1_3)
1327-
ADD_CHAIN(ext.vk13_features, VULKAN_1_3_FEATURES);
1328-
13291333
if (has_extension(VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME))
13301334
{
13311335
enabled_extensions.push_back(VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME);
@@ -1618,14 +1622,14 @@ bool Context::create_device(VkPhysicalDevice gpu_, VkSurfaceKHR surface,
16181622
{
16191623
if (has_extension(VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME))
16201624
ADD_CHAIN(driver_properties, DRIVER_PROPERTIES);
1621-
if (has_extension(VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME))
1622-
ADD_CHAIN(size_control_props, SUBGROUP_SIZE_CONTROL_PROPERTIES);
16231625
ADD_CHAIN(id_properties, ID_PROPERTIES);
16241626
ADD_CHAIN(subgroup_properties, SUBGROUP_PROPERTIES);
16251627
}
16261628

16271629
if (ext.device_api_core_version >= VK_API_VERSION_1_3)
16281630
ADD_CHAIN(ext.vk13_props, VULKAN_1_3_PROPERTIES);
1631+
else if (has_extension(VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME))
1632+
ADD_CHAIN(size_control_props, SUBGROUP_SIZE_CONTROL_PROPERTIES);
16291633

16301634
if (ext.supports_external_memory_host)
16311635
ADD_CHAIN(ext.host_memory_properties, EXTERNAL_MEMORY_HOST_PROPERTIES_EXT);

0 commit comments

Comments
 (0)