Allow all vkBeginCommandBuffer flags Our command buffer playback mechanism is safe for multiple inflight submissions of the same command buffer, so there is nothing special to do here. The problematic case of needing to carry some state from a primary command buffer into a secondary is already caught by the slightly later check for pInheritanceInfo. Bug: b/118619338 Change-Id: I782285fbc9127d59eeac7cbf79fea3f1952e3cde Reviewed-on: https://swiftshader-review.googlesource.com/c/25950 Tested-by: Chris Forbes <chrisforbes@google.com> Reviewed-by: Hernan Liatis <hliatis@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
diff --git a/src/Vulkan/VkCommandBuffer.cpp b/src/Vulkan/VkCommandBuffer.cpp index 7b5fe9f..e116de4 100644 --- a/src/Vulkan/VkCommandBuffer.cpp +++ b/src/Vulkan/VkCommandBuffer.cpp
@@ -553,7 +553,12 @@ { ASSERT((state != RECORDING) && (state != PENDING)); - if(!((flags == 0) || (flags == VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT)) || pInheritanceInfo) + // Nothing interesting to do based on flags. We don't have any optimizations + // to apply for ONE_TIME_SUBMIT or (lack of) SIMULTANEOUS_USE. RENDER_PASS_CONTINUE + // must also provide a non-null pInheritanceInfo, which we don't implement yet, but is caught below. + (void) flags; + + if(pInheritanceInfo) { UNIMPLEMENTED(); }