tu: Don't use pipeline for bandwidth validity
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25276>
This commit is contained in:
@@ -3080,6 +3080,7 @@ tu_CmdBindPipeline(VkCommandBuffer commandBuffer,
|
|||||||
|
|
||||||
if (pipeline->bandwidth.valid)
|
if (pipeline->bandwidth.valid)
|
||||||
cmd->state.bandwidth = pipeline->bandwidth;
|
cmd->state.bandwidth = pipeline->bandwidth;
|
||||||
|
cmd->state.pipeline_bandwidth = pipeline->bandwidth.valid;
|
||||||
|
|
||||||
struct tu_cs *cs = &cmd->draw_cs;
|
struct tu_cs *cs = &cmd->draw_cs;
|
||||||
|
|
||||||
|
@@ -485,7 +485,7 @@ struct tu_cmd_state
|
|||||||
bool stencil_back_write;
|
bool stencil_back_write;
|
||||||
bool pipeline_feedback_loop_ds;
|
bool pipeline_feedback_loop_ds;
|
||||||
|
|
||||||
bool pipeline_blend_lrz;
|
bool pipeline_blend_lrz, pipeline_bandwidth;
|
||||||
uint32_t pipeline_draw_states;
|
uint32_t pipeline_draw_states;
|
||||||
|
|
||||||
/* VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT and
|
/* VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT and
|
||||||
|
@@ -3615,7 +3615,7 @@ tu_emit_draw_state(struct tu_cmd_buffer *cmd)
|
|||||||
}
|
}
|
||||||
if (EMIT_STATE(bandwidth) ||
|
if (EMIT_STATE(bandwidth) ||
|
||||||
((cmd->state.dirty & TU_CMD_DIRTY_SUBPASS) &&
|
((cmd->state.dirty & TU_CMD_DIRTY_SUBPASS) &&
|
||||||
!cmd->state.pipeline->base.bandwidth.valid))
|
!cmd->state.pipeline_bandwidth))
|
||||||
tu_calc_bandwidth(&cmd->state.bandwidth, &cmd->vk.dynamic_graphics_state.cb,
|
tu_calc_bandwidth(&cmd->state.bandwidth, &cmd->vk.dynamic_graphics_state.cb,
|
||||||
&cmd->state.vk_rp);
|
&cmd->state.vk_rp);
|
||||||
DRAW_STATE(blend_constants, VK_DYNAMIC_STATE_BLEND_CONSTANTS,
|
DRAW_STATE(blend_constants, VK_DYNAMIC_STATE_BLEND_CONSTANTS,
|
||||||
|
Reference in New Issue
Block a user