From: Jason Ekstrand Date: Wed, 19 Oct 2016 17:29:30 +0000 (-0700) Subject: anv/cmd_buffer: Expose add_surface_state_reloc as an inline helper X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e283cd549c4aaf12cd74d7f15ddf4bda3fb009b0;p=mesa.git anv/cmd_buffer: Expose add_surface_state_reloc as an inline helper Signed-off-by: Jason Ekstrand Reviewed-by: Topi Pohjolainen --- diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index 3b96acda4f8..fea86aa7274 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -1230,6 +1230,17 @@ struct anv_state anv_cmd_buffer_alloc_dynamic_state(struct anv_cmd_buffer *cmd_buffer, uint32_t size, uint32_t alignment); +static inline void +anv_cmd_buffer_add_surface_state_reloc(struct anv_cmd_buffer *cmd_buffer, + struct anv_state state, + struct anv_bo *bo, uint32_t offset) +{ + const struct isl_device *isl_dev = &cmd_buffer->device->isl_dev; + + anv_reloc_list_add(&cmd_buffer->surface_relocs, &cmd_buffer->pool->alloc, + state.offset + isl_dev->ss.addr_offset, bo, offset); +} + VkResult anv_cmd_buffer_new_binding_table_block(struct anv_cmd_buffer *cmd_buffer); diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index 93beb4776ee..e1352f23f8d 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -617,17 +617,6 @@ cmd_buffer_alloc_push_constants(struct anv_cmd_buffer *cmd_buffer) cmd_buffer->state.push_constants_dirty |= VK_SHADER_STAGE_ALL_GRAPHICS; } -static void -add_surface_state_reloc(struct anv_cmd_buffer *cmd_buffer, - struct anv_state state, struct anv_bo *bo, - uint32_t offset) -{ - const struct isl_device *isl_dev = &cmd_buffer->device->isl_dev; - - anv_reloc_list_add(&cmd_buffer->surface_relocs, &cmd_buffer->pool->alloc, - state.offset + isl_dev->ss.addr_offset, bo, offset); -} - static struct anv_state alloc_null_surface_state(struct anv_cmd_buffer *cmd_buffer, struct anv_framebuffer *fb) @@ -714,7 +703,8 @@ emit_binding_table(struct anv_cmd_buffer *cmd_buffer, format, bo_offset, 12, 1); bt_map[0] = surface_state.offset + state_offset; - add_surface_state_reloc(cmd_buffer, surface_state, bo, bo_offset); + anv_cmd_buffer_add_surface_state_reloc(cmd_buffer, surface_state, + bo, bo_offset); } if (map->surface_count == 0) @@ -747,8 +737,8 @@ emit_binding_table(struct anv_cmd_buffer *cmd_buffer, assert(iview->color_rt_surface_state.alloc_size); surface_state = iview->color_rt_surface_state; - add_surface_state_reloc(cmd_buffer, iview->color_rt_surface_state, - iview->bo, iview->offset); + anv_cmd_buffer_add_surface_state_reloc(cmd_buffer, surface_state, + iview->bo, iview->offset); } else { /* Null render target */ struct anv_framebuffer *fb = cmd_buffer->state.framebuffer; @@ -822,7 +812,8 @@ emit_binding_table(struct anv_cmd_buffer *cmd_buffer, } bt_map[bias + s] = surface_state.offset + state_offset; - add_surface_state_reloc(cmd_buffer, surface_state, bo, bo_offset); + anv_cmd_buffer_add_surface_state_reloc(cmd_buffer, surface_state, + bo, bo_offset); } assert(image == map->image_count);