Vulkan: Support submitting multiple semaphores
With GL_EXT_semaphore, the client can create and submit semaphores to
synchronize with an external vulkan instance. We need to be able to
submit semaphores from both the current surface as well as the client.
In order to support glWaitSemaphoreEXT, make ContextVk hold a vector of
semaphores that will be submitted with the next batch.
In order to support glSignalSemaphoreEXT, make ContextVk::flush() build a
vector of semaphores to submit, rather than just one. Submissions that
result from a client signal operation will need to signal both the client
semaphore as well as a semaphore from the surface's semaphore chain.
Bug: angleproject:3289
Change-Id: I52b07c4c2a7bf52300d3107f028aa64585c6c4db
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1623814
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by:
Shahbaz Youssefi <syoussefi@chromium.org>
Showing
Please
register
or
sign in
to comment