Input attachments are clear-color aware on Sky Lake, so we can frequently sample from them with no resolves at all. However on Broadwell we still need to do a a resolve between the subpass that writes and the subpass that reads.
Fixes 16 tests on BDW: dEQP-VK.renderpass.formats.*.input.clear.store.self_dep* Signed-off-by: Samuel Iglesias Gonsálvez <[email protected]> --- src/intel/vulkan/anv_blorp.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/intel/vulkan/anv_blorp.c b/src/intel/vulkan/anv_blorp.c index 1f4fec5f35b..2fa56f49d18 100644 --- a/src/intel/vulkan/anv_blorp.c +++ b/src/intel/vulkan/anv_blorp.c @@ -1504,10 +1504,13 @@ ccs_resolve_attachment(struct anv_cmd_buffer *cmd_buffer, */ } } else if (usage & ANV_SUBPASS_USAGE_INPUT) { - /* Input attachments are clear-color aware so, at least on Sky Lake, we - * can frequently sample from them with no resolves at all. + /* Input attachments are clear-color aware on Sky Lake, so we + * can frequently sample from them with no resolves at all. However + * on Broadwell we still need to do resolves. */ - if (att_state->aux_usage != att_state->input_aux_usage) { + if (cmd_buffer->device->info.gen < 9) { + resolve_op = BLORP_FAST_CLEAR_OP_RESOLVE_FULL; + } else if (att_state->aux_usage != att_state->input_aux_usage) { assert(att_state->input_aux_usage == ISL_AUX_USAGE_NONE); resolve_op = BLORP_FAST_CLEAR_OP_RESOLVE_FULL; } else if (!att_state->clear_color_is_zero_one) { -- 2.11.0 _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
