Function Prototype

vkMergeValidationCachesEXT

Combine the data stores of validation caches

Validation cache objects can be merged using the command:

VkResult vkMergeValidationCachesEXT(
    VkDevice device,
    VkValidationCacheEXT dstCache,
    uint32_t srcCacheCount,
    const VkValidationCacheEXT* pSrcCaches);
  • device is the logical device that owns the validation cache objects.
  • dstCache is the handle of the validation cache to merge results into.
  • srcCacheCount is the length of the pSrcCaches array.
  • pSrcCaches is a pointer to an array of validation cache handles, which will be merged into dstCache. The previous contents of dstCache are included after the merge.

The details of the merge operation are implementation-dependent, but implementations should merge the contents of the specified validation caches and prune duplicate entries.

Valid Usage

VUID-vkMergeValidationCachesEXT-dstCache-01536

dstCache must not appear in the list of source caches

Valid Usage (Implicit)

VUID-vkMergeValidationCachesEXT-pSrcCaches-parameter

pSrcCaches must be a valid pointer to an array of srcCacheCount valid VkValidationCacheEXT handles

VUID-vkMergeValidationCachesEXT-dstCache-parent

dstCache must have been created, allocated, or retrieved from device

VUID-vkMergeValidationCachesEXT-pSrcCaches-parent

Each element of pSrcCaches must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to dstCache must be externally synchronized ::