summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYahan Zhou <yahan@google.com>2022-04-13 22:38:29 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2022-04-13 22:38:29 +0000
commite44a75003cc32d424a970baa926d0b287dd8e628 (patch)
tree2f610a05eb1621ed1fda91466bdea34283624a69
parent9d2f185af449cdf7e40765b7c31a579212c49700 (diff)
parentd28bc25bfbefbce671bc73e7a8ad2a8863ba26fe (diff)
downloadgfxstream-protocols-e44a75003cc32d424a970baa926d0b287dd8e628.tar.gz
Add vkCmd* device extension functions am: d28bc25bfb
Original change: https://android-review.googlesource.com/c/platform/external/gfxstream-protocols/+/2062912 Change-Id: I34859d412fac92f37ba16d363ea74ebda7bc532a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--registry/vulkan/scripts/cereal/functable.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/registry/vulkan/scripts/cereal/functable.py b/registry/vulkan/scripts/cereal/functable.py
index 58aa6429..0b45edcc 100644
--- a/registry/vulkan/scripts/cereal/functable.py
+++ b/registry/vulkan/scripts/cereal/functable.py
@@ -167,11 +167,15 @@ class VulkanFuncTable(VulkanWrapperGenerator):
cgen.beginBlock()
if self.feature == "VK_VERSION_1_1":
cgen.stmt("auto resources = ResourceTracker::get()")
+ if "VkCommandBuffer" == api.parameters[0].typeName:
+ cgen.stmt("VkDevice device = resources->getDevice(commandBuffer)")
cgen.beginIf("resources->getApiVersionFromDevice(device) < VK_API_VERSION_1_1")
cgen.stmt("sOnInvalidDynamicallyCheckedCall(\"%s\", \"%s\")" % (api.name, self.feature))
cgen.endIf()
elif self.feature != "VK_VERSION_1_0":
cgen.stmt("auto resources = ResourceTracker::get()")
+ if "VkCommandBuffer" == api.parameters[0].typeName:
+ cgen.stmt("VkDevice device = resources->getDevice(commandBuffer);")
cgen.beginIf("!resources->hasDeviceExtension(device, \"%s\")" % self.feature)
cgen.stmt("sOnInvalidDynamicallyCheckedCall(\"%s\", \"%s\")" % (api.name, self.feature))
cgen.endIf()
@@ -321,4 +325,5 @@ class VulkanFuncTable(VulkanWrapperGenerator):
self.module.appendImpl(self.cgen.swapCode())
def isDeviceDispatch(self, api):
- return len(api.parameters) > 0 and "VkDevice" == api.parameters[0].typeName
+ return len(api.parameters) > 0 and (
+ "VkDevice" == api.parameters[0].typeName or "VkCommandBuffer" == api.parameters[0].typeName)