Revert "[vulkan] create resources with requirements (guest)"
This reverts commit d3064505bf3d715c557cad28d23e6cc9ee13de81.
Reason for revert: Actual vulkan apps not working
Change-Id: I5fe8e8e3811987220cb9d8ec9e0caedd1290128f
diff --git a/system/OpenglSystemCommon/EmulatorFeatureInfo.h b/system/OpenglSystemCommon/EmulatorFeatureInfo.h
index b2add4a..d3228f5 100644
--- a/system/OpenglSystemCommon/EmulatorFeatureInfo.h
+++ b/system/OpenglSystemCommon/EmulatorFeatureInfo.h
@@ -82,9 +82,6 @@
// Vulkan null optional strings
static const char kVulkanNullOptionalStrings[] = "ANDROID_EMU_vulkan_null_optional_strings";
-// Vulkan create resources with requirements
-static const char kVulkanCreateResourcesWithRequirements[] = "ANDROID_EMU_vulkan_create_resources_with_requirements";
-
// Struct describing available emulator features
struct EmulatorFeatureInfo {
@@ -96,8 +93,7 @@
hasDirectMem(false),
hasVulkan(false),
hasDeferredVulkanCommands(false),
- hasVulkanNullOptionalStrings(false),
- hasVulkanCreateResourcesWithRequirements(false) { }
+ hasVulkanNullOptionalStrings(false) { }
SyncImpl syncImpl;
DmaImpl dmaImpl;
@@ -107,7 +103,6 @@
bool hasVulkan;
bool hasDeferredVulkanCommands;
bool hasVulkanNullOptionalStrings;
- bool hasVulkanCreateResourcesWithRequirements;
};
#endif // __COMMON_EMULATOR_FEATURE_INFO_H
diff --git a/system/OpenglSystemCommon/HostConnection.cpp b/system/OpenglSystemCommon/HostConnection.cpp
index cfe31b5..392b7c6 100644
--- a/system/OpenglSystemCommon/HostConnection.cpp
+++ b/system/OpenglSystemCommon/HostConnection.cpp
@@ -294,7 +294,6 @@
queryAndSetVulkanSupport(m_rcEnc);
queryAndSetDeferredVulkanCommandsSupport(m_rcEnc);
queryAndSetVulkanNullOptionalStringsSupport(m_rcEnc);
- queryAndSetVulkanCreateResourcesWithRequirementsSupport(m_rcEnc);
if (m_processPipe) {
m_processPipe->processPipeInit(m_rcEnc);
}
@@ -457,10 +456,3 @@
rcEnc->featureInfo()->hasVulkanNullOptionalStrings = true;
}
}
-
-void HostConnection::queryAndSetVulkanCreateResourcesWithRequirementsSupport(ExtendedRCEncoderContext* rcEnc) {
- std::string glExtensions = queryGLExtensions(rcEnc);
- if (glExtensions.find(kVulkanCreateResourcesWithRequirements) != std::string::npos) {
- rcEnc->featureInfo()->hasVulkanCreateResourcesWithRequirements = true;
- }
-}
diff --git a/system/OpenglSystemCommon/HostConnection.h b/system/OpenglSystemCommon/HostConnection.h
index f79c11f..2f9f83f 100644
--- a/system/OpenglSystemCommon/HostConnection.h
+++ b/system/OpenglSystemCommon/HostConnection.h
@@ -167,7 +167,6 @@
void queryAndSetVulkanSupport(ExtendedRCEncoderContext *rcEnc);
void queryAndSetDeferredVulkanCommandsSupport(ExtendedRCEncoderContext *rcEnc);
void queryAndSetVulkanNullOptionalStringsSupport(ExtendedRCEncoderContext *rcEnc);
- void queryAndSetVulkanCreateResourcesWithRequirementsSupport(ExtendedRCEncoderContext *rcEnc);
private:
IOStream *m_stream;
diff --git a/system/vulkan/func_table.cpp b/system/vulkan/func_table.cpp
index 64427be..f0ed982 100644
--- a/system/vulkan/func_table.cpp
+++ b/system/vulkan/func_table.cpp
@@ -3844,34 +3844,6 @@
vkEnc->vkCommandBufferHostSyncGOOGLE(commandBuffer, needHostSync, sequenceNumber);
}
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-static VkResult entry_vkCreateImageWithRequirementsGOOGLE(
- VkDevice device,
- const VkImageCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkImage* pImage,
- VkMemoryRequirements* pMemoryRequirements)
-{
- AEMU_SCOPED_TRACE("vkCreateImageWithRequirementsGOOGLE");
- auto vkEnc = HostConnection::get()->vkEncoder();
- VkResult vkCreateImageWithRequirementsGOOGLE_VkResult_return = (VkResult)0;
- vkCreateImageWithRequirementsGOOGLE_VkResult_return = vkEnc->vkCreateImageWithRequirementsGOOGLE(device, pCreateInfo, pAllocator, pImage, pMemoryRequirements);
- return vkCreateImageWithRequirementsGOOGLE_VkResult_return;
-}
-static VkResult entry_vkCreateBufferWithRequirementsGOOGLE(
- VkDevice device,
- const VkBufferCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkBuffer* pBuffer,
- VkMemoryRequirements* pMemoryRequirements)
-{
- AEMU_SCOPED_TRACE("vkCreateBufferWithRequirementsGOOGLE");
- auto vkEnc = HostConnection::get()->vkEncoder();
- VkResult vkCreateBufferWithRequirementsGOOGLE_VkResult_return = (VkResult)0;
- vkCreateBufferWithRequirementsGOOGLE_VkResult_return = vkEnc->vkCreateBufferWithRequirementsGOOGLE(device, pCreateInfo, pAllocator, pBuffer, pMemoryRequirements);
- return vkCreateBufferWithRequirementsGOOGLE_VkResult_return;
-}
-#endif
void* goldfish_vulkan_get_proc_address(const char* name){
#ifdef VK_VERSION_1_0
if (!strcmp(name, "vkCreateInstance"))
@@ -5307,16 +5279,6 @@
return nullptr;
}
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
- if (!strcmp(name, "vkCreateImageWithRequirementsGOOGLE"))
- {
- return nullptr;
- }
- if (!strcmp(name, "vkCreateBufferWithRequirementsGOOGLE"))
- {
- return nullptr;
- }
-#endif
return nullptr;
}
void* goldfish_vulkan_get_instance_proc_address(VkInstance instance, const char* name){
@@ -6916,18 +6878,6 @@
return hasExt ? (void*)entry_vkCommandBufferHostSyncGOOGLE : nullptr;
}
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
- if (!strcmp(name, "vkCreateImageWithRequirementsGOOGLE"))
- {
- bool hasExt = resources->hasInstanceExtension(instance, "VK_GOOGLE_create_resources_with_requirements");
- return hasExt ? (void*)entry_vkCreateImageWithRequirementsGOOGLE : nullptr;
- }
- if (!strcmp(name, "vkCreateBufferWithRequirementsGOOGLE"))
- {
- bool hasExt = resources->hasInstanceExtension(instance, "VK_GOOGLE_create_resources_with_requirements");
- return hasExt ? (void*)entry_vkCreateBufferWithRequirementsGOOGLE : nullptr;
- }
-#endif
return nullptr;
}
void* goldfish_vulkan_get_device_proc_address(VkDevice device, const char* name){
@@ -8527,18 +8477,6 @@
return hasExt ? (void*)entry_vkCommandBufferHostSyncGOOGLE : nullptr;
}
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
- if (!strcmp(name, "vkCreateImageWithRequirementsGOOGLE"))
- {
- bool hasExt = resources->hasDeviceExtension(device, "VK_GOOGLE_create_resources_with_requirements");
- return hasExt ? (void*)entry_vkCreateImageWithRequirementsGOOGLE : nullptr;
- }
- if (!strcmp(name, "vkCreateBufferWithRequirementsGOOGLE"))
- {
- bool hasExt = resources->hasDeviceExtension(device, "VK_GOOGLE_create_resources_with_requirements");
- return hasExt ? (void*)entry_vkCreateBufferWithRequirementsGOOGLE : nullptr;
- }
-#endif
return nullptr;
}
diff --git a/system/vulkan/func_table.h b/system/vulkan/func_table.h
index 05658cf..4d0e977 100644
--- a/system/vulkan/func_table.h
+++ b/system/vulkan/func_table.h
@@ -284,8 +284,6 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
void* goldfish_vulkan_get_proc_address(const char* name);
void* goldfish_vulkan_get_instance_proc_address(VkInstance instance, const char* name);
void* goldfish_vulkan_get_device_proc_address(VkDevice device, const char* name);
diff --git a/system/vulkan_enc/ResourceTracker.cpp b/system/vulkan_enc/ResourceTracker.cpp
index a3d8861..9cd8a79 100644
--- a/system/vulkan_enc/ResourceTracker.cpp
+++ b/system/vulkan_enc/ResourceTracker.cpp
@@ -265,8 +265,6 @@
VkDeviceMemory currentBacking = VK_NULL_HANDLE;
VkDeviceSize currentBackingOffset = 0;
VkDeviceSize currentBackingSize = 0;
- bool baseRequirementsKnown = false;
- VkMemoryRequirements baseRequirements;
};
struct VkBuffer_Info {
@@ -277,8 +275,6 @@
VkDeviceMemory currentBacking = VK_NULL_HANDLE;
VkDeviceSize currentBackingOffset = 0;
VkDeviceSize currentBackingSize = 0;
- bool baseRequirementsKnown = false;
- VkMemoryRequirements baseRequirements;
};
struct VkSemaphore_Info {
@@ -615,11 +611,6 @@
return mFeatureInfo->hasDeferredVulkanCommands;
}
- bool supportsCreateResourcesWithRequirements() const {
- if (!mFeatureInfo) return false;
- return mFeatureInfo->hasVulkanCreateResourcesWithRequirements;
- }
-
int getHostInstanceExtensionIndex(const std::string& extName) const {
int i = 0;
for (const auto& prop : mHostInstanceExtensions) {
@@ -2069,10 +2060,12 @@
dedicatedReqs->requiresDedicatedAllocation = VK_TRUE;
}
- void transformImageMemoryRequirementsForGuestLocked(
+ void transformImageMemoryRequirementsForGuest(
VkImage image,
VkMemoryRequirements* reqs) {
+ AutoLock lock(mLock);
+
auto it = info_VkImage.find(image);
if (it == info_VkImage.end()) return;
@@ -2087,10 +2080,12 @@
transformExternalResourceMemoryRequirementsForGuest(reqs);
}
- void transformBufferMemoryRequirementsForGuestLocked(
+ void transformBufferMemoryRequirementsForGuest(
VkBuffer buffer,
VkMemoryRequirements* reqs) {
+ AutoLock lock(mLock);
+
auto it = info_VkBuffer.find(buffer);
if (it == info_VkBuffer.end()) return;
@@ -2243,14 +2238,7 @@
}
#endif
- VkResult res;
- VkMemoryRequirements memReqs;
-
- if (supportsCreateResourcesWithRequirements()) {
- res = enc->vkCreateImageWithRequirementsGOOGLE(device, &localCreateInfo, pAllocator, pImage, &memReqs);
- } else {
- res = enc->vkCreateImage(device, &localCreateInfo, pAllocator, pImage);
- }
+ VkResult res = enc->vkCreateImage(device, &localCreateInfo, pAllocator, pImage);
if (res != VK_SUCCESS) return res;
@@ -2265,19 +2253,10 @@
info.createInfo = *pCreateInfo;
info.createInfo.pNext = nullptr;
- if (supportsCreateResourcesWithRequirements()) {
- info.baseRequirementsKnown = true;
- }
+ if (!extImgCiPtr) return res;
- if (extImgCiPtr) {
- info.external = true;
- info.externalCreateInfo = *extImgCiPtr;
- }
-
- if (info.baseRequirementsKnown) {
- transformImageMemoryRequirementsForGuestLocked(*pImage, &memReqs);
- info.baseRequirements = memReqs;
- }
+ info.external = true;
+ info.externalCreateInfo = *extImgCiPtr;
return res;
}
@@ -2342,28 +2321,11 @@
void on_vkGetImageMemoryRequirements(
void *context, VkDevice device, VkImage image,
VkMemoryRequirements *pMemoryRequirements) {
-
- AutoLock lock(mLock);
-
- auto it = info_VkImage.find(image);
- if (it == info_VkImage.end()) return;
-
- auto& info = it->second;
-
- if (info.baseRequirementsKnown) {
- *pMemoryRequirements = info.baseRequirements;
- return;
- }
-
VkEncoder* enc = (VkEncoder*)context;
-
enc->vkGetImageMemoryRequirements(
device, image, pMemoryRequirements);
-
- transformImageMemoryRequirementsForGuestLocked(
+ transformImageMemoryRequirementsForGuest(
image, pMemoryRequirements);
- info.baseRequirementsKnown = true;
- info.baseRequirements = *pMemoryRequirements;
}
void on_vkGetImageMemoryRequirements2(
@@ -2415,14 +2377,7 @@
VkBuffer *pBuffer) {
VkEncoder* enc = (VkEncoder*)context;
- VkResult res;
- VkMemoryRequirements memReqs;
-
- if (supportsCreateResourcesWithRequirements()) {
- res = enc->vkCreateBufferWithRequirementsGOOGLE(device, pCreateInfo, pAllocator, pBuffer, &memReqs);
- } else {
- res = enc->vkCreateBuffer(device, pCreateInfo, pAllocator, pBuffer);
- }
+ VkResult res = enc->vkCreateBuffer(device, pCreateInfo, pAllocator, pBuffer);
if (res != VK_SUCCESS) return res;
@@ -2436,22 +2391,13 @@
info.createInfo = *pCreateInfo;
info.createInfo.pNext = nullptr;
- if (supportsCreateResourcesWithRequirements()) {
- info.baseRequirementsKnown = true;
- }
-
const VkExternalMemoryBufferCreateInfo* extBufCi =
vk_find_struct<VkExternalMemoryBufferCreateInfo>(pCreateInfo);
- if (extBufCi) {
- info.external = true;
- info.externalCreateInfo = *extBufCi;
- }
+ if (!extBufCi) return res;
- if (info.baseRequirementsKnown) {
- transformBufferMemoryRequirementsForGuestLocked(*pBuffer, &memReqs);
- info.baseRequirements = memReqs;
- }
+ info.external = true;
+ info.externalCreateInfo = *extBufCi;
return res;
}
@@ -2465,26 +2411,11 @@
void on_vkGetBufferMemoryRequirements(
void* context, VkDevice device, VkBuffer buffer, VkMemoryRequirements *pMemoryRequirements) {
-
- AutoLock lock(mLock);
-
- auto it = info_VkBuffer.find(buffer);
- if (it == info_VkBuffer.end()) return;
-
- auto& info = it->second;
-
- if (info.baseRequirementsKnown) {
- *pMemoryRequirements = info.baseRequirements;
- return;
- }
-
VkEncoder* enc = (VkEncoder*)context;
enc->vkGetBufferMemoryRequirements(
device, buffer, pMemoryRequirements);
- transformBufferMemoryRequirementsForGuestLocked(
+ transformBufferMemoryRequirementsForGuest(
buffer, pMemoryRequirements);
- info.baseRequirementsKnown = true;
- info.baseRequirements = *pMemoryRequirements;
}
void on_vkGetBufferMemoryRequirements2(
diff --git a/system/vulkan_enc/VkEncoder.cpp b/system/vulkan_enc/VkEncoder.cpp
index 85d7092..732bd21 100644
--- a/system/vulkan_enc/VkEncoder.cpp
+++ b/system/vulkan_enc/VkEncoder.cpp
@@ -94,11 +94,7 @@
// Assume the lock for the current encoder is held.
void registerCleanupCallback(void* handle, VkEncoder::CleanupCallback cb) {
- if (mCleanupCallbacks.end() == mCleanupCallbacks.find(handle)) {
- mCleanupCallbacks[handle] = cb;
- } else {
- return;
- }
+ mCleanupCallbacks.insert({handle, cb});
}
void unregisterCleanupCallback(void* handle) {
@@ -23100,209 +23096,5 @@
}
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-VkResult VkEncoder::vkCreateImageWithRequirementsGOOGLE(
- VkDevice device,
- const VkImageCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkImage* pImage,
- VkMemoryRequirements* pMemoryRequirements)
-{
- AutoLock encoderLock(mImpl->lock);
- AEMU_SCOPED_TRACE("vkCreateImageWithRequirementsGOOGLE encode");
- mImpl->log("start vkCreateImageWithRequirementsGOOGLE");
- auto stream = mImpl->stream();
- auto countingStream = mImpl->countingStream();
- auto resources = mImpl->resources();
- auto pool = mImpl->pool();
- stream->setHandleMapping(resources->unwrapMapping());
- VkDevice local_device;
- VkImageCreateInfo* local_pCreateInfo;
- VkAllocationCallbacks* local_pAllocator;
- local_device = device;
- local_pCreateInfo = nullptr;
- if (pCreateInfo)
- {
- local_pCreateInfo = (VkImageCreateInfo*)pool->alloc(sizeof(const VkImageCreateInfo));
- deepcopy_VkImageCreateInfo(pool, pCreateInfo, (VkImageCreateInfo*)(local_pCreateInfo));
- }
- local_pAllocator = nullptr;
- if (pAllocator)
- {
- local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
- deepcopy_VkAllocationCallbacks(pool, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
- }
- local_pAllocator = nullptr;
- if (local_pCreateInfo)
- {
- transform_tohost_VkImageCreateInfo(mImpl->resources(), (VkImageCreateInfo*)(local_pCreateInfo));
- }
- if (local_pAllocator)
- {
- transform_tohost_VkAllocationCallbacks(mImpl->resources(), (VkAllocationCallbacks*)(local_pAllocator));
- }
- countingStream->rewind();
- {
- uint64_t cgen_var_1520;
- countingStream->handleMapping()->mapHandles_VkDevice_u64(&local_device, &cgen_var_1520, 1);
- countingStream->write((uint64_t*)&cgen_var_1520, 1 * 8);
- marshal_VkImageCreateInfo(countingStream, (VkImageCreateInfo*)(local_pCreateInfo));
- // WARNING PTR CHECK
- uint64_t cgen_var_1521 = (uint64_t)(uintptr_t)local_pAllocator;
- countingStream->putBe64(cgen_var_1521);
- if (local_pAllocator)
- {
- marshal_VkAllocationCallbacks(countingStream, (VkAllocationCallbacks*)(local_pAllocator));
- }
- uint64_t cgen_var_1522;
- countingStream->handleMapping()->mapHandles_VkImage_u64(pImage, &cgen_var_1522, 1);
- countingStream->write((uint64_t*)&cgen_var_1522, 8);
- marshal_VkMemoryRequirements(countingStream, (VkMemoryRequirements*)(pMemoryRequirements));
- }
- uint32_t packetSize_vkCreateImageWithRequirementsGOOGLE = 4 + 4 + (uint32_t)countingStream->bytesWritten();
- countingStream->rewind();
- uint32_t opcode_vkCreateImageWithRequirementsGOOGLE = OP_vkCreateImageWithRequirementsGOOGLE;
- stream->write(&opcode_vkCreateImageWithRequirementsGOOGLE, sizeof(uint32_t));
- stream->write(&packetSize_vkCreateImageWithRequirementsGOOGLE, sizeof(uint32_t));
- uint64_t cgen_var_1523;
- stream->handleMapping()->mapHandles_VkDevice_u64(&local_device, &cgen_var_1523, 1);
- stream->write((uint64_t*)&cgen_var_1523, 1 * 8);
- marshal_VkImageCreateInfo(stream, (VkImageCreateInfo*)(local_pCreateInfo));
- // WARNING PTR CHECK
- uint64_t cgen_var_1524 = (uint64_t)(uintptr_t)local_pAllocator;
- stream->putBe64(cgen_var_1524);
- if (local_pAllocator)
- {
- marshal_VkAllocationCallbacks(stream, (VkAllocationCallbacks*)(local_pAllocator));
- }
- stream->unsetHandleMapping() /* emit_marshal, is handle, possibly out */;
- uint64_t cgen_var_1525;
- stream->handleMapping()->mapHandles_VkImage_u64(pImage, &cgen_var_1525, 1);
- stream->write((uint64_t*)&cgen_var_1525, 8);
- stream->setHandleMapping(resources->unwrapMapping());
- marshal_VkMemoryRequirements(stream, (VkMemoryRequirements*)(pMemoryRequirements));
- AEMU_SCOPED_TRACE("vkCreateImageWithRequirementsGOOGLE readParams");
- stream->setHandleMapping(resources->createMapping());
- uint64_t cgen_var_1526;
- stream->read((uint64_t*)&cgen_var_1526, 8);
- stream->handleMapping()->mapHandles_u64_VkImage(&cgen_var_1526, (VkImage*)pImage, 1);
- stream->unsetHandleMapping();
- unmarshal_VkMemoryRequirements(stream, (VkMemoryRequirements*)(pMemoryRequirements));
- if (pMemoryRequirements)
- {
- transform_fromhost_VkMemoryRequirements(mImpl->resources(), (VkMemoryRequirements*)(pMemoryRequirements));
- }
- AEMU_SCOPED_TRACE("vkCreateImageWithRequirementsGOOGLE returnUnmarshal");
- VkResult vkCreateImageWithRequirementsGOOGLE_VkResult_return = (VkResult)0;
- stream->read(&vkCreateImageWithRequirementsGOOGLE_VkResult_return, sizeof(VkResult));
- countingStream->clearPool();
- stream->clearPool();
- pool->freeAll();
- mImpl->log("finish vkCreateImageWithRequirementsGOOGLE");;
- return vkCreateImageWithRequirementsGOOGLE_VkResult_return;
-}
-
-VkResult VkEncoder::vkCreateBufferWithRequirementsGOOGLE(
- VkDevice device,
- const VkBufferCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkBuffer* pBuffer,
- VkMemoryRequirements* pMemoryRequirements)
-{
- AutoLock encoderLock(mImpl->lock);
- AEMU_SCOPED_TRACE("vkCreateBufferWithRequirementsGOOGLE encode");
- mImpl->log("start vkCreateBufferWithRequirementsGOOGLE");
- auto stream = mImpl->stream();
- auto countingStream = mImpl->countingStream();
- auto resources = mImpl->resources();
- auto pool = mImpl->pool();
- stream->setHandleMapping(resources->unwrapMapping());
- VkDevice local_device;
- VkBufferCreateInfo* local_pCreateInfo;
- VkAllocationCallbacks* local_pAllocator;
- local_device = device;
- local_pCreateInfo = nullptr;
- if (pCreateInfo)
- {
- local_pCreateInfo = (VkBufferCreateInfo*)pool->alloc(sizeof(const VkBufferCreateInfo));
- deepcopy_VkBufferCreateInfo(pool, pCreateInfo, (VkBufferCreateInfo*)(local_pCreateInfo));
- }
- local_pAllocator = nullptr;
- if (pAllocator)
- {
- local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
- deepcopy_VkAllocationCallbacks(pool, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
- }
- local_pAllocator = nullptr;
- if (local_pCreateInfo)
- {
- transform_tohost_VkBufferCreateInfo(mImpl->resources(), (VkBufferCreateInfo*)(local_pCreateInfo));
- }
- if (local_pAllocator)
- {
- transform_tohost_VkAllocationCallbacks(mImpl->resources(), (VkAllocationCallbacks*)(local_pAllocator));
- }
- countingStream->rewind();
- {
- uint64_t cgen_var_1527;
- countingStream->handleMapping()->mapHandles_VkDevice_u64(&local_device, &cgen_var_1527, 1);
- countingStream->write((uint64_t*)&cgen_var_1527, 1 * 8);
- marshal_VkBufferCreateInfo(countingStream, (VkBufferCreateInfo*)(local_pCreateInfo));
- // WARNING PTR CHECK
- uint64_t cgen_var_1528 = (uint64_t)(uintptr_t)local_pAllocator;
- countingStream->putBe64(cgen_var_1528);
- if (local_pAllocator)
- {
- marshal_VkAllocationCallbacks(countingStream, (VkAllocationCallbacks*)(local_pAllocator));
- }
- uint64_t cgen_var_1529;
- countingStream->handleMapping()->mapHandles_VkBuffer_u64(pBuffer, &cgen_var_1529, 1);
- countingStream->write((uint64_t*)&cgen_var_1529, 8);
- marshal_VkMemoryRequirements(countingStream, (VkMemoryRequirements*)(pMemoryRequirements));
- }
- uint32_t packetSize_vkCreateBufferWithRequirementsGOOGLE = 4 + 4 + (uint32_t)countingStream->bytesWritten();
- countingStream->rewind();
- uint32_t opcode_vkCreateBufferWithRequirementsGOOGLE = OP_vkCreateBufferWithRequirementsGOOGLE;
- stream->write(&opcode_vkCreateBufferWithRequirementsGOOGLE, sizeof(uint32_t));
- stream->write(&packetSize_vkCreateBufferWithRequirementsGOOGLE, sizeof(uint32_t));
- uint64_t cgen_var_1530;
- stream->handleMapping()->mapHandles_VkDevice_u64(&local_device, &cgen_var_1530, 1);
- stream->write((uint64_t*)&cgen_var_1530, 1 * 8);
- marshal_VkBufferCreateInfo(stream, (VkBufferCreateInfo*)(local_pCreateInfo));
- // WARNING PTR CHECK
- uint64_t cgen_var_1531 = (uint64_t)(uintptr_t)local_pAllocator;
- stream->putBe64(cgen_var_1531);
- if (local_pAllocator)
- {
- marshal_VkAllocationCallbacks(stream, (VkAllocationCallbacks*)(local_pAllocator));
- }
- stream->unsetHandleMapping() /* emit_marshal, is handle, possibly out */;
- uint64_t cgen_var_1532;
- stream->handleMapping()->mapHandles_VkBuffer_u64(pBuffer, &cgen_var_1532, 1);
- stream->write((uint64_t*)&cgen_var_1532, 8);
- stream->setHandleMapping(resources->unwrapMapping());
- marshal_VkMemoryRequirements(stream, (VkMemoryRequirements*)(pMemoryRequirements));
- AEMU_SCOPED_TRACE("vkCreateBufferWithRequirementsGOOGLE readParams");
- stream->setHandleMapping(resources->createMapping());
- uint64_t cgen_var_1533;
- stream->read((uint64_t*)&cgen_var_1533, 8);
- stream->handleMapping()->mapHandles_u64_VkBuffer(&cgen_var_1533, (VkBuffer*)pBuffer, 1);
- stream->unsetHandleMapping();
- unmarshal_VkMemoryRequirements(stream, (VkMemoryRequirements*)(pMemoryRequirements));
- if (pMemoryRequirements)
- {
- transform_fromhost_VkMemoryRequirements(mImpl->resources(), (VkMemoryRequirements*)(pMemoryRequirements));
- }
- AEMU_SCOPED_TRACE("vkCreateBufferWithRequirementsGOOGLE returnUnmarshal");
- VkResult vkCreateBufferWithRequirementsGOOGLE_VkResult_return = (VkResult)0;
- stream->read(&vkCreateBufferWithRequirementsGOOGLE_VkResult_return, sizeof(VkResult));
- countingStream->clearPool();
- stream->clearPool();
- pool->freeAll();
- mImpl->log("finish vkCreateBufferWithRequirementsGOOGLE");;
- return vkCreateBufferWithRequirementsGOOGLE_VkResult_return;
-}
-
-#endif
} // namespace goldfish_vk
diff --git a/system/vulkan_enc/VkEncoder.h b/system/vulkan_enc/VkEncoder.h
index dd2cd64..65debda 100644
--- a/system/vulkan_enc/VkEncoder.h
+++ b/system/vulkan_enc/VkEncoder.h
@@ -1793,20 +1793,6 @@
uint32_t needHostSync,
uint32_t sequenceNumber);
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
- VkResult vkCreateImageWithRequirementsGOOGLE(
- VkDevice device,
- const VkImageCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkImage* pImage,
- VkMemoryRequirements* pMemoryRequirements);
- VkResult vkCreateBufferWithRequirementsGOOGLE(
- VkDevice device,
- const VkBufferCreateInfo* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkBuffer* pBuffer,
- VkMemoryRequirements* pMemoryRequirements);
-#endif
private:
class Impl;
diff --git a/system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp b/system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp
index 1513661..5b004c0 100644
--- a/system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp
@@ -6384,8 +6384,6 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
void deepcopy_extension_struct(
Pool* pool,
const void* structExtension,
diff --git a/system/vulkan_enc/goldfish_vk_deepcopy_guest.h b/system/vulkan_enc/goldfish_vk_deepcopy_guest.h
index ca6d6dc..b367ee0 100644
--- a/system/vulkan_enc/goldfish_vk_deepcopy_guest.h
+++ b/system/vulkan_enc/goldfish_vk_deepcopy_guest.h
@@ -2026,7 +2026,5 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
} // namespace goldfish_vk
diff --git a/system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp b/system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp
index 481ce6c..c42f6e8 100644
--- a/system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp
@@ -282,8 +282,6 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
uint32_t goldfish_vk_struct_type(
const void* structExtension)
{
diff --git a/system/vulkan_enc/goldfish_vk_extension_structs_guest.h b/system/vulkan_enc/goldfish_vk_extension_structs_guest.h
index 7df1ac1..1d671f8 100644
--- a/system/vulkan_enc/goldfish_vk_extension_structs_guest.h
+++ b/system/vulkan_enc/goldfish_vk_extension_structs_guest.h
@@ -299,7 +299,5 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
} // namespace goldfish_vk
diff --git a/system/vulkan_enc/goldfish_vk_handlemap_guest.cpp b/system/vulkan_enc/goldfish_vk_handlemap_guest.cpp
index fbc6a48..7d16b31 100644
--- a/system/vulkan_enc/goldfish_vk_handlemap_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_handlemap_guest.cpp
@@ -4748,8 +4748,6 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
void handlemap_extension_struct(
VulkanHandleMapping* handlemap,
void* structExtension_out)
diff --git a/system/vulkan_enc/goldfish_vk_handlemap_guest.h b/system/vulkan_enc/goldfish_vk_handlemap_guest.h
index 911ff2f..e973064 100644
--- a/system/vulkan_enc/goldfish_vk_handlemap_guest.h
+++ b/system/vulkan_enc/goldfish_vk_handlemap_guest.h
@@ -1679,7 +1679,5 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
} // namespace goldfish_vk
diff --git a/system/vulkan_enc/goldfish_vk_marshaling_guest.cpp b/system/vulkan_enc/goldfish_vk_marshaling_guest.cpp
index 0ed32d3..96efd31 100644
--- a/system/vulkan_enc/goldfish_vk_marshaling_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_marshaling_guest.cpp
@@ -13453,8 +13453,6 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
void marshal_extension_struct(
VulkanStreamGuest* vkStream,
const void* structExtension)
@@ -16220,16 +16218,6 @@
return "OP_vkCommandBufferHostSyncGOOGLE";
}
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
- case OP_vkCreateImageWithRequirementsGOOGLE:
- {
- return "OP_vkCreateImageWithRequirementsGOOGLE";
- }
- case OP_vkCreateBufferWithRequirementsGOOGLE:
- {
- return "OP_vkCreateBufferWithRequirementsGOOGLE";
- }
-#endif
default:
{
return "OP_UNKNOWN_API_CALL";
diff --git a/system/vulkan_enc/goldfish_vk_marshaling_guest.h b/system/vulkan_enc/goldfish_vk_marshaling_guest.h
index ad7f8f3..154b7de 100644
--- a/system/vulkan_enc/goldfish_vk_marshaling_guest.h
+++ b/system/vulkan_enc/goldfish_vk_marshaling_guest.h
@@ -3390,10 +3390,6 @@
#define OP_vkResetCommandBufferAsyncGOOGLE 20323
#define OP_vkCommandBufferHostSyncGOOGLE 20324
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#define OP_vkCreateImageWithRequirementsGOOGLE 20325
-#define OP_vkCreateBufferWithRequirementsGOOGLE 20326
-#endif
const char* api_opcode_to_string(
const uint32_t opcode);
diff --git a/system/vulkan_enc/goldfish_vk_private_defs.h b/system/vulkan_enc/goldfish_vk_private_defs.h
index b180ce8..662b8f0 100644
--- a/system/vulkan_enc/goldfish_vk_private_defs.h
+++ b/system/vulkan_enc/goldfish_vk_private_defs.h
@@ -429,11 +429,6 @@
uint32_t needHostSync,
uint32_t sequenceNumber);
-#define VK_GOOGLE_create_resources_with_requirements 1
-
-typedef void (VKAPI_PTR *PFN_vkCreateImageWithRequirementsGOOGLE)(
- VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage, VkMemoryRequirements* pMemoryRequirements);
-
#ifndef VK_FUCHSIA_buffer_collection
#define VK_FUCHSIA_buffer_collection 1
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferCollectionFUCHSIA)
diff --git a/system/vulkan_enc/goldfish_vk_transform_guest.cpp b/system/vulkan_enc/goldfish_vk_transform_guest.cpp
index d06135e..aa42af7 100644
--- a/system/vulkan_enc/goldfish_vk_transform_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_transform_guest.cpp
@@ -8945,8 +8945,6 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
void transform_tohost_extension_struct(
ResourceTracker* resourceTracker,
void* structExtension_out)
diff --git a/system/vulkan_enc/goldfish_vk_transform_guest.h b/system/vulkan_enc/goldfish_vk_transform_guest.h
index 217284e..754c033 100644
--- a/system/vulkan_enc/goldfish_vk_transform_guest.h
+++ b/system/vulkan_enc/goldfish_vk_transform_guest.h
@@ -3067,7 +3067,5 @@
#endif
#ifdef VK_GOOGLE_async_command_buffers
#endif
-#ifdef VK_GOOGLE_create_resources_with_requirements
-#endif
} // namespace goldfish_vk