radv: accumulate all ingoing external dependencies to the first subpass

In case two or more subpasses declare ingoing external dependencies.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
This commit is contained in:
Samuel Pitoiset 2019-01-29 22:19:00 +01:00
parent eaab35e5e3
commit b482c030f5

View file

@ -42,6 +42,10 @@ radv_render_pass_add_subpass_dep(struct radv_render_pass *pass,
if (src == dst)
return;
/* Accumulate all ingoing external dependencies to the first subpass. */
if (src == VK_SUBPASS_EXTERNAL)
dst = 0;
if (dst == VK_SUBPASS_EXTERNAL) {
pass->end_barrier.src_stage_mask |= dep->srcStageMask;
pass->end_barrier.src_access_mask |= dep->srcAccessMask;