tu: Trivially expose VK_EXT_rasterization_order_attachment_access
It is just a renamed VK_ARM_rasterization_order_attachment_access. Zink depends on it to expose KHR_blend_equation_advanced_coherent Passes GL tests via Zink: dEQP-GLES31.functional.blend_equation_advanced.* KHR-GLES31.core.blend_equation_advanced.* Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18420>
This commit is contained in:

committed by
Marge Bot

parent
1dfc5929d1
commit
dda28a3e35
@@ -573,6 +573,7 @@ Khronos extensions that are not part of any Vulkan version:
|
||||
VK_EXT_primitives_generated_query DONE (anv, lvp, radv, tu)
|
||||
VK_EXT_provoking_vertex DONE (anv, lvp, radv, tu, v3dv, vn)
|
||||
VK_EXT_queue_family_foreign DONE (anv, radv, tu, vn)
|
||||
VK_EXT_rasterization_order_attachment_access DONE (tu)
|
||||
VK_EXT_robustness2 DONE (anv, lvp, radv, tu, vn)
|
||||
VK_EXT_sample_locations DONE (anv, radv/gfx9-, tu/a650)
|
||||
VK_EXT_shader_atomic_float DONE (anv, radv)
|
||||
|
@@ -214,6 +214,7 @@ get_device_extensions(const struct tu_physical_device *device,
|
||||
.EXT_pipeline_creation_cache_control = true,
|
||||
.EXT_vertex_input_dynamic_state = true,
|
||||
.EXT_attachment_feedback_loop_layout = true,
|
||||
.EXT_rasterization_order_attachment_access = true,
|
||||
#ifndef TU_USE_KGSL
|
||||
.EXT_physical_device_drm = true,
|
||||
#endif
|
||||
@@ -813,9 +814,9 @@ tu_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,
|
||||
features->primitiveTopologyPatchListRestart = false;
|
||||
break;
|
||||
}
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM: {
|
||||
VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM *features =
|
||||
(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM *)ext;
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT: {
|
||||
VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT *features =
|
||||
(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT *)ext;
|
||||
features->rasterizationOrderColorAttachmentAccess = true;
|
||||
features->rasterizationOrderDepthAttachmentAccess = true;
|
||||
features->rasterizationOrderStencilAttachmentAccess = true;
|
||||
|
@@ -836,9 +836,9 @@ tu_CreateRenderPass2(VkDevice _device,
|
||||
subpass->srgb_cntl = 0;
|
||||
|
||||
const VkSubpassDescriptionFlagBits raster_order_access_bits =
|
||||
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM |
|
||||
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM |
|
||||
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM;
|
||||
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT |
|
||||
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT |
|
||||
VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT;
|
||||
|
||||
subpass->raster_order_attachment_access = desc->flags & raster_order_access_bits;
|
||||
|
||||
|
@@ -3811,14 +3811,14 @@ tu_pipeline_builder_parse_rasterization_order(
|
||||
if (builder->use_color_attachments) {
|
||||
pipeline->raster_order_attachment_access =
|
||||
blend_info->flags &
|
||||
VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM;
|
||||
VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT;
|
||||
}
|
||||
|
||||
if (builder->depth_attachment_format != VK_FORMAT_UNDEFINED) {
|
||||
pipeline->raster_order_attachment_access |=
|
||||
ds_info->flags &
|
||||
(VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM |
|
||||
VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM);
|
||||
(VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT |
|
||||
VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT);
|
||||
}
|
||||
|
||||
if (unlikely(builder->device->physical_device->instance->debug_flags & TU_DEBUG_RAST_ORDER))
|
||||
@@ -3832,7 +3832,7 @@ tu_pipeline_builder_parse_rasterization_order(
|
||||
uint32_t gmem_prim_mode = NO_FLUSH;
|
||||
|
||||
if (pipeline->raster_order_attachment_access) {
|
||||
/* VK_ARM_rasterization_order_attachment_access:
|
||||
/* VK_EXT_rasterization_order_attachment_access:
|
||||
*
|
||||
* This extension allow access to framebuffer attachments when used as
|
||||
* both input and color attachments from one fragment to the next,
|
||||
|
Reference in New Issue
Block a user