[vulkan] Take codegen for general / external memory transforms (guest)
bug: 111137294
bug: 122080810
Change-Id: I3f45e8862785f333aaa5b814b3a7d95b6ad1704f
diff --git a/system/vulkan_enc/ResourceTracker.cpp b/system/vulkan_enc/ResourceTracker.cpp
index 3cacf39..8d6b6b6 100644
--- a/system/vulkan_enc/ResourceTracker.cpp
+++ b/system/vulkan_enc/ResourceTracker.cpp
@@ -1150,34 +1150,6 @@
return mImpl->usingDirectMapping();
}
-void ResourceTracker::deviceMemoryTransform_tohost(
- VkDeviceMemory* memory, uint32_t memoryCount,
- VkDeviceSize* offset, uint32_t offsetCount,
- VkDeviceSize* size, uint32_t sizeCount,
- uint32_t* typeIndex, uint32_t typeIndexCount,
- uint32_t* typeBits, uint32_t typeBitsCount) {
- mImpl->deviceMemoryTransform_tohost(
- memory, memoryCount,
- offset, offsetCount,
- size, sizeCount,
- typeIndex, typeIndexCount,
- typeBits, typeBitsCount);
-}
-
-void ResourceTracker::deviceMemoryTransform_fromhost(
- VkDeviceMemory* memory, uint32_t memoryCount,
- VkDeviceSize* offset, uint32_t offsetCount,
- VkDeviceSize* size, uint32_t sizeCount,
- uint32_t* typeIndex, uint32_t typeIndexCount,
- uint32_t* typeBits, uint32_t typeBitsCount) {
- mImpl->deviceMemoryTransform_fromhost(
- memory, memoryCount,
- offset, offsetCount,
- size, sizeCount,
- typeIndex, typeIndexCount,
- typeBits, typeBitsCount);
-}
-
uint32_t ResourceTracker::getApiVersionFromInstance(VkInstance instance) const {
return mImpl->getApiVersionFromInstance(instance);
}
@@ -1342,4 +1314,38 @@
context, input_result, device, memory, pAddress);
}
-} // namespace goldfish_vk
+void ResourceTracker::deviceMemoryTransform_tohost(
+ VkDeviceMemory* memory, uint32_t memoryCount,
+ VkDeviceSize* offset, uint32_t offsetCount,
+ VkDeviceSize* size, uint32_t sizeCount,
+ uint32_t* typeIndex, uint32_t typeIndexCount,
+ uint32_t* typeBits, uint32_t typeBitsCount) {
+ mImpl->deviceMemoryTransform_tohost(
+ memory, memoryCount,
+ offset, offsetCount,
+ size, sizeCount,
+ typeIndex, typeIndexCount,
+ typeBits, typeBitsCount);
+}
+
+void ResourceTracker::deviceMemoryTransform_fromhost(
+ VkDeviceMemory* memory, uint32_t memoryCount,
+ VkDeviceSize* offset, uint32_t offsetCount,
+ VkDeviceSize* size, uint32_t sizeCount,
+ uint32_t* typeIndex, uint32_t typeIndexCount,
+ uint32_t* typeBits, uint32_t typeBitsCount) {
+ mImpl->deviceMemoryTransform_fromhost(
+ memory, memoryCount,
+ offset, offsetCount,
+ size, sizeCount,
+ typeIndex, typeIndexCount,
+ typeBits, typeBitsCount);
+}
+
+#define DEFINE_TRANSFORMED_TYPE_IMPL(type) \
+ void ResourceTracker::transformImpl_##type##_tohost(const type*, uint32_t) { } \
+ void ResourceTracker::transformImpl_##type##_fromhost(const type*, uint32_t) { } \
+
+LIST_TRANSFORMED_TYPES(DEFINE_TRANSFORMED_TYPE_IMPL)
+
+} // namespace goldfish_vk
\ No newline at end of file