| // Copyright 2019-2021 The Khronos Group Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| // Common Valid Usage |
| // Common to vkCmdPipelineBarrier* commands |
| * [[VUID-{refpage}-pDependencies-02285]] |
| If fname:{refpage} is called within a render pass instance, the render |
| pass must: have been created with at least one slink:VkSubpassDependency |
| instance in sname:VkRenderPassCreateInfo::pname:pDependencies that |
| expresses a dependency from the current subpass to itself, with |
| <<synchronization-dependencies-scopes, synchronization scopes>> and |
| <<synchronization-dependencies-access-scopes, access scopes>> that are |
| all supersets of the scopes defined in this command |
| * [[VUID-{refpage}-bufferMemoryBarrierCount-01178]] |
| If fname:{refpage} is called within a render pass instance, it must: not |
| include any buffer memory barriers |
| * [[VUID-{refpage}-image-04073]] |
| If fname:{refpage} is called within a render pass instance, the |
| pname:image member of any image memory barrier included in this command |
| must: be an attachment used in the current subpass both as an input |
| attachment, and as either a color or depth/stencil attachment |
| * [[VUID-{refpage}-oldLayout-01181]] |
| If fname:{refpage} is called within a render pass instance, the |
| pname:oldLayout and pname:newLayout members of any image memory barrier |
| included in this command must: be equal |
| * [[VUID-{refpage}-srcQueueFamilyIndex-01182]] |
| If fname:{refpage} is called within a render pass instance, the |
| pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members of any |
| image memory barrier included in this command must: be equal |
| ifdef::VK_VERSION_1_1,VK_KHR_multiview[] |
| * [[VUID-{refpage}-dependencyFlags-01186]] |
| If fname:{refpage} is called outside of a render pass instance, |
| ename:VK_DEPENDENCY_VIEW_LOCAL_BIT must: not be included in the |
| dependency flags |
| endif::VK_VERSION_1_1,VK_KHR_multiview[] |
| ifdef::VK_KHR_dynamic_rendering[] |
| * [[VUID-{refpage}-None-06191]] |
| If fname:{refpage} is called within a render pass instance, the render |
| pass must: not have been started with flink:vkCmdBeginRenderingKHR |
| endif::VK_KHR_dynamic_rendering[] |
| // Common Valid Usage |