diff options
author | Samuel Pitoiset <[email protected]> | 2019-01-29 22:19:00 +0100 |
---|---|---|
committer | Samuel Pitoiset <[email protected]> | 2019-02-04 13:19:14 +0100 |
commit | b482c030f5ca3ac6631034a4ca7551f8f14dd2d5 (patch) | |
tree | 5712989dbf2bd0604a29b985cdad69461fd9b9c4 /src/amd/vulkan | |
parent | eaab35e5e328eec06bc5012624ee3585aa209c29 (diff) |
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 <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src/amd/vulkan')
-rw-r--r-- | src/amd/vulkan/radv_pass.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_pass.c b/src/amd/vulkan/radv_pass.c index 0a37392322f..08ea2454750 100644 --- a/src/amd/vulkan/radv_pass.c +++ b/src/amd/vulkan/radv_pass.c @@ -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; |