• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2019-2024 The Khronos Group Inc.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5// Common Valid Usage
6// Common to vkCmdPipelineBarrier and vkCmdWaitEvents
7  * [[VUID-{refpage}-srcAccessMask-02815]]
8    The pname:srcAccessMask member of each element of pname:pMemoryBarriers
9    must: only include access flags that are supported by one or more of the
10    pipeline stages in pname:srcStageMask, as specified in the
11    <<synchronization-access-types-supported, table of supported access
12    types>>
13  * [[VUID-{refpage}-dstAccessMask-02816]]
14    The pname:dstAccessMask member of each element of pname:pMemoryBarriers
15    must: only include access flags that are supported by one or more of the
16    pipeline stages in pname:dstStageMask, as specified in the
17    <<synchronization-access-types-supported, table of supported access
18    types>>
19  * [[VUID-{refpage}-pBufferMemoryBarriers-02817]]
20    For any element of pname:pBufferMemoryBarriers, if its
21    pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members are
22    equal, or if its pname:srcQueueFamilyIndex is the queue family index
23    that was used to create the command pool that pname:commandBuffer was
24    allocated from, then its pname:srcAccessMask member must: only contain
25    access flags that are supported by one or more of the pipeline stages in
26    pname:srcStageMask, as specified in the
27    <<synchronization-access-types-supported, table of supported access
28    types>>
29  * [[VUID-{refpage}-pBufferMemoryBarriers-02818]]
30    For any element of pname:pBufferMemoryBarriers, if its
31    pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members are
32    equal, or if its pname:dstQueueFamilyIndex is the queue family index
33    that was used to create the command pool that pname:commandBuffer was
34    allocated from, then its pname:dstAccessMask member must: only contain
35    access flags that are supported by one or more of the pipeline stages in
36    pname:dstStageMask, as specified in the
37    <<synchronization-access-types-supported, table of supported access
38    types>>
39  * [[VUID-{refpage}-pImageMemoryBarriers-02819]]
40    For any element of pname:pImageMemoryBarriers, if its
41    pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members are
42    equal, or if its pname:srcQueueFamilyIndex is the queue family index
43    that was used to create the command pool that pname:commandBuffer was
44    allocated from, then its pname:srcAccessMask member must: only contain
45    access flags that are supported by one or more of the pipeline stages in
46    pname:srcStageMask, as specified in the
47    <<synchronization-access-types-supported, table of supported access
48    types>>
49  * [[VUID-{refpage}-pImageMemoryBarriers-02820]]
50    For any element of pname:pImageMemoryBarriers, if its
51    pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members are
52    equal, or if its pname:dstQueueFamilyIndex is the queue family index
53    that was used to create the command pool that pname:commandBuffer was
54    allocated from, then its pname:dstAccessMask member must: only contain
55    access flags that are supported by one or more of the pipeline stages in
56    pname:dstStageMask, as specified in the
57    <<synchronization-access-types-supported, table of supported access
58    types>>
59// Common Valid Usage
60