anv: Get rid of the descriptor_set_binding struct
We no longer need it as we have a better way to deal with dynamic offsets.
This commit is contained in:
@@ -478,8 +478,8 @@ void anv_CmdBindDescriptorSets(
|
||||
ANV_FROM_HANDLE(anv_descriptor_set, set, pDescriptorSets[i]);
|
||||
set_layout = layout->set[firstSet + i].layout;
|
||||
|
||||
if (cmd_buffer->state.descriptors[firstSet + i].set != set) {
|
||||
cmd_buffer->state.descriptors[firstSet + i].set = set;
|
||||
if (cmd_buffer->state.descriptors[firstSet + i] != set) {
|
||||
cmd_buffer->state.descriptors[firstSet + i] = set;
|
||||
cmd_buffer->state.descriptors_dirty |= set_layout->shader_stages;
|
||||
}
|
||||
|
||||
@@ -598,7 +598,7 @@ anv_cmd_buffer_emit_binding_table(struct anv_cmd_buffer *cmd_buffer,
|
||||
struct anv_pipeline_binding *binding =
|
||||
&layout->stage[stage].surface_to_descriptor[s];
|
||||
struct anv_descriptor_set *set =
|
||||
cmd_buffer->state.descriptors[binding->set].set;
|
||||
cmd_buffer->state.descriptors[binding->set];
|
||||
struct anv_descriptor *desc = &set->descriptors[binding->offset];
|
||||
|
||||
const struct anv_state *surface_state;
|
||||
@@ -654,7 +654,7 @@ anv_cmd_buffer_emit_samplers(struct anv_cmd_buffer *cmd_buffer,
|
||||
struct anv_pipeline_binding *binding =
|
||||
&layout->stage[stage].sampler_to_descriptor[s];
|
||||
struct anv_descriptor_set *set =
|
||||
cmd_buffer->state.descriptors[binding->set].set;
|
||||
cmd_buffer->state.descriptors[binding->set];
|
||||
struct anv_descriptor *desc = &set->descriptors[binding->offset];
|
||||
|
||||
if (desc->type != ANV_DESCRIPTOR_TYPE_SAMPLER)
|
||||
|
@@ -303,7 +303,7 @@ anv_cmd_buffer_save(struct anv_cmd_buffer *cmd_buffer,
|
||||
uint32_t dynamic_state)
|
||||
{
|
||||
state->old_pipeline = cmd_buffer->state.pipeline;
|
||||
state->old_descriptor_set0 = cmd_buffer->state.descriptors[0].set;
|
||||
state->old_descriptor_set0 = cmd_buffer->state.descriptors[0];
|
||||
memcpy(state->old_vertex_bindings, cmd_buffer->state.vertex_bindings,
|
||||
sizeof(state->old_vertex_bindings));
|
||||
state->dynamic_flags = dynamic_state;
|
||||
@@ -316,7 +316,7 @@ anv_cmd_buffer_restore(struct anv_cmd_buffer *cmd_buffer,
|
||||
const struct anv_saved_state *state)
|
||||
{
|
||||
cmd_buffer->state.pipeline = state->old_pipeline;
|
||||
cmd_buffer->state.descriptors[0].set = state->old_descriptor_set0;
|
||||
cmd_buffer->state.descriptors[0] = state->old_descriptor_set0;
|
||||
memcpy(cmd_buffer->state.vertex_bindings, state->old_vertex_bindings,
|
||||
sizeof(state->old_vertex_bindings));
|
||||
|
||||
|
@@ -790,11 +790,6 @@ struct anv_vertex_binding {
|
||||
VkDeviceSize offset;
|
||||
};
|
||||
|
||||
struct anv_descriptor_set_binding {
|
||||
struct anv_descriptor_set * set;
|
||||
uint32_t dynamic_offsets[128];
|
||||
};
|
||||
|
||||
struct anv_push_constants {
|
||||
/* Current allocated size of this push constants data structure.
|
||||
* Because a decent chunk of it may not be used (images on SKL, for
|
||||
@@ -883,7 +878,7 @@ struct anv_cmd_state {
|
||||
struct anv_subpass * subpass;
|
||||
uint32_t state_vf[GEN8_3DSTATE_VF_length];
|
||||
struct anv_vertex_binding vertex_bindings[MAX_VBS];
|
||||
struct anv_descriptor_set_binding descriptors[MAX_SETS];
|
||||
struct anv_descriptor_set * descriptors[MAX_SETS];
|
||||
struct anv_push_constants * push_constants[VK_SHADER_STAGE_NUM];
|
||||
struct anv_dynamic_state dynamic;
|
||||
|
||||
|
Reference in New Issue
Block a user