anv/cmd_buffer: Expose add_surface_state_reloc as an inline helper

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
This commit is contained in:
Jason Ekstrand
2016-10-19 10:29:30 -07:00
parent 858b75563f
commit e283cd549c
2 changed files with 17 additions and 15 deletions

View File

@@ -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);

View File

@@ -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,7 +737,7 @@ 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,
anv_cmd_buffer_add_surface_state_reloc(cmd_buffer, surface_state,
iview->bo, iview->offset);
} else {
/* Null render target */
@@ -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);