lavapipe: RM2024 extension promotions

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27296>
This commit is contained in:
Mike Blumenkrantz
2024-01-26 09:15:33 -05:00
committed by Marge Bot
parent 1c01fd0286
commit 529e7ab975
3 changed files with 14 additions and 9 deletions

View File

@@ -119,6 +119,9 @@ static const struct vk_device_extension_table lvp_device_extensions_supported =
#endif #endif
.KHR_image_format_list = true, .KHR_image_format_list = true,
.KHR_imageless_framebuffer = true, .KHR_imageless_framebuffer = true,
.KHR_index_type_uint8 = true,
.KHR_line_rasterization = true,
.KHR_load_store_op_none = true,
.KHR_maintenance1 = true, .KHR_maintenance1 = true,
.KHR_maintenance2 = true, .KHR_maintenance2 = true,
.KHR_maintenance3 = true, .KHR_maintenance3 = true,
@@ -152,6 +155,7 @@ static const struct vk_device_extension_table lvp_device_extensions_supported =
.KHR_timeline_semaphore = true, .KHR_timeline_semaphore = true,
.KHR_uniform_buffer_standard_layout = true, .KHR_uniform_buffer_standard_layout = true,
.KHR_variable_pointers = true, .KHR_variable_pointers = true,
.KHR_vertex_attribute_divisor = true,
.KHR_vulkan_memory_model = true, .KHR_vulkan_memory_model = true,
.KHR_zero_initialize_workgroup_memory = true, .KHR_zero_initialize_workgroup_memory = true,
.ARM_rasterization_order_attachment_access = true, .ARM_rasterization_order_attachment_access = true,

View File

@@ -3657,13 +3657,13 @@ static void handle_set_halfz(struct vk_cmd_queue_entry *cmd,
static void handle_set_line_rasterization_mode(struct vk_cmd_queue_entry *cmd, static void handle_set_line_rasterization_mode(struct vk_cmd_queue_entry *cmd,
struct rendering_state *state) struct rendering_state *state)
{ {
VkLineRasterizationModeEXT lineRasterizationMode = cmd->u.set_line_rasterization_mode_ext.line_rasterization_mode; VkLineRasterizationModeKHR lineRasterizationMode = cmd->u.set_line_rasterization_mode_ext.line_rasterization_mode;
/* not even going to bother trying dirty tracking on this */ /* not even going to bother trying dirty tracking on this */
state->rs_dirty = true; state->rs_dirty = true;
state->rs_state.line_smooth = lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT; state->rs_state.line_smooth = lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_KHR;
state->rs_state.line_rectangular = lineRasterizationMode != VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT;; state->rs_state.line_rectangular = lineRasterizationMode != VK_LINE_RASTERIZATION_MODE_BRESENHAM_KHR;;
state->disable_multisample = lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT || state->disable_multisample = lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_BRESENHAM_KHR ||
lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT; lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_KHR;
} }
static void handle_set_line_stipple_enable(struct vk_cmd_queue_entry *cmd, static void handle_set_line_stipple_enable(struct vk_cmd_queue_entry *cmd,
@@ -4383,6 +4383,7 @@ void lvp_add_enqueue_cmd_entrypoints(struct vk_device_dispatch_table *disp)
ENQUEUE_CMD(CmdSetStencilTestEnable) ENQUEUE_CMD(CmdSetStencilTestEnable)
ENQUEUE_CMD(CmdSetStencilOp) ENQUEUE_CMD(CmdSetStencilOp)
ENQUEUE_CMD(CmdSetLineStippleEXT) ENQUEUE_CMD(CmdSetLineStippleEXT)
ENQUEUE_CMD(CmdSetLineStippleKHR)
ENQUEUE_CMD(CmdSetDepthBiasEnable) ENQUEUE_CMD(CmdSetDepthBiasEnable)
ENQUEUE_CMD(CmdSetLogicOpEXT) ENQUEUE_CMD(CmdSetLogicOpEXT)
ENQUEUE_CMD(CmdSetPatchControlPointsEXT) ENQUEUE_CMD(CmdSetPatchControlPointsEXT)

View File

@@ -921,10 +921,10 @@ lvp_graphics_pipeline_init(struct lvp_pipeline *pipeline,
const struct vk_rasterization_state *rs = pipeline->graphics_state.rs; const struct vk_rasterization_state *rs = pipeline->graphics_state.rs;
if (rs) { if (rs) {
/* always draw bresenham if !smooth */ /* always draw bresenham if !smooth */
pipeline->line_smooth = rs->line.mode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT; pipeline->line_smooth = rs->line.mode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_KHR;
pipeline->disable_multisample = rs->line.mode == VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT || pipeline->disable_multisample = rs->line.mode == VK_LINE_RASTERIZATION_MODE_BRESENHAM_KHR ||
rs->line.mode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT; rs->line.mode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_KHR;
pipeline->line_rectangular = rs->line.mode != VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT; pipeline->line_rectangular = rs->line.mode != VK_LINE_RASTERIZATION_MODE_BRESENHAM_KHR;
} else } else
pipeline->line_rectangular = true; pipeline->line_rectangular = true;
lvp_pipeline_xfb_init(pipeline); lvp_pipeline_xfb_init(pipeline);