aboutsummaryrefslogtreecommitdiff
path: root/layers/core_validation.cpp
diff options
context:
space:
mode:
authorMike Weiblen <mikew@lunarg.com>2017-03-07 22:18:27 -0700
committerMike Weiblen <mikew@lunarg.com>2017-03-14 16:34:52 -0600
commit2e1c0e79925199ef0683c1e2064ffc794f853a16 (patch)
tree78d3797db0bb0f1c3df9f9b560fbc2c1378128ce /layers/core_validation.cpp
parentaa1fb597a3c90c2a9c67f5b5333e4d19f1f0e755 (diff)
downloadusermoji-2e1c0e79925199ef0683c1e2064ffc794f853a16.tar.xz
layers: Implement VU 00303-00308
Implement Valid Usages 00303-00308 with new function ValidateBarrierLayoutToImageUsage() which verifies an ImageMemoryBarrier's old/new ImageLayouts are compatible with its Image's ImageUsageFlags. Rename ValidateImageLayouts() to ValidateBarriersToImages(). Rename some variables: - internal vars to use Google style. - vars passed verbatim from Vulkan to use Vulkan names. Fix issues revealed in layer tests due to these new checks: - 2 new Unexpected messages in VkLayerTest. - 1 failing VkPositiveTest. Update VU database for check_implemented = Y. Change-Id: I8723f99d515fbea707299b4d1fcf33a4da6b7b0b
Diffstat (limited to 'layers/core_validation.cpp')
-rw-r--r--layers/core_validation.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp
index 17f0b201..f64a4b74 100644
--- a/layers/core_validation.cpp
+++ b/layers/core_validation.cpp
@@ -8386,7 +8386,8 @@ VKAPI_ATTR void VKAPI_CALL CmdWaitEvents(VkCommandBuffer commandBuffer, uint32_t
cb_state->eventUpdates.push_back(event_update);
skip |= ValidateCmd(dev_data, cb_state, CMD_WAITEVENTS, "vkCmdWaitEvents()");
UpdateCmdBufferLastCmd(cb_state, CMD_WAITEVENTS);
- skip |= ValidateImageLayouts(dev_data, commandBuffer, imageMemoryBarrierCount, pImageMemoryBarriers);
+ skip |=
+ ValidateBarriersToImages(dev_data, commandBuffer, imageMemoryBarrierCount, pImageMemoryBarriers, "vkCmdWaitEvents()");
if (!skip) {
TransitionImageLayouts(dev_data, commandBuffer, imageMemoryBarrierCount, pImageMemoryBarriers);
}
@@ -8414,7 +8415,8 @@ static bool PreCallValidateCmdPipelineBarrier(layer_data *device_data, GLOBAL_CB
VALIDATION_ERROR_00267);
skip |= ValidateStageMaskGsTsEnables(device_data, dstStageMask, "vkCmdPipelineBarrier()", VALIDATION_ERROR_00266,
VALIDATION_ERROR_00268);
- skip |= ValidateImageLayouts(device_data, commandBuffer, imageMemoryBarrierCount, pImageMemoryBarriers);
+ skip |= ValidateBarriersToImages(device_data, commandBuffer, imageMemoryBarrierCount, pImageMemoryBarriers,
+ "vkCmdPipelineBarrier()");
skip |= ValidateBarriers("vkCmdPipelineBarrier()", commandBuffer, memoryBarrierCount, pMemoryBarriers, bufferMemoryBarrierCount,
pBufferMemoryBarriers, imageMemoryBarrierCount, pImageMemoryBarriers);
return skip;