diff options
author | Jason Ekstrand <[email protected]> | 2019-05-17 11:33:23 -0500 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2019-06-04 17:30:51 +0000 |
commit | c2a0335bb00e5d33573568aa0e9ad30529da9925 (patch) | |
tree | 24ee24e5b9f0049bbac7fd9d3fe3336980d0533b /src/intel | |
parent | 517680547163e423732ce0d8be69ac7b2000c484 (diff) |
anv: Advertise support for VK_EXT_fragment_shader_interlock
Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
Diffstat (limited to 'src/intel')
-rw-r--r-- | src/intel/vulkan/anv_device.c | 9 | ||||
-rw-r--r-- | src/intel/vulkan/anv_extensions.py | 1 | ||||
-rw-r--r-- | src/intel/vulkan/anv_pipeline.c | 2 |
3 files changed, 12 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c index 24308193953..c78f9776433 100644 --- a/src/intel/vulkan/anv_device.c +++ b/src/intel/vulkan/anv_device.c @@ -1049,6 +1049,15 @@ void anv_GetPhysicalDeviceFeatures2( break; } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT: { + VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *features = + (VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *)ext; + features->fragmentShaderSampleInterlock = pdevice->info.gen >= 9; + features->fragmentShaderPixelInterlock = pdevice->info.gen >= 9; + features->fragmentShaderShadingRateInterlock = false; + break; + } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT: { VkPhysicalDeviceHostQueryResetFeaturesEXT *features = (VkPhysicalDeviceHostQueryResetFeaturesEXT *)ext; diff --git a/src/intel/vulkan/anv_extensions.py b/src/intel/vulkan/anv_extensions.py index 2a556556b17..8468a72ab8d 100644 --- a/src/intel/vulkan/anv_extensions.py +++ b/src/intel/vulkan/anv_extensions.py @@ -130,6 +130,7 @@ EXTENSIONS = [ Extension('VK_EXT_display_surface_counter', 1, 'VK_USE_PLATFORM_DISPLAY_KHR'), Extension('VK_EXT_external_memory_dma_buf', 1, True), Extension('VK_EXT_external_memory_host', 1, True), + Extension('VK_EXT_fragment_shader_interlock', 1, 'device->info.gen >= 9'), Extension('VK_EXT_global_priority', 1, 'device->has_context_priority'), Extension('VK_EXT_host_query_reset', 1, True), diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_pipeline.c index f244b0c991b..2a88b55a391 100644 --- a/src/intel/vulkan/anv_pipeline.c +++ b/src/intel/vulkan/anv_pipeline.c @@ -145,6 +145,8 @@ anv_shader_compile_to_nir(struct anv_device *device, .draw_parameters = true, .float16 = pdevice->info.gen >= 8, .float64 = pdevice->info.gen >= 8, + .fragment_shader_sample_interlock = pdevice->info.gen >= 9, + .fragment_shader_pixel_interlock = pdevice->info.gen >= 9, .geometry_streams = true, .image_write_without_format = true, .int8 = pdevice->info.gen >= 8, |