diff --git a/src/intel/vulkan/anv_descriptor_set.c b/src/intel/vulkan/anv_descriptor_set.c index 989d93020f1..423186da853 100644 --- a/src/intel/vulkan/anv_descriptor_set.c +++ b/src/intel/vulkan/anv_descriptor_set.c @@ -1647,12 +1647,12 @@ anv_descriptor_set_write_image_view(struct anv_device *device, if (image_view) { for (unsigned p = 0; p < image_view->n_planes; p++) { - struct anv_surface_state sstate = + const struct anv_surface_state *sstate = (desc->layout == VK_IMAGE_LAYOUT_GENERAL) ? - image_view->planes[p].general_sampler : - image_view->planes[p].optimal_sampler; + &image_view->planes[p].general_sampler : + &image_view->planes[p].optimal_sampler; desc_data[p].image = - anv_surface_state_to_handle(device->physical, sstate.state); + anv_surface_state_to_handle(device->physical, sstate->state); } } diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index c9add2d995a..8c6ead69635 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -1924,12 +1924,12 @@ emit_indirect_descriptor_binding_table_entry(struct anv_cmd_buffer *cmd_buffer, case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE: case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT: { if (desc->image_view) { - struct anv_surface_state sstate = + const struct anv_surface_state *sstate = (desc->layout == VK_IMAGE_LAYOUT_GENERAL) ? - desc->image_view->planes[binding->plane].general_sampler : - desc->image_view->planes[binding->plane].optimal_sampler; + &desc->image_view->planes[binding->plane].general_sampler : + &desc->image_view->planes[binding->plane].optimal_sampler; surface_state = - anv_bindless_state_for_binding_table(device, sstate.state); + anv_bindless_state_for_binding_table(device, sstate->state); assert(surface_state.alloc_size); } else { surface_state = anv_null_surface_state_for_binding_table(device); @@ -1939,10 +1939,10 @@ emit_indirect_descriptor_binding_table_entry(struct anv_cmd_buffer *cmd_buffer, case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE: { if (desc->image_view) { - struct anv_surface_state sstate = - desc->image_view->planes[binding->plane].storage; + const struct anv_surface_state *sstate = + &desc->image_view->planes[binding->plane].storage; surface_state = anv_bindless_state_for_binding_table( - device, sstate.state); + device, sstate->state); assert(surface_state.alloc_size); } else { surface_state =