| // Copyright (C) 2018 The Android Open Source Project |
| // Copyright (C) 2018 Google Inc. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| // Autogenerated module goldfish_vk_reserved_marshaling_guest |
| // |
| // (impl) generated by codegen/vulkan/vulkan-docs-next/scripts/genvk.py -registry |
| // codegen/vulkan/vulkan-docs-next/xml/vk.xml -registryGfxstream |
| // codegen/vulkan/vulkan-docs-next/xml/vk_gfxstream.xml cereal -o host/vulkan/cereal |
| // |
| // Please do not modify directly; |
| // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh, |
| // or directly from Python by defining: |
| // VULKAN_REGISTRY_XML_DIR : Directory containing vk.xml |
| // VULKAN_REGISTRY_SCRIPTS_DIR : Directory containing genvk.py |
| // CEREAL_OUTPUT_DIR: Where to put the generated sources. |
| // |
| // python3 $VULKAN_REGISTRY_SCRIPTS_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o |
| // $CEREAL_OUTPUT_DIR |
| // |
| |
| #include "goldfish_vk_reserved_marshaling_guest.h" |
| |
| #include <cstring> |
| |
| #include "Resources.h" |
| #include "goldfish_vk_extension_structs_guest.h" |
| #include "goldfish_vk_private_defs.h" |
| |
| namespace gfxstream { |
| namespace vk { |
| |
| void reservedmarshal_extension_struct(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const void* structExtension, uint8_t** ptr); |
| |
| void reservedunmarshal_extension_struct(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| void* structExtension_out, uint8_t** ptr); |
| |
| #ifdef VK_VERSION_1_0 |
| void reservedmarshal_VkExtent2D(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkExtent2D* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->width, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->height, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkExtent3D(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkExtent3D* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->width, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->height, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->depth, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkOffset2D(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkOffset2D* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (int32_t*)&forMarshaling->x, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| memcpy(*ptr, (int32_t*)&forMarshaling->y, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| } |
| |
| void reservedmarshal_VkOffset3D(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkOffset3D* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (int32_t*)&forMarshaling->x, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| memcpy(*ptr, (int32_t*)&forMarshaling->y, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| memcpy(*ptr, (int32_t*)&forMarshaling->z, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| } |
| |
| void reservedmarshal_VkRect2D(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRect2D* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->offset), ptr); |
| reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->extent), ptr); |
| } |
| |
| void reservedmarshal_VkBaseInStructure(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBaseInStructure* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| } |
| |
| void reservedmarshal_VkBaseOutStructure(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBaseOutStructure* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| } |
| |
| void reservedmarshal_VkBufferMemoryBarrier(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferMemoryBarrier* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkDispatchIndirectCommand(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkDispatchIndirectCommand* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->x, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->y, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->z, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDrawIndexedIndirectCommand(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkDrawIndexedIndirectCommand* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->indexCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->instanceCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->firstIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (int32_t*)&forMarshaling->vertexOffset, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->firstInstance, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDrawIndirectCommand(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDrawIndirectCommand* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->vertexCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->instanceCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->firstVertex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->firstInstance, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkImageSubresourceRange(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageSubresourceRange* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags)); |
| *ptr += sizeof(VkImageAspectFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->baseMipLevel, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->levelCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->baseArrayLayer, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkImageMemoryBarrier(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageMemoryBarrier* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| reservedmarshal_VkImageSubresourceRange( |
| vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr); |
| } |
| |
| void reservedmarshal_VkMemoryBarrier(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryBarrier* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| } |
| |
| void reservedmarshal_VkPipelineCacheHeaderVersionOne( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineCacheHeaderVersionOne* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->headerSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkPipelineCacheHeaderVersion*)&forMarshaling->headerVersion, |
| sizeof(VkPipelineCacheHeaderVersion)); |
| *ptr += sizeof(VkPipelineCacheHeaderVersion); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->vendorID, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceID, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint8_t*)forMarshaling->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_UUID_SIZE * sizeof(uint8_t); |
| } |
| |
| void reservedmarshal_VkAllocationCallbacks(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkAllocationCallbacks* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pUserData; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pUserData) { |
| memcpy(*ptr, (void*)forMarshaling->pUserData, sizeof(uint8_t)); |
| *ptr += sizeof(uint8_t); |
| } |
| uint64_t cgen_var_1 = (uint64_t)forMarshaling->pfnAllocation; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| uint64_t cgen_var_2 = (uint64_t)forMarshaling->pfnReallocation; |
| memcpy((*ptr), &cgen_var_2, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| uint64_t cgen_var_3 = (uint64_t)forMarshaling->pfnFree; |
| memcpy((*ptr), &cgen_var_3, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| uint64_t cgen_var_4 = (uint64_t)forMarshaling->pfnInternalAllocation; |
| memcpy((*ptr), &cgen_var_4, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| uint64_t cgen_var_5 = (uint64_t)forMarshaling->pfnInternalFree; |
| memcpy((*ptr), &cgen_var_5, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| } |
| |
| void reservedmarshal_VkApplicationInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkApplicationInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_NULL_OPTIONAL_STRINGS_BIT) { |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pApplicationName; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pApplicationName) { |
| { |
| uint32_t l = |
| forMarshaling->pApplicationName ? strlen(forMarshaling->pApplicationName) : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (char*)forMarshaling->pApplicationName, l); |
| *ptr += l; |
| } |
| } |
| } else { |
| { |
| uint32_t l = |
| forMarshaling->pApplicationName ? strlen(forMarshaling->pApplicationName) : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (char*)forMarshaling->pApplicationName, l); |
| *ptr += l; |
| } |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->applicationVersion, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_NULL_OPTIONAL_STRINGS_BIT) { |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pEngineName; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pEngineName) { |
| { |
| uint32_t l = forMarshaling->pEngineName ? strlen(forMarshaling->pEngineName) : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (char*)forMarshaling->pEngineName, l); |
| *ptr += l; |
| } |
| } |
| } else { |
| { |
| uint32_t l = forMarshaling->pEngineName ? strlen(forMarshaling->pEngineName) : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (char*)forMarshaling->pEngineName, l); |
| *ptr += l; |
| } |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->engineVersion, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->apiVersion, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkFormatProperties(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkFormatProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->linearTilingFeatures, |
| sizeof(VkFormatFeatureFlags)); |
| *ptr += sizeof(VkFormatFeatureFlags); |
| memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->optimalTilingFeatures, |
| sizeof(VkFormatFeatureFlags)); |
| *ptr += sizeof(VkFormatFeatureFlags); |
| memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->bufferFeatures, |
| sizeof(VkFormatFeatureFlags)); |
| *ptr += sizeof(VkFormatFeatureFlags); |
| } |
| |
| void reservedmarshal_VkImageFormatProperties(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageFormatProperties* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->maxExtent), ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxMipLevels, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxArrayLayers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampleCounts, sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxResourceSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkInstanceCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkInstanceCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkInstanceCreateFlags*)&forMarshaling->flags, sizeof(VkInstanceCreateFlags)); |
| *ptr += sizeof(VkInstanceCreateFlags); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pApplicationInfo; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pApplicationInfo) { |
| reservedmarshal_VkApplicationInfo( |
| vkStream, rootType, (const VkApplicationInfo*)(forMarshaling->pApplicationInfo), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->enabledLayerCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| { |
| uint32_t c = 0; |
| if (forMarshaling) { |
| c = forMarshaling->enabledLayerCount; |
| } |
| memcpy(*ptr, (uint32_t*)&c, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < c; ++i) { |
| uint32_t l = forMarshaling->ppEnabledLayerNames |
| ? strlen(forMarshaling->ppEnabledLayerNames[i]) |
| : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| if (l) { |
| memcpy(*ptr, (char*)(forMarshaling->ppEnabledLayerNames[i]), l); |
| *ptr += l; |
| } |
| } |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->enabledExtensionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| { |
| uint32_t c = 0; |
| if (forMarshaling) { |
| c = forMarshaling->enabledExtensionCount; |
| } |
| memcpy(*ptr, (uint32_t*)&c, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < c; ++i) { |
| uint32_t l = forMarshaling->ppEnabledExtensionNames |
| ? strlen(forMarshaling->ppEnabledExtensionNames[i]) |
| : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| if (l) { |
| memcpy(*ptr, (char*)(forMarshaling->ppEnabledExtensionNames[i]), l); |
| *ptr += l; |
| } |
| } |
| } |
| } |
| |
| void reservedmarshal_VkMemoryHeap(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryHeap* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkMemoryHeapFlags*)&forMarshaling->flags, sizeof(VkMemoryHeapFlags)); |
| *ptr += sizeof(VkMemoryHeapFlags); |
| } |
| |
| void reservedmarshal_VkMemoryType(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryType* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkMemoryPropertyFlags*)&forMarshaling->propertyFlags, |
| sizeof(VkMemoryPropertyFlags)); |
| *ptr += sizeof(VkMemoryPropertyFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->heapIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceFeatures(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceFeatures* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkBool32*)&forMarshaling->robustBufferAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->fullDrawIndexUint32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->imageCubeArray, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->independentBlend, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->geometryShader, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->tessellationShader, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sampleRateShading, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->dualSrcBlend, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->logicOp, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->multiDrawIndirect, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->drawIndirectFirstInstance, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthClamp, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthBiasClamp, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->fillModeNonSolid, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthBounds, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->wideLines, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->largePoints, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->alphaToOne, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->multiViewport, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->samplerAnisotropy, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionETC2, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionASTC_LDR, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionBC, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->occlusionQueryPrecise, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineStatisticsQuery, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->vertexPipelineStoresAndAtomics, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->fragmentStoresAndAtomics, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderTessellationAndGeometryPointSize, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderImageGatherExtended, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageExtendedFormats, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageMultisample, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageReadWithoutFormat, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageWriteWithoutFormat, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderClipDistance, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderCullDistance, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInt64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInt16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderResourceResidency, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderResourceMinLod, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseBinding, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidencyBuffer, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidencyImage2D, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidencyImage3D, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidency2Samples, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidency4Samples, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidency8Samples, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidency16Samples, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sparseResidencyAliased, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->variableMultisampleRate, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->inheritedQueries, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceLimits(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceLimits* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageDimension1D, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageDimension2D, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageDimension3D, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageDimensionCube, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxImageArrayLayers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTexelBufferElements, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxUniformBufferRange, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxStorageBufferRange, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPushConstantsSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxMemoryAllocationCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxSamplerAllocationCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->bufferImageGranularity, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->sparseAddressSpaceSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxBoundDescriptorSets, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorSamplers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUniformBuffers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorStorageBuffers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorSampledImages, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorStorageImages, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorInputAttachments, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageResources, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetSamplers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUniformBuffers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUniformBuffersDynamic, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetStorageBuffers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetStorageBuffersDynamic, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetSampledImages, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetStorageImages, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetInputAttachments, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexInputAttributes, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexInputBindings, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexInputAttributeOffset, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexInputBindingStride, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxVertexOutputComponents, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationGenerationLevel, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationPatchSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationControlPerVertexInputComponents, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationControlPerVertexOutputComponents, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationControlPerPatchOutputComponents, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationControlTotalOutputComponents, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationEvaluationInputComponents, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTessellationEvaluationOutputComponents, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryShaderInvocations, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryInputComponents, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryOutputComponents, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryOutputVertices, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxGeometryTotalOutputComponents, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxFragmentInputComponents, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxFragmentOutputAttachments, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxFragmentDualSrcAttachments, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxFragmentCombinedOutputResources, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxComputeSharedMemorySize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)forMarshaling->maxComputeWorkGroupCount, 3 * sizeof(uint32_t)); |
| *ptr += 3 * sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxComputeWorkGroupInvocations, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)forMarshaling->maxComputeWorkGroupSize, 3 * sizeof(uint32_t)); |
| *ptr += 3 * sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subPixelPrecisionBits, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subTexelPrecisionBits, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->mipmapPrecisionBits, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDrawIndexedIndexValue, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDrawIndirectCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (float*)&forMarshaling->maxSamplerLodBias, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->maxSamplerAnisotropy, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxViewports, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)forMarshaling->maxViewportDimensions, 2 * sizeof(uint32_t)); |
| *ptr += 2 * sizeof(uint32_t); |
| memcpy(*ptr, (float*)forMarshaling->viewportBoundsRange, 2 * sizeof(float)); |
| *ptr += 2 * sizeof(float); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewportSubPixelBits, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_0 = (uint64_t)forMarshaling->minMemoryMapAlignment; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->minTexelBufferOffsetAlignment, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->minUniformBufferOffsetAlignment, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->minStorageBufferOffsetAlignment, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (int32_t*)&forMarshaling->minTexelOffset, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTexelOffset, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (int32_t*)&forMarshaling->minTexelGatherOffset, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTexelGatherOffset, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (float*)&forMarshaling->minInterpolationOffset, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->maxInterpolationOffset, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subPixelInterpolationOffsetBits, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxFramebufferWidth, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxFramebufferHeight, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxFramebufferLayers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferColorSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferDepthSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferStencilSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferNoAttachmentsSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxColorAttachments, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampledImageColorSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampledImageIntegerSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampledImageDepthSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->sampledImageStencilSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->storageImageSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxSampleMaskWords, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->timestampComputeAndGraphics, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (float*)&forMarshaling->timestampPeriod, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxClipDistances, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxCullDistances, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxCombinedClipAndCullDistances, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->discreteQueuePriorities, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (float*)forMarshaling->pointSizeRange, 2 * sizeof(float)); |
| *ptr += 2 * sizeof(float); |
| memcpy(*ptr, (float*)forMarshaling->lineWidthRange, 2 * sizeof(float)); |
| *ptr += 2 * sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->pointSizeGranularity, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->lineWidthGranularity, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->strictLines, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->standardSampleLocations, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->optimalBufferCopyOffsetAlignment, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->optimalBufferCopyRowPitchAlignment, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->nonCoherentAtomSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceMemoryProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMemoryProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryTypeCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_TYPES; ++i) { |
| reservedmarshal_VkMemoryType(vkStream, rootType, |
| (VkMemoryType*)(forMarshaling->memoryTypes + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryHeapCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_HEAPS; ++i) { |
| reservedmarshal_VkMemoryHeap(vkStream, rootType, |
| (VkMemoryHeap*)(forMarshaling->memoryHeaps + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceSparseProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSparseProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkBool32*)&forMarshaling->residencyStandard2DBlockShape, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->residencyStandard2DMultisampleBlockShape, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->residencyStandard3DBlockShape, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->residencyAlignedMipSize, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->residencyNonResidentStrict, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceProperties(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPhysicalDeviceProperties* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->apiVersion, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->driverVersion, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->vendorID, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceID, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkPhysicalDeviceType*)&forMarshaling->deviceType, sizeof(VkPhysicalDeviceType)); |
| *ptr += sizeof(VkPhysicalDeviceType); |
| memcpy(*ptr, (char*)forMarshaling->deviceName, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE * sizeof(char)); |
| *ptr += VK_MAX_PHYSICAL_DEVICE_NAME_SIZE * sizeof(char); |
| memcpy(*ptr, (uint8_t*)forMarshaling->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_UUID_SIZE * sizeof(uint8_t); |
| reservedmarshal_VkPhysicalDeviceLimits(vkStream, rootType, |
| (VkPhysicalDeviceLimits*)(&forMarshaling->limits), ptr); |
| reservedmarshal_VkPhysicalDeviceSparseProperties( |
| vkStream, rootType, (VkPhysicalDeviceSparseProperties*)(&forMarshaling->sparseProperties), |
| ptr); |
| } |
| |
| void reservedmarshal_VkQueueFamilyProperties(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkQueueFamilyProperties* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkQueueFlags*)&forMarshaling->queueFlags, sizeof(VkQueueFlags)); |
| *ptr += sizeof(VkQueueFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->timestampValidBits, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| reservedmarshal_VkExtent3D(vkStream, rootType, |
| (VkExtent3D*)(&forMarshaling->minImageTransferGranularity), ptr); |
| } |
| |
| void reservedmarshal_VkDeviceQueueCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceQueueCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceQueueCreateFlags*)&forMarshaling->flags, |
| sizeof(VkDeviceQueueCreateFlags)); |
| *ptr += sizeof(VkDeviceQueueCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const float*)forMarshaling->pQueuePriorities, |
| forMarshaling->queueCount * sizeof(const float)); |
| *ptr += forMarshaling->queueCount * sizeof(const float); |
| } |
| |
| void reservedmarshal_VkDeviceCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceCreateFlags*)&forMarshaling->flags, sizeof(VkDeviceCreateFlags)); |
| *ptr += sizeof(VkDeviceCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueCreateInfoCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->queueCreateInfoCount; ++i) { |
| reservedmarshal_VkDeviceQueueCreateInfo( |
| vkStream, rootType, |
| (const VkDeviceQueueCreateInfo*)(forMarshaling->pQueueCreateInfos + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->enabledLayerCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| { |
| uint32_t c = 0; |
| if (forMarshaling) { |
| c = forMarshaling->enabledLayerCount; |
| } |
| memcpy(*ptr, (uint32_t*)&c, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < c; ++i) { |
| uint32_t l = forMarshaling->ppEnabledLayerNames |
| ? strlen(forMarshaling->ppEnabledLayerNames[i]) |
| : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| if (l) { |
| memcpy(*ptr, (char*)(forMarshaling->ppEnabledLayerNames[i]), l); |
| *ptr += l; |
| } |
| } |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->enabledExtensionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| { |
| uint32_t c = 0; |
| if (forMarshaling) { |
| c = forMarshaling->enabledExtensionCount; |
| } |
| memcpy(*ptr, (uint32_t*)&c, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < c; ++i) { |
| uint32_t l = forMarshaling->ppEnabledExtensionNames |
| ? strlen(forMarshaling->ppEnabledExtensionNames[i]) |
| : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| if (l) { |
| memcpy(*ptr, (char*)(forMarshaling->ppEnabledExtensionNames[i]), l); |
| *ptr += l; |
| } |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pEnabledFeatures; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pEnabledFeatures) { |
| reservedmarshal_VkPhysicalDeviceFeatures( |
| vkStream, rootType, (const VkPhysicalDeviceFeatures*)(forMarshaling->pEnabledFeatures), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkExtensionProperties(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkExtensionProperties* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (char*)forMarshaling->extensionName, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)); |
| *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->specVersion, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkLayerProperties(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkLayerProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (char*)forMarshaling->layerName, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)); |
| *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->specVersion, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->implementationVersion, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char); |
| } |
| |
| void reservedmarshal_VkSubmitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubmitInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->waitSemaphoreCount) { |
| uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->waitSemaphoreCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pWaitSemaphores[k]); |
| memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->waitSemaphoreCount; |
| } |
| memcpy(*ptr, (const VkPipelineStageFlags*)forMarshaling->pWaitDstStageMask, |
| forMarshaling->waitSemaphoreCount * sizeof(const VkPipelineStageFlags)); |
| *ptr += forMarshaling->waitSemaphoreCount * sizeof(const VkPipelineStageFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->commandBufferCount) { |
| uint8_t* cgen_var_1_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->commandBufferCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkCommandBuffer(forMarshaling->pCommandBuffers[k]); |
| memcpy(cgen_var_1_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->commandBufferCount; |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->signalSemaphoreCount) { |
| uint8_t* cgen_var_2_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->signalSemaphoreCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pSignalSemaphores[k]); |
| memcpy(cgen_var_2_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->signalSemaphoreCount; |
| } |
| } |
| |
| void reservedmarshal_VkMappedMemoryRange(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMappedMemoryRange* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkMemoryAllocateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryAllocateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->allocationSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryTypeIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkMemoryRequirements(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryRequirements* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->alignment, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryTypeBits, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkSparseMemoryBind(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSparseMemoryBind* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->resourceOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkSparseMemoryBindFlags*)&forMarshaling->flags, sizeof(VkSparseMemoryBindFlags)); |
| *ptr += sizeof(VkSparseMemoryBindFlags); |
| } |
| |
| void reservedmarshal_VkSparseBufferMemoryBindInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkSparseBufferMemoryBindInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bindCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->bindCount; ++i) { |
| reservedmarshal_VkSparseMemoryBind( |
| vkStream, rootType, (const VkSparseMemoryBind*)(forMarshaling->pBinds + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkSparseImageOpaqueMemoryBindInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSparseImageOpaqueMemoryBindInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bindCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->bindCount; ++i) { |
| reservedmarshal_VkSparseMemoryBind( |
| vkStream, rootType, (const VkSparseMemoryBind*)(forMarshaling->pBinds + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkImageSubresource(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageSubresource* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags)); |
| *ptr += sizeof(VkImageAspectFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->mipLevel, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->arrayLayer, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkSparseImageMemoryBind(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSparseImageMemoryBind* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkImageSubresource(vkStream, rootType, |
| (VkImageSubresource*)(&forMarshaling->subresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->offset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkSparseMemoryBindFlags*)&forMarshaling->flags, sizeof(VkSparseMemoryBindFlags)); |
| *ptr += sizeof(VkSparseMemoryBindFlags); |
| } |
| |
| void reservedmarshal_VkSparseImageMemoryBindInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkSparseImageMemoryBindInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bindCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->bindCount; ++i) { |
| reservedmarshal_VkSparseImageMemoryBind( |
| vkStream, rootType, (const VkSparseImageMemoryBind*)(forMarshaling->pBinds + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkBindSparseInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBindSparseInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->waitSemaphoreCount) { |
| uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->waitSemaphoreCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pWaitSemaphores[k]); |
| memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->waitSemaphoreCount; |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bufferBindCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->bufferBindCount; ++i) { |
| reservedmarshal_VkSparseBufferMemoryBindInfo( |
| vkStream, rootType, |
| (const VkSparseBufferMemoryBindInfo*)(forMarshaling->pBufferBinds + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->imageOpaqueBindCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->imageOpaqueBindCount; ++i) { |
| reservedmarshal_VkSparseImageOpaqueMemoryBindInfo( |
| vkStream, rootType, |
| (const VkSparseImageOpaqueMemoryBindInfo*)(forMarshaling->pImageOpaqueBinds + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->imageBindCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->imageBindCount; ++i) { |
| reservedmarshal_VkSparseImageMemoryBindInfo( |
| vkStream, rootType, |
| (const VkSparseImageMemoryBindInfo*)(forMarshaling->pImageBinds + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->signalSemaphoreCount) { |
| uint8_t* cgen_var_1_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->signalSemaphoreCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pSignalSemaphores[k]); |
| memcpy(cgen_var_1_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->signalSemaphoreCount; |
| } |
| } |
| |
| void reservedmarshal_VkSparseImageFormatProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSparseImageFormatProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags)); |
| *ptr += sizeof(VkImageAspectFlags); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageGranularity), |
| ptr); |
| memcpy(*ptr, (VkSparseImageFormatFlags*)&forMarshaling->flags, |
| sizeof(VkSparseImageFormatFlags)); |
| *ptr += sizeof(VkSparseImageFormatFlags); |
| } |
| |
| void reservedmarshal_VkSparseImageMemoryRequirements( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSparseImageMemoryRequirements* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkSparseImageFormatProperties( |
| vkStream, rootType, (VkSparseImageFormatProperties*)(&forMarshaling->formatProperties), |
| ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->imageMipTailFirstLod, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->imageMipTailSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->imageMipTailOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->imageMipTailStride, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkFenceCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkFenceCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkFenceCreateFlags*)&forMarshaling->flags, sizeof(VkFenceCreateFlags)); |
| *ptr += sizeof(VkFenceCreateFlags); |
| } |
| |
| void reservedmarshal_VkSemaphoreCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSemaphoreCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSemaphoreCreateFlags*)&forMarshaling->flags, sizeof(VkSemaphoreCreateFlags)); |
| *ptr += sizeof(VkSemaphoreCreateFlags); |
| } |
| |
| void reservedmarshal_VkEventCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkEventCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkEventCreateFlags*)&forMarshaling->flags, sizeof(VkEventCreateFlags)); |
| *ptr += sizeof(VkEventCreateFlags); |
| } |
| |
| void reservedmarshal_VkQueryPoolCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkQueryPoolCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkQueryPoolCreateFlags*)&forMarshaling->flags, sizeof(VkQueryPoolCreateFlags)); |
| *ptr += sizeof(VkQueryPoolCreateFlags); |
| memcpy(*ptr, (VkQueryType*)&forMarshaling->queryType, sizeof(VkQueryType)); |
| *ptr += sizeof(VkQueryType); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queryCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkQueryPipelineStatisticFlags*)&forMarshaling->pipelineStatistics, |
| sizeof(VkQueryPipelineStatisticFlags)); |
| *ptr += sizeof(VkQueryPipelineStatisticFlags); |
| } |
| |
| void reservedmarshal_VkBufferCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBufferCreateFlags*)&forMarshaling->flags, sizeof(VkBufferCreateFlags)); |
| *ptr += sizeof(VkBufferCreateFlags); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkBufferUsageFlags*)&forMarshaling->usage, sizeof(VkBufferUsageFlags)); |
| *ptr += sizeof(VkBufferUsageFlags); |
| memcpy(*ptr, (VkSharingMode*)&forMarshaling->sharingMode, sizeof(VkSharingMode)); |
| *ptr += sizeof(VkSharingMode); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndexCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pQueueFamilyIndices; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pQueueFamilyIndices) { |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pQueueFamilyIndices, |
| forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t); |
| } |
| } |
| |
| void reservedmarshal_VkBufferViewCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferViewCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBufferViewCreateFlags*)&forMarshaling->flags, sizeof(VkBufferViewCreateFlags)); |
| *ptr += sizeof(VkBufferViewCreateFlags); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->range, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkImageCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageCreateFlags*)&forMarshaling->flags, sizeof(VkImageCreateFlags)); |
| *ptr += sizeof(VkImageCreateFlags); |
| memcpy(*ptr, (VkImageType*)&forMarshaling->imageType, sizeof(VkImageType)); |
| *ptr += sizeof(VkImageType); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->mipLevels, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->arrayLayers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->samples, sizeof(VkSampleCountFlagBits)); |
| *ptr += sizeof(VkSampleCountFlagBits); |
| memcpy(*ptr, (VkImageTiling*)&forMarshaling->tiling, sizeof(VkImageTiling)); |
| *ptr += sizeof(VkImageTiling); |
| memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags)); |
| *ptr += sizeof(VkImageUsageFlags); |
| memcpy(*ptr, (VkSharingMode*)&forMarshaling->sharingMode, sizeof(VkSharingMode)); |
| *ptr += sizeof(VkSharingMode); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndexCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pQueueFamilyIndices; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pQueueFamilyIndices) { |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pQueueFamilyIndices, |
| forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t); |
| } |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->initialLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| } |
| |
| void reservedmarshal_VkSubresourceLayout(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubresourceLayout* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->rowPitch, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->arrayPitch, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->depthPitch, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkComponentMapping(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkComponentMapping* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkComponentSwizzle*)&forMarshaling->r, sizeof(VkComponentSwizzle)); |
| *ptr += sizeof(VkComponentSwizzle); |
| memcpy(*ptr, (VkComponentSwizzle*)&forMarshaling->g, sizeof(VkComponentSwizzle)); |
| *ptr += sizeof(VkComponentSwizzle); |
| memcpy(*ptr, (VkComponentSwizzle*)&forMarshaling->b, sizeof(VkComponentSwizzle)); |
| *ptr += sizeof(VkComponentSwizzle); |
| memcpy(*ptr, (VkComponentSwizzle*)&forMarshaling->a, sizeof(VkComponentSwizzle)); |
| *ptr += sizeof(VkComponentSwizzle); |
| } |
| |
| void reservedmarshal_VkImageViewCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageViewCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageViewCreateFlags*)&forMarshaling->flags, sizeof(VkImageViewCreateFlags)); |
| *ptr += sizeof(VkImageViewCreateFlags); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageViewType*)&forMarshaling->viewType, sizeof(VkImageViewType)); |
| *ptr += sizeof(VkImageViewType); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| reservedmarshal_VkComponentMapping(vkStream, rootType, |
| (VkComponentMapping*)(&forMarshaling->components), ptr); |
| reservedmarshal_VkImageSubresourceRange( |
| vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr); |
| } |
| |
| void reservedmarshal_VkShaderModuleCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkShaderModuleCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkShaderModuleCreateFlags*)&forMarshaling->flags, |
| sizeof(VkShaderModuleCreateFlags)); |
| *ptr += sizeof(VkShaderModuleCreateFlags); |
| uint64_t cgen_var_0 = (uint64_t)forMarshaling->codeSize; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pCode, |
| (forMarshaling->codeSize / 4) * sizeof(const uint32_t)); |
| *ptr += (forMarshaling->codeSize / 4) * sizeof(const uint32_t); |
| } |
| |
| void reservedmarshal_VkPipelineCacheCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPipelineCacheCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineCacheCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineCacheCreateFlags)); |
| *ptr += sizeof(VkPipelineCacheCreateFlags); |
| uint64_t cgen_var_0 = (uint64_t)forMarshaling->initialDataSize; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| memcpy(*ptr, (const void*)forMarshaling->pInitialData, |
| forMarshaling->initialDataSize * sizeof(const uint8_t)); |
| *ptr += forMarshaling->initialDataSize * sizeof(const uint8_t); |
| } |
| |
| void reservedmarshal_VkSpecializationMapEntry(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSpecializationMapEntry* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->constantID, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->offset, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_0 = (uint64_t)forMarshaling->size; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| } |
| |
| void reservedmarshal_VkSpecializationInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSpecializationInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->mapEntryCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->mapEntryCount; ++i) { |
| reservedmarshal_VkSpecializationMapEntry( |
| vkStream, rootType, (const VkSpecializationMapEntry*)(forMarshaling->pMapEntries + i), |
| ptr); |
| } |
| uint64_t cgen_var_0 = (uint64_t)forMarshaling->dataSize; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| memcpy(*ptr, (const void*)forMarshaling->pData, |
| forMarshaling->dataSize * sizeof(const uint8_t)); |
| *ptr += forMarshaling->dataSize * sizeof(const uint8_t); |
| } |
| |
| void reservedmarshal_VkPipelineShaderStageCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineShaderStageCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineShaderStageCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineShaderStageCreateFlags)); |
| *ptr += sizeof(VkPipelineShaderStageCreateFlags); |
| memcpy(*ptr, (VkShaderStageFlagBits*)&forMarshaling->stage, sizeof(VkShaderStageFlagBits)); |
| *ptr += sizeof(VkShaderStageFlagBits); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkShaderModule((*&forMarshaling->module)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| { |
| uint32_t l = forMarshaling->pName ? strlen(forMarshaling->pName) : 0; |
| memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t)); |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (char*)forMarshaling->pName, l); |
| *ptr += l; |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pSpecializationInfo; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pSpecializationInfo) { |
| reservedmarshal_VkSpecializationInfo( |
| vkStream, rootType, (const VkSpecializationInfo*)(forMarshaling->pSpecializationInfo), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkComputePipelineCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkComputePipelineCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineCreateFlags*)&forMarshaling->flags, sizeof(VkPipelineCreateFlags)); |
| *ptr += sizeof(VkPipelineCreateFlags); |
| reservedmarshal_VkPipelineShaderStageCreateInfo( |
| vkStream, rootType, (VkPipelineShaderStageCreateInfo*)(&forMarshaling->stage), ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkPipelineLayout((*&forMarshaling->layout)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkPipeline((*&forMarshaling->basePipelineHandle)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (int32_t*)&forMarshaling->basePipelineIndex, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| } |
| |
| void reservedmarshal_VkVertexInputBindingDescription( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkVertexInputBindingDescription* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->stride, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkVertexInputRate*)&forMarshaling->inputRate, sizeof(VkVertexInputRate)); |
| *ptr += sizeof(VkVertexInputRate); |
| } |
| |
| void reservedmarshal_VkVertexInputAttributeDescription( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkVertexInputAttributeDescription* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->location, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->offset, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPipelineVertexInputStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineVertexInputStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineVertexInputStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineVertexInputStateCreateFlags)); |
| *ptr += sizeof(VkPipelineVertexInputStateCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->vertexBindingDescriptionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->vertexBindingDescriptionCount; ++i) { |
| reservedmarshal_VkVertexInputBindingDescription( |
| vkStream, rootType, |
| (const VkVertexInputBindingDescription*)(forMarshaling->pVertexBindingDescriptions + i), |
| ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->vertexAttributeDescriptionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->vertexAttributeDescriptionCount; ++i) { |
| reservedmarshal_VkVertexInputAttributeDescription( |
| vkStream, rootType, |
| (const VkVertexInputAttributeDescription*)(forMarshaling->pVertexAttributeDescriptions + |
| i), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkPipelineInputAssemblyStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineInputAssemblyStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineInputAssemblyStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineInputAssemblyStateCreateFlags)); |
| *ptr += sizeof(VkPipelineInputAssemblyStateCreateFlags); |
| memcpy(*ptr, (VkPrimitiveTopology*)&forMarshaling->topology, sizeof(VkPrimitiveTopology)); |
| *ptr += sizeof(VkPrimitiveTopology); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveRestartEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPipelineTessellationStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineTessellationStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineTessellationStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineTessellationStateCreateFlags)); |
| *ptr += sizeof(VkPipelineTessellationStateCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->patchControlPoints, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkViewport(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkViewport* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (float*)&forMarshaling->x, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->y, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->width, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->height, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->minDepth, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->maxDepth, sizeof(float)); |
| *ptr += sizeof(float); |
| } |
| |
| void reservedmarshal_VkPipelineViewportStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineViewportStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineViewportStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineViewportStateCreateFlags)); |
| *ptr += sizeof(VkPipelineViewportStateCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewportCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pViewports; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pViewports) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->viewportCount; ++i) { |
| reservedmarshal_VkViewport(vkStream, rootType, |
| (const VkViewport*)(forMarshaling->pViewports + i), ptr); |
| } |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->scissorCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pScissors; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pScissors) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->scissorCount; ++i) { |
| reservedmarshal_VkRect2D(vkStream, rootType, |
| (const VkRect2D*)(forMarshaling->pScissors + i), ptr); |
| } |
| } |
| } |
| |
| void reservedmarshal_VkPipelineRasterizationStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineRasterizationStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineRasterizationStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineRasterizationStateCreateFlags)); |
| *ptr += sizeof(VkPipelineRasterizationStateCreateFlags); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthClampEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->rasterizerDiscardEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkPolygonMode*)&forMarshaling->polygonMode, sizeof(VkPolygonMode)); |
| *ptr += sizeof(VkPolygonMode); |
| memcpy(*ptr, (VkCullModeFlags*)&forMarshaling->cullMode, sizeof(VkCullModeFlags)); |
| *ptr += sizeof(VkCullModeFlags); |
| memcpy(*ptr, (VkFrontFace*)&forMarshaling->frontFace, sizeof(VkFrontFace)); |
| *ptr += sizeof(VkFrontFace); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthBiasEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (float*)&forMarshaling->depthBiasConstantFactor, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->depthBiasClamp, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->depthBiasSlopeFactor, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->lineWidth, sizeof(float)); |
| *ptr += sizeof(float); |
| } |
| |
| void reservedmarshal_VkPipelineMultisampleStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineMultisampleStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineMultisampleStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineMultisampleStateCreateFlags)); |
| *ptr += sizeof(VkPipelineMultisampleStateCreateFlags); |
| memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->rasterizationSamples, |
| sizeof(VkSampleCountFlagBits)); |
| *ptr += sizeof(VkSampleCountFlagBits); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sampleShadingEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (float*)&forMarshaling->minSampleShading, sizeof(float)); |
| *ptr += sizeof(float); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pSampleMask; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pSampleMask) { |
| memcpy(*ptr, (const VkSampleMask*)forMarshaling->pSampleMask, |
| (((forMarshaling->rasterizationSamples) + 31) / 32) * sizeof(const VkSampleMask)); |
| *ptr += (((forMarshaling->rasterizationSamples) + 31) / 32) * sizeof(const VkSampleMask); |
| } |
| memcpy(*ptr, (VkBool32*)&forMarshaling->alphaToCoverageEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->alphaToOneEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkStencilOpState(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkStencilOpState* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStencilOp*)&forMarshaling->failOp, sizeof(VkStencilOp)); |
| *ptr += sizeof(VkStencilOp); |
| memcpy(*ptr, (VkStencilOp*)&forMarshaling->passOp, sizeof(VkStencilOp)); |
| *ptr += sizeof(VkStencilOp); |
| memcpy(*ptr, (VkStencilOp*)&forMarshaling->depthFailOp, sizeof(VkStencilOp)); |
| *ptr += sizeof(VkStencilOp); |
| memcpy(*ptr, (VkCompareOp*)&forMarshaling->compareOp, sizeof(VkCompareOp)); |
| *ptr += sizeof(VkCompareOp); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->compareMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->writeMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->reference, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPipelineDepthStencilStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineDepthStencilStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineDepthStencilStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineDepthStencilStateCreateFlags)); |
| *ptr += sizeof(VkPipelineDepthStencilStateCreateFlags); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthTestEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthWriteEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkCompareOp*)&forMarshaling->depthCompareOp, sizeof(VkCompareOp)); |
| *ptr += sizeof(VkCompareOp); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthBoundsTestEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->stencilTestEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| reservedmarshal_VkStencilOpState(vkStream, rootType, (VkStencilOpState*)(&forMarshaling->front), |
| ptr); |
| reservedmarshal_VkStencilOpState(vkStream, rootType, (VkStencilOpState*)(&forMarshaling->back), |
| ptr); |
| memcpy(*ptr, (float*)&forMarshaling->minDepthBounds, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->maxDepthBounds, sizeof(float)); |
| *ptr += sizeof(float); |
| } |
| |
| void reservedmarshal_VkPipelineColorBlendAttachmentState( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineColorBlendAttachmentState* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkBool32*)&forMarshaling->blendEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBlendFactor*)&forMarshaling->srcColorBlendFactor, sizeof(VkBlendFactor)); |
| *ptr += sizeof(VkBlendFactor); |
| memcpy(*ptr, (VkBlendFactor*)&forMarshaling->dstColorBlendFactor, sizeof(VkBlendFactor)); |
| *ptr += sizeof(VkBlendFactor); |
| memcpy(*ptr, (VkBlendOp*)&forMarshaling->colorBlendOp, sizeof(VkBlendOp)); |
| *ptr += sizeof(VkBlendOp); |
| memcpy(*ptr, (VkBlendFactor*)&forMarshaling->srcAlphaBlendFactor, sizeof(VkBlendFactor)); |
| *ptr += sizeof(VkBlendFactor); |
| memcpy(*ptr, (VkBlendFactor*)&forMarshaling->dstAlphaBlendFactor, sizeof(VkBlendFactor)); |
| *ptr += sizeof(VkBlendFactor); |
| memcpy(*ptr, (VkBlendOp*)&forMarshaling->alphaBlendOp, sizeof(VkBlendOp)); |
| *ptr += sizeof(VkBlendOp); |
| memcpy(*ptr, (VkColorComponentFlags*)&forMarshaling->colorWriteMask, |
| sizeof(VkColorComponentFlags)); |
| *ptr += sizeof(VkColorComponentFlags); |
| } |
| |
| void reservedmarshal_VkPipelineColorBlendStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineColorBlendStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineColorBlendStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineColorBlendStateCreateFlags)); |
| *ptr += sizeof(VkPipelineColorBlendStateCreateFlags); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->logicOpEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkLogicOp*)&forMarshaling->logicOp, sizeof(VkLogicOp)); |
| *ptr += sizeof(VkLogicOp); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->attachmentCount; ++i) { |
| reservedmarshal_VkPipelineColorBlendAttachmentState( |
| vkStream, rootType, |
| (const VkPipelineColorBlendAttachmentState*)(forMarshaling->pAttachments + i), ptr); |
| } |
| memcpy(*ptr, (float*)forMarshaling->blendConstants, 4 * sizeof(float)); |
| *ptr += 4 * sizeof(float); |
| } |
| |
| void reservedmarshal_VkPipelineDynamicStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineDynamicStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineDynamicStateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineDynamicStateCreateFlags)); |
| *ptr += sizeof(VkPipelineDynamicStateCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dynamicStateCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const VkDynamicState*)forMarshaling->pDynamicStates, |
| forMarshaling->dynamicStateCount * sizeof(const VkDynamicState)); |
| *ptr += forMarshaling->dynamicStateCount * sizeof(const VkDynamicState); |
| } |
| |
| void reservedmarshal_VkGraphicsPipelineCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkGraphicsPipelineCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| uint32_t hasRasterization = 1; |
| if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) { |
| hasRasterization = |
| ((((0 == forMarshaling->pRasterizationState)) |
| ? (0) |
| : (!((*(forMarshaling->pRasterizationState)).rasterizerDiscardEnable))) || |
| (((0 == forMarshaling->pDynamicState)) |
| ? (0) |
| : (arrayany((*(forMarshaling->pDynamicState)).pDynamicStates, 0, |
| (*(forMarshaling->pDynamicState)).dynamicStateCount, |
| [](VkDynamicState s) { |
| return (s == VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE); |
| })))); |
| uint32_t cgen_var_0 = (uint32_t)hasRasterization; |
| memcpy((*ptr), &cgen_var_0, 4); |
| gfxstream::guest::Stream::toBe32((uint8_t*)(*ptr)); |
| *ptr += 4; |
| } |
| uint32_t hasTessellation = 1; |
| if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) { |
| hasTessellation = |
| arrayany(forMarshaling->pStages, 0, forMarshaling->stageCount, |
| [](VkPipelineShaderStageCreateInfo s) { |
| return ((s.stage == VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT) || |
| (s.stage == VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT)); |
| }); |
| uint32_t cgen_var_0 = (uint32_t)hasTessellation; |
| memcpy((*ptr), &cgen_var_0, 4); |
| gfxstream::guest::Stream::toBe32((uint8_t*)(*ptr)); |
| *ptr += 4; |
| } |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineCreateFlags*)&forMarshaling->flags, sizeof(VkPipelineCreateFlags)); |
| *ptr += sizeof(VkPipelineCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->stageCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->stageCount; ++i) { |
| reservedmarshal_VkPipelineShaderStageCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineShaderStageCreateInfo*)(forMarshaling->pStages + i), ptr); |
| } |
| // WARNING PTR CHECK |
| if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) { |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pVertexInputState; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| } |
| if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) || |
| forMarshaling->pVertexInputState)) { |
| reservedmarshal_VkPipelineVertexInputStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineVertexInputStateCreateInfo*)(forMarshaling->pVertexInputState), ptr); |
| } |
| // WARNING PTR CHECK |
| if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) { |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pInputAssemblyState; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| } |
| if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) || |
| forMarshaling->pInputAssemblyState)) { |
| reservedmarshal_VkPipelineInputAssemblyStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineInputAssemblyStateCreateInfo*)(forMarshaling->pInputAssemblyState), |
| ptr); |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pTessellationState; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pTessellationState) { |
| if (hasTessellation) { |
| reservedmarshal_VkPipelineTessellationStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineTessellationStateCreateInfo*)(forMarshaling->pTessellationState), |
| ptr); |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pViewportState; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pViewportState) { |
| if (hasRasterization) { |
| reservedmarshal_VkPipelineViewportStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineViewportStateCreateInfo*)(forMarshaling->pViewportState), ptr); |
| } |
| } |
| // WARNING PTR CHECK |
| if (vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) { |
| uint64_t cgen_var_1_0 = (uint64_t)(uintptr_t)forMarshaling->pRasterizationState; |
| memcpy((*ptr), &cgen_var_1_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| } |
| if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) || |
| forMarshaling->pRasterizationState)) { |
| reservedmarshal_VkPipelineRasterizationStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineRasterizationStateCreateInfo*)(forMarshaling->pRasterizationState), |
| ptr); |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pMultisampleState; |
| memcpy((*ptr), &cgen_var_2, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pMultisampleState) { |
| if (hasRasterization) { |
| reservedmarshal_VkPipelineMultisampleStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineMultisampleStateCreateInfo*)(forMarshaling->pMultisampleState), |
| ptr); |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_3 = (uint64_t)(uintptr_t)forMarshaling->pDepthStencilState; |
| memcpy((*ptr), &cgen_var_3, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pDepthStencilState) { |
| if (hasRasterization) { |
| reservedmarshal_VkPipelineDepthStencilStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineDepthStencilStateCreateInfo*)(forMarshaling->pDepthStencilState), |
| ptr); |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_4 = (uint64_t)(uintptr_t)forMarshaling->pColorBlendState; |
| memcpy((*ptr), &cgen_var_4, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pColorBlendState) { |
| if (hasRasterization) { |
| reservedmarshal_VkPipelineColorBlendStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineColorBlendStateCreateInfo*)(forMarshaling->pColorBlendState), ptr); |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_5 = (uint64_t)(uintptr_t)forMarshaling->pDynamicState; |
| memcpy((*ptr), &cgen_var_5, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pDynamicState) { |
| reservedmarshal_VkPipelineDynamicStateCreateInfo( |
| vkStream, rootType, |
| (const VkPipelineDynamicStateCreateInfo*)(forMarshaling->pDynamicState), ptr); |
| } |
| uint64_t cgen_var_6; |
| *&cgen_var_6 = get_host_u64_VkPipelineLayout((*&forMarshaling->layout)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_6, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_7; |
| *&cgen_var_7 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_7, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subpass, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_8; |
| *&cgen_var_8 = get_host_u64_VkPipeline((*&forMarshaling->basePipelineHandle)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_8, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (int32_t*)&forMarshaling->basePipelineIndex, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| } |
| |
| void reservedmarshal_VkPushConstantRange(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPushConstantRange* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stageFlags, sizeof(VkShaderStageFlags)); |
| *ptr += sizeof(VkShaderStageFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->offset, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->size, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPipelineLayoutCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPipelineLayoutCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineLayoutCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineLayoutCreateFlags)); |
| *ptr += sizeof(VkPipelineLayoutCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->setLayoutCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->setLayoutCount) { |
| uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->setLayoutCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkDescriptorSetLayout(forMarshaling->pSetLayouts[k]); |
| memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->setLayoutCount; |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->pushConstantRangeCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->pushConstantRangeCount; ++i) { |
| reservedmarshal_VkPushConstantRange( |
| vkStream, rootType, |
| (const VkPushConstantRange*)(forMarshaling->pPushConstantRanges + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkSamplerCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSamplerCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSamplerCreateFlags*)&forMarshaling->flags, sizeof(VkSamplerCreateFlags)); |
| *ptr += sizeof(VkSamplerCreateFlags); |
| memcpy(*ptr, (VkFilter*)&forMarshaling->magFilter, sizeof(VkFilter)); |
| *ptr += sizeof(VkFilter); |
| memcpy(*ptr, (VkFilter*)&forMarshaling->minFilter, sizeof(VkFilter)); |
| *ptr += sizeof(VkFilter); |
| memcpy(*ptr, (VkSamplerMipmapMode*)&forMarshaling->mipmapMode, sizeof(VkSamplerMipmapMode)); |
| *ptr += sizeof(VkSamplerMipmapMode); |
| memcpy(*ptr, (VkSamplerAddressMode*)&forMarshaling->addressModeU, sizeof(VkSamplerAddressMode)); |
| *ptr += sizeof(VkSamplerAddressMode); |
| memcpy(*ptr, (VkSamplerAddressMode*)&forMarshaling->addressModeV, sizeof(VkSamplerAddressMode)); |
| *ptr += sizeof(VkSamplerAddressMode); |
| memcpy(*ptr, (VkSamplerAddressMode*)&forMarshaling->addressModeW, sizeof(VkSamplerAddressMode)); |
| *ptr += sizeof(VkSamplerAddressMode); |
| memcpy(*ptr, (float*)&forMarshaling->mipLodBias, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->anisotropyEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (float*)&forMarshaling->maxAnisotropy, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->compareEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkCompareOp*)&forMarshaling->compareOp, sizeof(VkCompareOp)); |
| *ptr += sizeof(VkCompareOp); |
| memcpy(*ptr, (float*)&forMarshaling->minLod, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (float*)&forMarshaling->maxLod, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (VkBorderColor*)&forMarshaling->borderColor, sizeof(VkBorderColor)); |
| *ptr += sizeof(VkBorderColor); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->unnormalizedCoordinates, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkCopyDescriptorSet(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCopyDescriptorSet* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkDescriptorSet((*&forMarshaling->srcSet)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->srcBinding, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->srcArrayElement, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkDescriptorSet((*&forMarshaling->dstSet)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstBinding, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstArrayElement, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDescriptorBufferInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorBufferInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->range, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkDescriptorImageInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorImageInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSampler((*&forMarshaling->sampler)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkImageView((*&forMarshaling->imageView)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| } |
| |
| void reservedmarshal_VkDescriptorPoolSize(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorPoolSize* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkDescriptorType*)&forMarshaling->type, sizeof(VkDescriptorType)); |
| *ptr += sizeof(VkDescriptorType); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDescriptorPoolCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkDescriptorPoolCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDescriptorPoolCreateFlags*)&forMarshaling->flags, |
| sizeof(VkDescriptorPoolCreateFlags)); |
| *ptr += sizeof(VkDescriptorPoolCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxSets, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->poolSizeCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->poolSizeCount; ++i) { |
| reservedmarshal_VkDescriptorPoolSize( |
| vkStream, rootType, (const VkDescriptorPoolSize*)(forMarshaling->pPoolSizes + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkDescriptorSetAllocateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkDescriptorSetAllocateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkDescriptorPool((*&forMarshaling->descriptorPool)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorSetCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->descriptorSetCount) { |
| uint8_t* cgen_var_1_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->descriptorSetCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkDescriptorSetLayout(forMarshaling->pSetLayouts[k]); |
| memcpy(cgen_var_1_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->descriptorSetCount; |
| } |
| } |
| |
| void reservedmarshal_VkDescriptorSetLayoutBinding(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkDescriptorSetLayoutBinding* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkDescriptorType*)&forMarshaling->descriptorType, sizeof(VkDescriptorType)); |
| *ptr += sizeof(VkDescriptorType); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stageFlags, sizeof(VkShaderStageFlags)); |
| *ptr += sizeof(VkShaderStageFlags); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pImmutableSamplers; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pImmutableSamplers) { |
| if (forMarshaling->descriptorCount) { |
| uint8_t* cgen_var_0_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->descriptorCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkSampler(forMarshaling->pImmutableSamplers[k]); |
| memcpy(cgen_var_0_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->descriptorCount; |
| } |
| } |
| } |
| |
| void reservedmarshal_VkDescriptorSetLayoutCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorSetLayoutCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDescriptorSetLayoutCreateFlags*)&forMarshaling->flags, |
| sizeof(VkDescriptorSetLayoutCreateFlags)); |
| *ptr += sizeof(VkDescriptorSetLayoutCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bindingCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->bindingCount; ++i) { |
| reservedmarshal_VkDescriptorSetLayoutBinding( |
| vkStream, rootType, (const VkDescriptorSetLayoutBinding*)(forMarshaling->pBindings + i), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkWriteDescriptorSet(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkWriteDescriptorSet* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkDescriptorSet((*&forMarshaling->dstSet)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstBinding, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstArrayElement, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkDescriptorType*)&forMarshaling->descriptorType, sizeof(VkDescriptorType)); |
| *ptr += sizeof(VkDescriptorType); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pImageInfo; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pImageInfo) { |
| if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) || |
| ((VK_DESCRIPTOR_TYPE_SAMPLER == forMarshaling->descriptorType) || |
| (VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER == forMarshaling->descriptorType) || |
| (VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE == forMarshaling->descriptorType) || |
| (VK_DESCRIPTOR_TYPE_STORAGE_IMAGE == forMarshaling->descriptorType) || |
| (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT == forMarshaling->descriptorType)))) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->descriptorCount; ++i) { |
| reservedmarshal_VkDescriptorImageInfo( |
| vkStream, rootType, |
| (const VkDescriptorImageInfo*)(forMarshaling->pImageInfo + i), ptr); |
| } |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pBufferInfo; |
| memcpy((*ptr), &cgen_var_2, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pBufferInfo) { |
| if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) || |
| ((VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER == forMarshaling->descriptorType) || |
| (VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC == forMarshaling->descriptorType) || |
| (VK_DESCRIPTOR_TYPE_STORAGE_BUFFER == forMarshaling->descriptorType) || |
| (VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC == forMarshaling->descriptorType)))) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->descriptorCount; ++i) { |
| reservedmarshal_VkDescriptorBufferInfo( |
| vkStream, rootType, |
| (const VkDescriptorBufferInfo*)(forMarshaling->pBufferInfo + i), ptr); |
| } |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_3 = (uint64_t)(uintptr_t)forMarshaling->pTexelBufferView; |
| memcpy((*ptr), &cgen_var_3, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pTexelBufferView) { |
| if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) || |
| ((VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER == forMarshaling->descriptorType) || |
| (VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER == forMarshaling->descriptorType)))) { |
| if (forMarshaling->descriptorCount) { |
| uint8_t* cgen_var_3_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->descriptorCount; ++k) { |
| uint64_t tmpval = |
| get_host_u64_VkBufferView(forMarshaling->pTexelBufferView[k]); |
| memcpy(cgen_var_3_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->descriptorCount; |
| } |
| } |
| } |
| } |
| |
| void reservedmarshal_VkAttachmentDescription(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkAttachmentDescription* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkAttachmentDescriptionFlags*)&forMarshaling->flags, |
| sizeof(VkAttachmentDescriptionFlags)); |
| *ptr += sizeof(VkAttachmentDescriptionFlags); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->samples, sizeof(VkSampleCountFlagBits)); |
| *ptr += sizeof(VkSampleCountFlagBits); |
| memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->loadOp, sizeof(VkAttachmentLoadOp)); |
| *ptr += sizeof(VkAttachmentLoadOp); |
| memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->storeOp, sizeof(VkAttachmentStoreOp)); |
| *ptr += sizeof(VkAttachmentStoreOp); |
| memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->stencilLoadOp, sizeof(VkAttachmentLoadOp)); |
| *ptr += sizeof(VkAttachmentLoadOp); |
| memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->stencilStoreOp, sizeof(VkAttachmentStoreOp)); |
| *ptr += sizeof(VkAttachmentStoreOp); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->initialLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->finalLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| } |
| |
| void reservedmarshal_VkAttachmentReference(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkAttachmentReference* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->attachment, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->layout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| } |
| |
| void reservedmarshal_VkFramebufferCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkFramebufferCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkFramebufferCreateFlags*)&forMarshaling->flags, |
| sizeof(VkFramebufferCreateFlags)); |
| *ptr += sizeof(VkFramebufferCreateFlags); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if ((!(vkStream->getFeatureBits() & VULKAN_STREAM_FEATURE_IGNORED_HANDLES_BIT) || |
| (((forMarshaling->flags & VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT) == 0)))) { |
| if (forMarshaling->attachmentCount) { |
| uint8_t* cgen_var_0_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->attachmentCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkImageView(forMarshaling->pAttachments[k]); |
| memcpy(cgen_var_0_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->attachmentCount; |
| } |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->width, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->height, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->layers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkSubpassDescription(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubpassDescription* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkSubpassDescriptionFlags*)&forMarshaling->flags, |
| sizeof(VkSubpassDescriptionFlags)); |
| *ptr += sizeof(VkSubpassDescriptionFlags); |
| memcpy(*ptr, (VkPipelineBindPoint*)&forMarshaling->pipelineBindPoint, |
| sizeof(VkPipelineBindPoint)); |
| *ptr += sizeof(VkPipelineBindPoint); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->inputAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->inputAttachmentCount; ++i) { |
| reservedmarshal_VkAttachmentReference( |
| vkStream, rootType, |
| (const VkAttachmentReference*)(forMarshaling->pInputAttachments + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) { |
| reservedmarshal_VkAttachmentReference( |
| vkStream, rootType, |
| (const VkAttachmentReference*)(forMarshaling->pColorAttachments + i), ptr); |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pResolveAttachments; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pResolveAttachments) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) { |
| reservedmarshal_VkAttachmentReference( |
| vkStream, rootType, |
| (const VkAttachmentReference*)(forMarshaling->pResolveAttachments + i), ptr); |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pDepthStencilAttachment; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pDepthStencilAttachment) { |
| reservedmarshal_VkAttachmentReference( |
| vkStream, rootType, |
| (const VkAttachmentReference*)(forMarshaling->pDepthStencilAttachment), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->preserveAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pPreserveAttachments, |
| forMarshaling->preserveAttachmentCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->preserveAttachmentCount * sizeof(const uint32_t); |
| } |
| |
| void reservedmarshal_VkSubpassDependency(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubpassDependency* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->srcSubpass, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstSubpass, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkPipelineStageFlags*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags)); |
| *ptr += sizeof(VkPipelineStageFlags); |
| memcpy(*ptr, (VkPipelineStageFlags*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags)); |
| *ptr += sizeof(VkPipelineStageFlags); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (VkDependencyFlags*)&forMarshaling->dependencyFlags, sizeof(VkDependencyFlags)); |
| *ptr += sizeof(VkDependencyFlags); |
| } |
| |
| void reservedmarshal_VkRenderPassCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderPassCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkRenderPassCreateFlags*)&forMarshaling->flags, sizeof(VkRenderPassCreateFlags)); |
| *ptr += sizeof(VkRenderPassCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->attachmentCount; ++i) { |
| reservedmarshal_VkAttachmentDescription( |
| vkStream, rootType, (const VkAttachmentDescription*)(forMarshaling->pAttachments + i), |
| ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subpassCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->subpassCount; ++i) { |
| reservedmarshal_VkSubpassDescription( |
| vkStream, rootType, (const VkSubpassDescription*)(forMarshaling->pSubpasses + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dependencyCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->dependencyCount; ++i) { |
| reservedmarshal_VkSubpassDependency( |
| vkStream, rootType, (const VkSubpassDependency*)(forMarshaling->pDependencies + i), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkCommandPoolCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCommandPoolCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkCommandPoolCreateFlags*)&forMarshaling->flags, |
| sizeof(VkCommandPoolCreateFlags)); |
| *ptr += sizeof(VkCommandPoolCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkCommandBufferAllocateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkCommandBufferAllocateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkCommandPool((*&forMarshaling->commandPool)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkCommandBufferLevel*)&forMarshaling->level, sizeof(VkCommandBufferLevel)); |
| *ptr += sizeof(VkCommandBufferLevel); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkCommandBufferInheritanceInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCommandBufferInheritanceInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subpass, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkFramebuffer((*&forMarshaling->framebuffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkBool32*)&forMarshaling->occlusionQueryEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkQueryControlFlags*)&forMarshaling->queryFlags, sizeof(VkQueryControlFlags)); |
| *ptr += sizeof(VkQueryControlFlags); |
| memcpy(*ptr, (VkQueryPipelineStatisticFlags*)&forMarshaling->pipelineStatistics, |
| sizeof(VkQueryPipelineStatisticFlags)); |
| *ptr += sizeof(VkQueryPipelineStatisticFlags); |
| } |
| |
| void reservedmarshal_VkCommandBufferBeginInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCommandBufferBeginInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkCommandBufferUsageFlags*)&forMarshaling->flags, |
| sizeof(VkCommandBufferUsageFlags)); |
| *ptr += sizeof(VkCommandBufferUsageFlags); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pInheritanceInfo; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pInheritanceInfo) { |
| reservedmarshal_VkCommandBufferInheritanceInfo( |
| vkStream, rootType, |
| (const VkCommandBufferInheritanceInfo*)(forMarshaling->pInheritanceInfo), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkBufferCopy(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferCopy* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->srcOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->dstOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkImageSubresourceLayers(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageSubresourceLayers* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags)); |
| *ptr += sizeof(VkImageAspectFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->mipLevel, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->baseArrayLayer, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkBufferImageCopy(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferImageCopy* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->bufferOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bufferRowLength, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bufferImageHeight, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr); |
| } |
| |
| void reservedmarshal_VkClearColorValue(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkClearColorValue* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (float*)forMarshaling->float32, 4 * sizeof(float)); |
| *ptr += 4 * sizeof(float); |
| } |
| |
| void reservedmarshal_VkClearDepthStencilValue(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkClearDepthStencilValue* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (float*)&forMarshaling->depth, sizeof(float)); |
| *ptr += sizeof(float); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->stencil, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkClearValue(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkClearValue* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkClearColorValue(vkStream, rootType, |
| (VkClearColorValue*)(&forMarshaling->color), ptr); |
| } |
| |
| void reservedmarshal_VkClearAttachment(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkClearAttachment* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags)); |
| *ptr += sizeof(VkImageAspectFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachment, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| reservedmarshal_VkClearValue(vkStream, rootType, (VkClearValue*)(&forMarshaling->clearValue), |
| ptr); |
| } |
| |
| void reservedmarshal_VkClearRect(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkClearRect* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forMarshaling->rect), ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->baseArrayLayer, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkImageBlit(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageBlit* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr); |
| for (uint32_t i = 0; i < (uint32_t)2; ++i) { |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(forMarshaling->srcOffsets + i), |
| ptr); |
| } |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr); |
| for (uint32_t i = 0; i < (uint32_t)2; ++i) { |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(forMarshaling->dstOffsets + i), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkImageCopy(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageCopy* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->srcOffset), ptr); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->dstOffset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr); |
| } |
| |
| void reservedmarshal_VkImageResolve(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageResolve* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->srcOffset), ptr); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->dstOffset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr); |
| } |
| |
| void reservedmarshal_VkRenderPassBeginInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderPassBeginInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkFramebuffer((*&forMarshaling->framebuffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| reservedmarshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forMarshaling->renderArea), ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->clearValueCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pClearValues; |
| memcpy((*ptr), &cgen_var_2, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pClearValues) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->clearValueCount; ++i) { |
| reservedmarshal_VkClearValue( |
| vkStream, rootType, (const VkClearValue*)(forMarshaling->pClearValues + i), ptr); |
| } |
| } |
| } |
| |
| #endif |
| #ifdef VK_VERSION_1_1 |
| void reservedmarshal_VkPhysicalDeviceSubgroupProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSubgroupProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subgroupSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->supportedStages, sizeof(VkShaderStageFlags)); |
| *ptr += sizeof(VkShaderStageFlags); |
| memcpy(*ptr, (VkSubgroupFeatureFlags*)&forMarshaling->supportedOperations, |
| sizeof(VkSubgroupFeatureFlags)); |
| *ptr += sizeof(VkSubgroupFeatureFlags); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->quadOperationsInAllStages, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkBindBufferMemoryInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBindBufferMemoryInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkBindImageMemoryInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBindImageMemoryInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkPhysicalDevice16BitStorageFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevice16BitStorageFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storageBuffer16BitAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->uniformAndStorageBuffer16BitAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storagePushConstant16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storageInputOutput16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkMemoryDedicatedRequirements( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryDedicatedRequirements* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->prefersDedicatedAllocation, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->requiresDedicatedAllocation, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkMemoryDedicatedAllocateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryDedicatedAllocateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkMemoryAllocateFlagsInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkMemoryAllocateFlagsInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkMemoryAllocateFlags*)&forMarshaling->flags, sizeof(VkMemoryAllocateFlags)); |
| *ptr += sizeof(VkMemoryAllocateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDeviceGroupRenderPassBeginInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceGroupRenderPassBeginInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceRenderAreaCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->deviceRenderAreaCount; ++i) { |
| reservedmarshal_VkRect2D(vkStream, rootType, |
| (const VkRect2D*)(forMarshaling->pDeviceRenderAreas + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkDeviceGroupCommandBufferBeginInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceGroupCommandBufferBeginInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDeviceGroupSubmitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceGroupSubmitInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pWaitSemaphoreDeviceIndices, |
| forMarshaling->waitSemaphoreCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->waitSemaphoreCount * sizeof(const uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pCommandBufferDeviceMasks, |
| forMarshaling->commandBufferCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->commandBufferCount * sizeof(const uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pSignalSemaphoreDeviceIndices, |
| forMarshaling->signalSemaphoreCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->signalSemaphoreCount * sizeof(const uint32_t); |
| } |
| |
| void reservedmarshal_VkDeviceGroupBindSparseInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkDeviceGroupBindSparseInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->resourceDeviceIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryDeviceIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkBindBufferMemoryDeviceGroupInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBindBufferMemoryDeviceGroupInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceIndexCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pDeviceIndices, |
| forMarshaling->deviceIndexCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->deviceIndexCount * sizeof(const uint32_t); |
| } |
| |
| void reservedmarshal_VkBindImageMemoryDeviceGroupInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBindImageMemoryDeviceGroupInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceIndexCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pDeviceIndices, |
| forMarshaling->deviceIndexCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->deviceIndexCount * sizeof(const uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->splitInstanceBindRegionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->splitInstanceBindRegionCount; ++i) { |
| reservedmarshal_VkRect2D(vkStream, rootType, |
| (const VkRect2D*)(forMarshaling->pSplitInstanceBindRegions + i), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceGroupProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceGroupProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->physicalDeviceCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkPhysicalDevice*)forMarshaling->physicalDevices, |
| VK_MAX_DEVICE_GROUP_SIZE * sizeof(VkPhysicalDevice)); |
| *ptr += VK_MAX_DEVICE_GROUP_SIZE * sizeof(VkPhysicalDevice); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->subsetAllocation, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkDeviceGroupDeviceCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceGroupDeviceCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->physicalDeviceCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->physicalDeviceCount) { |
| uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->physicalDeviceCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkPhysicalDevice(forMarshaling->pPhysicalDevices[k]); |
| memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->physicalDeviceCount; |
| } |
| } |
| |
| void reservedmarshal_VkBufferMemoryRequirementsInfo2( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferMemoryRequirementsInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkImageMemoryRequirementsInfo2( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageMemoryRequirementsInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkImageSparseMemoryRequirementsInfo2( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageSparseMemoryRequirementsInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkMemoryRequirements2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryRequirements2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkMemoryRequirements( |
| vkStream, rootType, (VkMemoryRequirements*)(&forMarshaling->memoryRequirements), ptr); |
| } |
| |
| void reservedmarshal_VkSparseImageMemoryRequirements2( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSparseImageMemoryRequirements2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkSparseImageMemoryRequirements( |
| vkStream, rootType, (VkSparseImageMemoryRequirements*)(&forMarshaling->memoryRequirements), |
| ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceFeatures2(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPhysicalDeviceFeatures2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkPhysicalDeviceFeatures( |
| vkStream, rootType, (VkPhysicalDeviceFeatures*)(&forMarshaling->features), ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceProperties2(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPhysicalDeviceProperties2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkPhysicalDeviceProperties( |
| vkStream, rootType, (VkPhysicalDeviceProperties*)(&forMarshaling->properties), ptr); |
| } |
| |
| void reservedmarshal_VkFormatProperties2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkFormatProperties2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkFormatProperties( |
| vkStream, rootType, (VkFormatProperties*)(&forMarshaling->formatProperties), ptr); |
| } |
| |
| void reservedmarshal_VkImageFormatProperties2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageFormatProperties2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkImageFormatProperties( |
| vkStream, rootType, (VkImageFormatProperties*)(&forMarshaling->imageFormatProperties), ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceImageFormatInfo2( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceImageFormatInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkImageType*)&forMarshaling->type, sizeof(VkImageType)); |
| *ptr += sizeof(VkImageType); |
| memcpy(*ptr, (VkImageTiling*)&forMarshaling->tiling, sizeof(VkImageTiling)); |
| *ptr += sizeof(VkImageTiling); |
| memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags)); |
| *ptr += sizeof(VkImageUsageFlags); |
| memcpy(*ptr, (VkImageCreateFlags*)&forMarshaling->flags, sizeof(VkImageCreateFlags)); |
| *ptr += sizeof(VkImageCreateFlags); |
| } |
| |
| void reservedmarshal_VkQueueFamilyProperties2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkQueueFamilyProperties2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkQueueFamilyProperties( |
| vkStream, rootType, (VkQueueFamilyProperties*)(&forMarshaling->queueFamilyProperties), ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceMemoryProperties2( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMemoryProperties2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkPhysicalDeviceMemoryProperties( |
| vkStream, rootType, (VkPhysicalDeviceMemoryProperties*)(&forMarshaling->memoryProperties), |
| ptr); |
| } |
| |
| void reservedmarshal_VkSparseImageFormatProperties2( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSparseImageFormatProperties2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkSparseImageFormatProperties( |
| vkStream, rootType, (VkSparseImageFormatProperties*)(&forMarshaling->properties), ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceSparseImageFormatInfo2( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSparseImageFormatInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkImageType*)&forMarshaling->type, sizeof(VkImageType)); |
| *ptr += sizeof(VkImageType); |
| memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->samples, sizeof(VkSampleCountFlagBits)); |
| *ptr += sizeof(VkSampleCountFlagBits); |
| memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags)); |
| *ptr += sizeof(VkImageUsageFlags); |
| memcpy(*ptr, (VkImageTiling*)&forMarshaling->tiling, sizeof(VkImageTiling)); |
| *ptr += sizeof(VkImageTiling); |
| } |
| |
| void reservedmarshal_VkPhysicalDevicePointClippingProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevicePointClippingProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPointClippingBehavior*)&forMarshaling->pointClippingBehavior, |
| sizeof(VkPointClippingBehavior)); |
| *ptr += sizeof(VkPointClippingBehavior); |
| } |
| |
| void reservedmarshal_VkInputAttachmentAspectReference( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkInputAttachmentAspectReference* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subpass, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->inputAttachmentIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags)); |
| *ptr += sizeof(VkImageAspectFlags); |
| } |
| |
| void reservedmarshal_VkRenderPassInputAttachmentAspectCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderPassInputAttachmentAspectCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->aspectReferenceCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->aspectReferenceCount; ++i) { |
| reservedmarshal_VkInputAttachmentAspectReference( |
| vkStream, rootType, |
| (const VkInputAttachmentAspectReference*)(forMarshaling->pAspectReferences + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkImageViewUsageCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkImageViewUsageCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags)); |
| *ptr += sizeof(VkImageUsageFlags); |
| } |
| |
| void reservedmarshal_VkPipelineTessellationDomainOriginStateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineTessellationDomainOriginStateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkTessellationDomainOrigin*)&forMarshaling->domainOrigin, |
| sizeof(VkTessellationDomainOrigin)); |
| *ptr += sizeof(VkTessellationDomainOrigin); |
| } |
| |
| void reservedmarshal_VkRenderPassMultiviewCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderPassMultiviewCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subpassCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pViewMasks, |
| forMarshaling->subpassCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->subpassCount * sizeof(const uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dependencyCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const int32_t*)forMarshaling->pViewOffsets, |
| forMarshaling->dependencyCount * sizeof(const int32_t)); |
| *ptr += forMarshaling->dependencyCount * sizeof(const int32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->correlationMaskCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pCorrelationMasks, |
| forMarshaling->correlationMaskCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->correlationMaskCount * sizeof(const uint32_t); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceMultiviewFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMultiviewFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->multiview, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->multiviewGeometryShader, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->multiviewTessellationShader, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceMultiviewProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMultiviewProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiviewViewCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiviewInstanceIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceVariablePointersFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceVariablePointersFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->variablePointersStorageBuffer, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->variablePointers, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceProtectedMemoryFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceProtectedMemoryFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->protectedMemory, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceProtectedMemoryProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceProtectedMemoryProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->protectedNoFault, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkDeviceQueueInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceQueueInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceQueueCreateFlags*)&forMarshaling->flags, |
| sizeof(VkDeviceQueueCreateFlags)); |
| *ptr += sizeof(VkDeviceQueueCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkProtectedSubmitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkProtectedSubmitInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->protectedSubmit, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkSamplerYcbcrConversionCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSamplerYcbcrConversionCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkSamplerYcbcrModelConversion*)&forMarshaling->ycbcrModel, |
| sizeof(VkSamplerYcbcrModelConversion)); |
| *ptr += sizeof(VkSamplerYcbcrModelConversion); |
| memcpy(*ptr, (VkSamplerYcbcrRange*)&forMarshaling->ycbcrRange, sizeof(VkSamplerYcbcrRange)); |
| *ptr += sizeof(VkSamplerYcbcrRange); |
| reservedmarshal_VkComponentMapping(vkStream, rootType, |
| (VkComponentMapping*)(&forMarshaling->components), ptr); |
| memcpy(*ptr, (VkChromaLocation*)&forMarshaling->xChromaOffset, sizeof(VkChromaLocation)); |
| *ptr += sizeof(VkChromaLocation); |
| memcpy(*ptr, (VkChromaLocation*)&forMarshaling->yChromaOffset, sizeof(VkChromaLocation)); |
| *ptr += sizeof(VkChromaLocation); |
| memcpy(*ptr, (VkFilter*)&forMarshaling->chromaFilter, sizeof(VkFilter)); |
| *ptr += sizeof(VkFilter); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->forceExplicitReconstruction, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkSamplerYcbcrConversionInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkSamplerYcbcrConversionInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSamplerYcbcrConversion((*&forMarshaling->conversion)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkBindImagePlaneMemoryInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkBindImagePlaneMemoryInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageAspectFlagBits*)&forMarshaling->planeAspect, |
| sizeof(VkImageAspectFlagBits)); |
| *ptr += sizeof(VkImageAspectFlagBits); |
| } |
| |
| void reservedmarshal_VkImagePlaneMemoryRequirementsInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImagePlaneMemoryRequirementsInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageAspectFlagBits*)&forMarshaling->planeAspect, |
| sizeof(VkImageAspectFlagBits)); |
| *ptr += sizeof(VkImageAspectFlagBits); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSamplerYcbcrConversionFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->samplerYcbcrConversion, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkSamplerYcbcrConversionImageFormatProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSamplerYcbcrConversionImageFormatProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->combinedImageSamplerDescriptorCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDescriptorUpdateTemplateEntry( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorUpdateTemplateEntry* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstBinding, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstArrayElement, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkDescriptorType*)&forMarshaling->descriptorType, sizeof(VkDescriptorType)); |
| *ptr += sizeof(VkDescriptorType); |
| uint64_t cgen_var_0 = (uint64_t)forMarshaling->offset; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| uint64_t cgen_var_1 = (uint64_t)forMarshaling->stride; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| } |
| |
| void reservedmarshal_VkDescriptorUpdateTemplateCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorUpdateTemplateCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDescriptorUpdateTemplateCreateFlags*)&forMarshaling->flags, |
| sizeof(VkDescriptorUpdateTemplateCreateFlags)); |
| *ptr += sizeof(VkDescriptorUpdateTemplateCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorUpdateEntryCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->descriptorUpdateEntryCount; ++i) { |
| reservedmarshal_VkDescriptorUpdateTemplateEntry( |
| vkStream, rootType, |
| (const VkDescriptorUpdateTemplateEntry*)(forMarshaling->pDescriptorUpdateEntries + i), |
| ptr); |
| } |
| memcpy(*ptr, (VkDescriptorUpdateTemplateType*)&forMarshaling->templateType, |
| sizeof(VkDescriptorUpdateTemplateType)); |
| *ptr += sizeof(VkDescriptorUpdateTemplateType); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkDescriptorSetLayout((*&forMarshaling->descriptorSetLayout)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkPipelineBindPoint*)&forMarshaling->pipelineBindPoint, |
| sizeof(VkPipelineBindPoint)); |
| *ptr += sizeof(VkPipelineBindPoint); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkPipelineLayout((*&forMarshaling->pipelineLayout)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->set, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkExternalMemoryProperties(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkExternalMemoryProperties* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkExternalMemoryFeatureFlags*)&forMarshaling->externalMemoryFeatures, |
| sizeof(VkExternalMemoryFeatureFlags)); |
| *ptr += sizeof(VkExternalMemoryFeatureFlags); |
| memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->exportFromImportedHandleTypes, |
| sizeof(VkExternalMemoryHandleTypeFlags)); |
| *ptr += sizeof(VkExternalMemoryHandleTypeFlags); |
| memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->compatibleHandleTypes, |
| sizeof(VkExternalMemoryHandleTypeFlags)); |
| *ptr += sizeof(VkExternalMemoryHandleTypeFlags); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceExternalImageFormatInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceExternalImageFormatInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType, |
| sizeof(VkExternalMemoryHandleTypeFlagBits)); |
| *ptr += sizeof(VkExternalMemoryHandleTypeFlagBits); |
| } |
| |
| void reservedmarshal_VkExternalImageFormatProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkExternalImageFormatProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkExternalMemoryProperties( |
| vkStream, rootType, (VkExternalMemoryProperties*)(&forMarshaling->externalMemoryProperties), |
| ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceExternalBufferInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceExternalBufferInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBufferCreateFlags*)&forMarshaling->flags, sizeof(VkBufferCreateFlags)); |
| *ptr += sizeof(VkBufferCreateFlags); |
| memcpy(*ptr, (VkBufferUsageFlags*)&forMarshaling->usage, sizeof(VkBufferUsageFlags)); |
| *ptr += sizeof(VkBufferUsageFlags); |
| memcpy(*ptr, (VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType, |
| sizeof(VkExternalMemoryHandleTypeFlagBits)); |
| *ptr += sizeof(VkExternalMemoryHandleTypeFlagBits); |
| } |
| |
| void reservedmarshal_VkExternalBufferProperties(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkExternalBufferProperties* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkExternalMemoryProperties( |
| vkStream, rootType, (VkExternalMemoryProperties*)(&forMarshaling->externalMemoryProperties), |
| ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceIDProperties(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPhysicalDeviceIDProperties* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint8_t*)forMarshaling->deviceUUID, VK_UUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_UUID_SIZE * sizeof(uint8_t); |
| memcpy(*ptr, (uint8_t*)forMarshaling->driverUUID, VK_UUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_UUID_SIZE * sizeof(uint8_t); |
| memcpy(*ptr, (uint8_t*)forMarshaling->deviceLUID, VK_LUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_LUID_SIZE * sizeof(uint8_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceNodeMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->deviceLUIDValid, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkExternalMemoryImageCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkExternalMemoryImageCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->handleTypes, |
| sizeof(VkExternalMemoryHandleTypeFlags)); |
| *ptr += sizeof(VkExternalMemoryHandleTypeFlags); |
| } |
| |
| void reservedmarshal_VkExternalMemoryBufferCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkExternalMemoryBufferCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->handleTypes, |
| sizeof(VkExternalMemoryHandleTypeFlags)); |
| *ptr += sizeof(VkExternalMemoryHandleTypeFlags); |
| } |
| |
| void reservedmarshal_VkExportMemoryAllocateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkExportMemoryAllocateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalMemoryHandleTypeFlags*)&forMarshaling->handleTypes, |
| sizeof(VkExternalMemoryHandleTypeFlags)); |
| *ptr += sizeof(VkExternalMemoryHandleTypeFlags); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceExternalFenceInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceExternalFenceInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalFenceHandleTypeFlagBits*)&forMarshaling->handleType, |
| sizeof(VkExternalFenceHandleTypeFlagBits)); |
| *ptr += sizeof(VkExternalFenceHandleTypeFlagBits); |
| } |
| |
| void reservedmarshal_VkExternalFenceProperties(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkExternalFenceProperties* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalFenceHandleTypeFlags*)&forMarshaling->exportFromImportedHandleTypes, |
| sizeof(VkExternalFenceHandleTypeFlags)); |
| *ptr += sizeof(VkExternalFenceHandleTypeFlags); |
| memcpy(*ptr, (VkExternalFenceHandleTypeFlags*)&forMarshaling->compatibleHandleTypes, |
| sizeof(VkExternalFenceHandleTypeFlags)); |
| *ptr += sizeof(VkExternalFenceHandleTypeFlags); |
| memcpy(*ptr, (VkExternalFenceFeatureFlags*)&forMarshaling->externalFenceFeatures, |
| sizeof(VkExternalFenceFeatureFlags)); |
| *ptr += sizeof(VkExternalFenceFeatureFlags); |
| } |
| |
| void reservedmarshal_VkExportFenceCreateInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkExportFenceCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalFenceHandleTypeFlags*)&forMarshaling->handleTypes, |
| sizeof(VkExternalFenceHandleTypeFlags)); |
| *ptr += sizeof(VkExternalFenceHandleTypeFlags); |
| } |
| |
| void reservedmarshal_VkExportSemaphoreCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkExportSemaphoreCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlags*)&forMarshaling->handleTypes, |
| sizeof(VkExternalSemaphoreHandleTypeFlags)); |
| *ptr += sizeof(VkExternalSemaphoreHandleTypeFlags); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceExternalSemaphoreInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceExternalSemaphoreInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType, |
| sizeof(VkExternalSemaphoreHandleTypeFlagBits)); |
| *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits); |
| } |
| |
| void reservedmarshal_VkExternalSemaphoreProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkExternalSemaphoreProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlags*)&forMarshaling->exportFromImportedHandleTypes, |
| sizeof(VkExternalSemaphoreHandleTypeFlags)); |
| *ptr += sizeof(VkExternalSemaphoreHandleTypeFlags); |
| memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlags*)&forMarshaling->compatibleHandleTypes, |
| sizeof(VkExternalSemaphoreHandleTypeFlags)); |
| *ptr += sizeof(VkExternalSemaphoreHandleTypeFlags); |
| memcpy(*ptr, (VkExternalSemaphoreFeatureFlags*)&forMarshaling->externalSemaphoreFeatures, |
| sizeof(VkExternalSemaphoreFeatureFlags)); |
| *ptr += sizeof(VkExternalSemaphoreFeatureFlags); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceMaintenance3Properties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMaintenance3Properties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerSetDescriptors, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxMemoryAllocationSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkDescriptorSetLayoutSupport(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkDescriptorSetLayoutSupport* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->supported, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceShaderDrawParametersFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceShaderDrawParametersFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDrawParameters, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_VERSION_1_2 |
| void reservedmarshal_VkPhysicalDeviceVulkan11Features( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceVulkan11Features* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storageBuffer16BitAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->uniformAndStorageBuffer16BitAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storagePushConstant16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storageInputOutput16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->multiview, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->multiviewGeometryShader, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->multiviewTessellationShader, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->variablePointersStorageBuffer, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->variablePointers, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->protectedMemory, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->samplerYcbcrConversion, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDrawParameters, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceVulkan11Properties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceVulkan11Properties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint8_t*)forMarshaling->deviceUUID, VK_UUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_UUID_SIZE * sizeof(uint8_t); |
| memcpy(*ptr, (uint8_t*)forMarshaling->driverUUID, VK_UUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_UUID_SIZE * sizeof(uint8_t); |
| memcpy(*ptr, (uint8_t*)forMarshaling->deviceLUID, VK_LUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_LUID_SIZE * sizeof(uint8_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceNodeMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->deviceLUIDValid, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subgroupSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->subgroupSupportedStages, |
| sizeof(VkShaderStageFlags)); |
| *ptr += sizeof(VkShaderStageFlags); |
| memcpy(*ptr, (VkSubgroupFeatureFlags*)&forMarshaling->subgroupSupportedOperations, |
| sizeof(VkSubgroupFeatureFlags)); |
| *ptr += sizeof(VkSubgroupFeatureFlags); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->subgroupQuadOperationsInAllStages, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkPointClippingBehavior*)&forMarshaling->pointClippingBehavior, |
| sizeof(VkPointClippingBehavior)); |
| *ptr += sizeof(VkPointClippingBehavior); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiviewViewCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiviewInstanceIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->protectedNoFault, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerSetDescriptors, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxMemoryAllocationSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceVulkan12Features( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceVulkan12Features* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->samplerMirrorClampToEdge, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->drawIndirectCount, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storageBuffer8BitAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->uniformAndStorageBuffer8BitAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storagePushConstant8, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferInt64Atomics, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedInt64Atomics, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInt8, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorIndexing, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformTexelBufferArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageTexelBufferArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformTexelBufferArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageTexelBufferArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUniformBufferUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingSampledImageUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageImageUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageBufferUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUniformTexelBufferUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageTexelBufferUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUpdateUnusedWhilePending, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingPartiallyBound, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingVariableDescriptorCount, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->runtimeDescriptorArray, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->samplerFilterMinmax, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->scalarBlockLayout, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->imagelessFramebuffer, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->uniformBufferStandardLayout, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupExtendedTypes, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->separateDepthStencilLayouts, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->hostQueryReset, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->timelineSemaphore, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddress, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddressCaptureReplay, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddressMultiDevice, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModel, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModelDeviceScope, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModelAvailabilityVisibilityChains, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderOutputViewportIndex, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderOutputLayer, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->subgroupBroadcastDynamicId, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkConformanceVersion(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkConformanceVersion* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint8_t*)&forMarshaling->major, sizeof(uint8_t)); |
| *ptr += sizeof(uint8_t); |
| memcpy(*ptr, (uint8_t*)&forMarshaling->minor, sizeof(uint8_t)); |
| *ptr += sizeof(uint8_t); |
| memcpy(*ptr, (uint8_t*)&forMarshaling->subminor, sizeof(uint8_t)); |
| *ptr += sizeof(uint8_t); |
| memcpy(*ptr, (uint8_t*)&forMarshaling->patch, sizeof(uint8_t)); |
| *ptr += sizeof(uint8_t); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceVulkan12Properties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceVulkan12Properties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDriverId*)&forMarshaling->driverID, sizeof(VkDriverId)); |
| *ptr += sizeof(VkDriverId); |
| memcpy(*ptr, (char*)forMarshaling->driverName, VK_MAX_DRIVER_NAME_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DRIVER_NAME_SIZE * sizeof(char); |
| memcpy(*ptr, (char*)forMarshaling->driverInfo, VK_MAX_DRIVER_INFO_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DRIVER_INFO_SIZE * sizeof(char); |
| reservedmarshal_VkConformanceVersion( |
| vkStream, rootType, (VkConformanceVersion*)(&forMarshaling->conformanceVersion), ptr); |
| memcpy(*ptr, (VkShaderFloatControlsIndependence*)&forMarshaling->denormBehaviorIndependence, |
| sizeof(VkShaderFloatControlsIndependence)); |
| *ptr += sizeof(VkShaderFloatControlsIndependence); |
| memcpy(*ptr, (VkShaderFloatControlsIndependence*)&forMarshaling->roundingModeIndependence, |
| sizeof(VkShaderFloatControlsIndependence)); |
| *ptr += sizeof(VkShaderFloatControlsIndependence); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat16, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat32, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat64, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxUpdateAfterBindDescriptorsInAllPools, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->robustBufferAccessUpdateAfterBind, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->quadDivergentImplicitLod, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindSamplers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindUniformBuffers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindStorageBuffers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindSampledImages, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindStorageImages, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindInputAttachments, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageUpdateAfterBindResources, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindSamplers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindUniformBuffers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageBuffers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindSampledImages, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageImages, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindInputAttachments, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkResolveModeFlags*)&forMarshaling->supportedDepthResolveModes, |
| sizeof(VkResolveModeFlags)); |
| *ptr += sizeof(VkResolveModeFlags); |
| memcpy(*ptr, (VkResolveModeFlags*)&forMarshaling->supportedStencilResolveModes, |
| sizeof(VkResolveModeFlags)); |
| *ptr += sizeof(VkResolveModeFlags); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->independentResolveNone, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->independentResolve, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->filterMinmaxSingleComponentFormats, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->filterMinmaxImageComponentMapping, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->maxTimelineSemaphoreValueDifference, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| memcpy(*ptr, (VkSampleCountFlags*)&forMarshaling->framebufferIntegerColorSampleCounts, |
| sizeof(VkSampleCountFlags)); |
| *ptr += sizeof(VkSampleCountFlags); |
| } |
| |
| void reservedmarshal_VkImageFormatListCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkImageFormatListCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewFormatCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const VkFormat*)forMarshaling->pViewFormats, |
| forMarshaling->viewFormatCount * sizeof(const VkFormat)); |
| *ptr += forMarshaling->viewFormatCount * sizeof(const VkFormat); |
| } |
| |
| void reservedmarshal_VkAttachmentDescription2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkAttachmentDescription2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkAttachmentDescriptionFlags*)&forMarshaling->flags, |
| sizeof(VkAttachmentDescriptionFlags)); |
| *ptr += sizeof(VkAttachmentDescriptionFlags); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->samples, sizeof(VkSampleCountFlagBits)); |
| *ptr += sizeof(VkSampleCountFlagBits); |
| memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->loadOp, sizeof(VkAttachmentLoadOp)); |
| *ptr += sizeof(VkAttachmentLoadOp); |
| memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->storeOp, sizeof(VkAttachmentStoreOp)); |
| *ptr += sizeof(VkAttachmentStoreOp); |
| memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->stencilLoadOp, sizeof(VkAttachmentLoadOp)); |
| *ptr += sizeof(VkAttachmentLoadOp); |
| memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->stencilStoreOp, sizeof(VkAttachmentStoreOp)); |
| *ptr += sizeof(VkAttachmentStoreOp); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->initialLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->finalLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| } |
| |
| void reservedmarshal_VkAttachmentReference2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkAttachmentReference2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->attachment, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->layout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkImageAspectFlags*)&forMarshaling->aspectMask, sizeof(VkImageAspectFlags)); |
| *ptr += sizeof(VkImageAspectFlags); |
| } |
| |
| void reservedmarshal_VkSubpassDescription2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubpassDescription2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSubpassDescriptionFlags*)&forMarshaling->flags, |
| sizeof(VkSubpassDescriptionFlags)); |
| *ptr += sizeof(VkSubpassDescriptionFlags); |
| memcpy(*ptr, (VkPipelineBindPoint*)&forMarshaling->pipelineBindPoint, |
| sizeof(VkPipelineBindPoint)); |
| *ptr += sizeof(VkPipelineBindPoint); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->inputAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->inputAttachmentCount; ++i) { |
| reservedmarshal_VkAttachmentReference2( |
| vkStream, rootType, |
| (const VkAttachmentReference2*)(forMarshaling->pInputAttachments + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) { |
| reservedmarshal_VkAttachmentReference2( |
| vkStream, rootType, |
| (const VkAttachmentReference2*)(forMarshaling->pColorAttachments + i), ptr); |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pResolveAttachments; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pResolveAttachments) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) { |
| reservedmarshal_VkAttachmentReference2( |
| vkStream, rootType, |
| (const VkAttachmentReference2*)(forMarshaling->pResolveAttachments + i), ptr); |
| } |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pDepthStencilAttachment; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pDepthStencilAttachment) { |
| reservedmarshal_VkAttachmentReference2( |
| vkStream, rootType, |
| (const VkAttachmentReference2*)(forMarshaling->pDepthStencilAttachment), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->preserveAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pPreserveAttachments, |
| forMarshaling->preserveAttachmentCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->preserveAttachmentCount * sizeof(const uint32_t); |
| } |
| |
| void reservedmarshal_VkSubpassDependency2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubpassDependency2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->srcSubpass, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstSubpass, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkPipelineStageFlags*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags)); |
| *ptr += sizeof(VkPipelineStageFlags); |
| memcpy(*ptr, (VkPipelineStageFlags*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags)); |
| *ptr += sizeof(VkPipelineStageFlags); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (VkAccessFlags*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags)); |
| *ptr += sizeof(VkAccessFlags); |
| memcpy(*ptr, (VkDependencyFlags*)&forMarshaling->dependencyFlags, sizeof(VkDependencyFlags)); |
| *ptr += sizeof(VkDependencyFlags); |
| memcpy(*ptr, (int32_t*)&forMarshaling->viewOffset, sizeof(int32_t)); |
| *ptr += sizeof(int32_t); |
| } |
| |
| void reservedmarshal_VkRenderPassCreateInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderPassCreateInfo2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkRenderPassCreateFlags*)&forMarshaling->flags, sizeof(VkRenderPassCreateFlags)); |
| *ptr += sizeof(VkRenderPassCreateFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->attachmentCount; ++i) { |
| reservedmarshal_VkAttachmentDescription2( |
| vkStream, rootType, (const VkAttachmentDescription2*)(forMarshaling->pAttachments + i), |
| ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subpassCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->subpassCount; ++i) { |
| reservedmarshal_VkSubpassDescription2( |
| vkStream, rootType, (const VkSubpassDescription2*)(forMarshaling->pSubpasses + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dependencyCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->dependencyCount; ++i) { |
| reservedmarshal_VkSubpassDependency2( |
| vkStream, rootType, (const VkSubpassDependency2*)(forMarshaling->pDependencies + i), |
| ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->correlatedViewMaskCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pCorrelatedViewMasks, |
| forMarshaling->correlatedViewMaskCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->correlatedViewMaskCount * sizeof(const uint32_t); |
| } |
| |
| void reservedmarshal_VkSubpassBeginInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubpassBeginInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSubpassContents*)&forMarshaling->contents, sizeof(VkSubpassContents)); |
| *ptr += sizeof(VkSubpassContents); |
| } |
| |
| void reservedmarshal_VkSubpassEndInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubpassEndInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDevice8BitStorageFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevice8BitStorageFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storageBuffer8BitAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->uniformAndStorageBuffer8BitAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storagePushConstant8, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceDriverProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceDriverProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDriverId*)&forMarshaling->driverID, sizeof(VkDriverId)); |
| *ptr += sizeof(VkDriverId); |
| memcpy(*ptr, (char*)forMarshaling->driverName, VK_MAX_DRIVER_NAME_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DRIVER_NAME_SIZE * sizeof(char); |
| memcpy(*ptr, (char*)forMarshaling->driverInfo, VK_MAX_DRIVER_INFO_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DRIVER_INFO_SIZE * sizeof(char); |
| reservedmarshal_VkConformanceVersion( |
| vkStream, rootType, (VkConformanceVersion*)(&forMarshaling->conformanceVersion), ptr); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceShaderAtomicInt64Features( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceShaderAtomicInt64Features* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferInt64Atomics, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedInt64Atomics, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceShaderFloat16Int8Features( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceShaderFloat16Int8Features* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInt8, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceFloatControlsProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceFloatControlsProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkShaderFloatControlsIndependence*)&forMarshaling->denormBehaviorIndependence, |
| sizeof(VkShaderFloatControlsIndependence)); |
| *ptr += sizeof(VkShaderFloatControlsIndependence); |
| memcpy(*ptr, (VkShaderFloatControlsIndependence*)&forMarshaling->roundingModeIndependence, |
| sizeof(VkShaderFloatControlsIndependence)); |
| *ptr += sizeof(VkShaderFloatControlsIndependence); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat16, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat32, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSignedZeroInfNanPreserveFloat64, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormPreserveFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDenormFlushToZeroFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTEFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat16, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderRoundingModeRTZFloat64, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorSetLayoutBindingFlagsCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bindingCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pBindingFlags; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pBindingFlags) { |
| memcpy(*ptr, (const VkDescriptorBindingFlags*)forMarshaling->pBindingFlags, |
| forMarshaling->bindingCount * sizeof(const VkDescriptorBindingFlags)); |
| *ptr += forMarshaling->bindingCount * sizeof(const VkDescriptorBindingFlags); |
| } |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceDescriptorIndexingFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceDescriptorIndexingFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformTexelBufferArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageTexelBufferArrayDynamicIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformTexelBufferArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageTexelBufferArrayNonUniformIndexing, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUniformBufferUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingSampledImageUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageImageUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageBufferUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUniformTexelBufferUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingStorageTexelBufferUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingUpdateUnusedWhilePending, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingPartiallyBound, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingVariableDescriptorCount, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->runtimeDescriptorArray, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceDescriptorIndexingProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceDescriptorIndexingProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxUpdateAfterBindDescriptorsInAllPools, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderUniformBufferArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSampledImageArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageBufferArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderStorageImageArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderInputAttachmentArrayNonUniformIndexingNative, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->robustBufferAccessUpdateAfterBind, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->quadDivergentImplicitLod, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindSamplers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindUniformBuffers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindStorageBuffers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindSampledImages, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindStorageImages, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindInputAttachments, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageUpdateAfterBindResources, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindSamplers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindUniformBuffers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageBuffers, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindSampledImages, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindStorageImages, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindInputAttachments, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorSetVariableDescriptorCountAllocateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorSetCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pDescriptorCounts, |
| forMarshaling->descriptorSetCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->descriptorSetCount * sizeof(const uint32_t); |
| } |
| |
| void reservedmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupport( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorSetVariableDescriptorCountLayoutSupport* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxVariableDescriptorCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkSubpassDescriptionDepthStencilResolve( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubpassDescriptionDepthStencilResolve* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkResolveModeFlagBits*)&forMarshaling->depthResolveMode, |
| sizeof(VkResolveModeFlagBits)); |
| *ptr += sizeof(VkResolveModeFlagBits); |
| memcpy(*ptr, (VkResolveModeFlagBits*)&forMarshaling->stencilResolveMode, |
| sizeof(VkResolveModeFlagBits)); |
| *ptr += sizeof(VkResolveModeFlagBits); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDepthStencilResolveAttachment; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pDepthStencilResolveAttachment) { |
| reservedmarshal_VkAttachmentReference2( |
| vkStream, rootType, |
| (const VkAttachmentReference2*)(forMarshaling->pDepthStencilResolveAttachment), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceDepthStencilResolveProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceDepthStencilResolveProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkResolveModeFlags*)&forMarshaling->supportedDepthResolveModes, |
| sizeof(VkResolveModeFlags)); |
| *ptr += sizeof(VkResolveModeFlags); |
| memcpy(*ptr, (VkResolveModeFlags*)&forMarshaling->supportedStencilResolveModes, |
| sizeof(VkResolveModeFlags)); |
| *ptr += sizeof(VkResolveModeFlags); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->independentResolveNone, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->independentResolve, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceScalarBlockLayoutFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceScalarBlockLayoutFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->scalarBlockLayout, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkImageStencilUsageCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageStencilUsageCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->stencilUsage, sizeof(VkImageUsageFlags)); |
| *ptr += sizeof(VkImageUsageFlags); |
| } |
| |
| void reservedmarshal_VkSamplerReductionModeCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSamplerReductionModeCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSamplerReductionMode*)&forMarshaling->reductionMode, |
| sizeof(VkSamplerReductionMode)); |
| *ptr += sizeof(VkSamplerReductionMode); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceSamplerFilterMinmaxProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSamplerFilterMinmaxProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->filterMinmaxSingleComponentFormats, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->filterMinmaxImageComponentMapping, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceVulkanMemoryModelFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceVulkanMemoryModelFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModel, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModelDeviceScope, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->vulkanMemoryModelAvailabilityVisibilityChains, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceImagelessFramebufferFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceImagelessFramebufferFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->imagelessFramebuffer, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkFramebufferAttachmentImageInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkFramebufferAttachmentImageInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageCreateFlags*)&forMarshaling->flags, sizeof(VkImageCreateFlags)); |
| *ptr += sizeof(VkImageCreateFlags); |
| memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->usage, sizeof(VkImageUsageFlags)); |
| *ptr += sizeof(VkImageUsageFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->width, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->height, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewFormatCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const VkFormat*)forMarshaling->pViewFormats, |
| forMarshaling->viewFormatCount * sizeof(const VkFormat)); |
| *ptr += forMarshaling->viewFormatCount * sizeof(const VkFormat); |
| } |
| |
| void reservedmarshal_VkFramebufferAttachmentsCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkFramebufferAttachmentsCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentImageInfoCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->attachmentImageInfoCount; ++i) { |
| reservedmarshal_VkFramebufferAttachmentImageInfo( |
| vkStream, rootType, |
| (const VkFramebufferAttachmentImageInfo*)(forMarshaling->pAttachmentImageInfos + i), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkRenderPassAttachmentBeginInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderPassAttachmentBeginInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->attachmentCount) { |
| uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->attachmentCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkImageView(forMarshaling->pAttachments[k]); |
| memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->attachmentCount; |
| } |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceUniformBufferStandardLayoutFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->uniformBufferStandardLayout, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupExtendedTypes, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->separateDepthStencilLayouts, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkAttachmentReferenceStencilLayout( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkAttachmentReferenceStencilLayout* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->stencilLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| } |
| |
| void reservedmarshal_VkAttachmentDescriptionStencilLayout( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkAttachmentDescriptionStencilLayout* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->stencilInitialLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->stencilFinalLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceHostQueryResetFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceHostQueryResetFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->hostQueryReset, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceTimelineSemaphoreFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceTimelineSemaphoreFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->timelineSemaphore, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceTimelineSemaphoreProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceTimelineSemaphoreProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->maxTimelineSemaphoreValueDifference, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| } |
| |
| void reservedmarshal_VkSemaphoreTypeCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkSemaphoreTypeCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSemaphoreType*)&forMarshaling->semaphoreType, sizeof(VkSemaphoreType)); |
| *ptr += sizeof(VkSemaphoreType); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->initialValue, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| } |
| |
| void reservedmarshal_VkTimelineSemaphoreSubmitInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkTimelineSemaphoreSubmitInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreValueCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pWaitSemaphoreValues; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pWaitSemaphoreValues) { |
| memcpy(*ptr, (const uint64_t*)forMarshaling->pWaitSemaphoreValues, |
| forMarshaling->waitSemaphoreValueCount * sizeof(const uint64_t)); |
| *ptr += forMarshaling->waitSemaphoreValueCount * sizeof(const uint64_t); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreValueCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pSignalSemaphoreValues; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pSignalSemaphoreValues) { |
| memcpy(*ptr, (const uint64_t*)forMarshaling->pSignalSemaphoreValues, |
| forMarshaling->signalSemaphoreValueCount * sizeof(const uint64_t)); |
| *ptr += forMarshaling->signalSemaphoreValueCount * sizeof(const uint64_t); |
| } |
| } |
| |
| void reservedmarshal_VkSemaphoreWaitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSemaphoreWaitInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSemaphoreWaitFlags*)&forMarshaling->flags, sizeof(VkSemaphoreWaitFlags)); |
| *ptr += sizeof(VkSemaphoreWaitFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->semaphoreCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->semaphoreCount) { |
| uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->semaphoreCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pSemaphores[k]); |
| memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->semaphoreCount; |
| } |
| memcpy(*ptr, (const uint64_t*)forMarshaling->pValues, |
| forMarshaling->semaphoreCount * sizeof(const uint64_t)); |
| *ptr += forMarshaling->semaphoreCount * sizeof(const uint64_t); |
| } |
| |
| void reservedmarshal_VkSemaphoreSignalInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSemaphoreSignalInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint64_t*)&forMarshaling->value, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceBufferDeviceAddressFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceBufferDeviceAddressFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddress, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddressCaptureReplay, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->bufferDeviceAddressMultiDevice, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkBufferDeviceAddressInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkBufferDeviceAddressInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkBufferOpaqueCaptureAddressCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferOpaqueCaptureAddressCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->opaqueCaptureAddress, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| } |
| |
| void reservedmarshal_VkMemoryOpaqueCaptureAddressAllocateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryOpaqueCaptureAddressAllocateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->opaqueCaptureAddress, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| } |
| |
| void reservedmarshal_VkDeviceMemoryOpaqueCaptureAddressInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceMemoryOpaqueCaptureAddressInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| #endif |
| #ifdef VK_VERSION_1_3 |
| void reservedmarshal_VkPhysicalDeviceVulkan13Features( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceVulkan13Features* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->robustImageAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->inlineUniformBlock, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingInlineUniformBlockUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineCreationCacheControl, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->privateData, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDemoteToHelperInvocation, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderTerminateInvocation, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->subgroupSizeControl, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->computeFullSubgroups, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->synchronization2, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionASTC_HDR, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderZeroInitializeWorkgroupMemory, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRendering, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderIntegerDotProduct, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance4, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceVulkan13Properties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceVulkan13Properties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->minSubgroupSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxSubgroupSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxComputeWorkgroupSubgroups, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->requiredSubgroupSizeStages, |
| sizeof(VkShaderStageFlags)); |
| *ptr += sizeof(VkShaderStageFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxInlineUniformBlockSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorInlineUniformBlocks, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetInlineUniformBlocks, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindInlineUniformBlocks, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxInlineUniformTotalSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy( |
| *ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy( |
| *ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy( |
| *ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy( |
| *ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->storageTexelBufferOffsetAlignmentBytes, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storageTexelBufferOffsetSingleTexelAlignment, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->uniformTexelBufferOffsetAlignmentBytes, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->uniformTexelBufferOffsetSingleTexelAlignment, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxBufferSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkPipelineCreationFeedback(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPipelineCreationFeedback* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkPipelineCreationFeedbackFlags*)&forMarshaling->flags, |
| sizeof(VkPipelineCreationFeedbackFlags)); |
| *ptr += sizeof(VkPipelineCreationFeedbackFlags); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->duration, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| } |
| |
| void reservedmarshal_VkPipelineCreationFeedbackCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineCreationFeedbackCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkPipelineCreationFeedback( |
| vkStream, rootType, (VkPipelineCreationFeedback*)(forMarshaling->pPipelineCreationFeedback), |
| ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->pipelineStageCreationFeedbackCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->pipelineStageCreationFeedbackCount; ++i) { |
| reservedmarshal_VkPipelineCreationFeedback( |
| vkStream, rootType, |
| (VkPipelineCreationFeedback*)(forMarshaling->pPipelineStageCreationFeedbacks + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceShaderTerminateInvocationFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceShaderTerminateInvocationFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderTerminateInvocation, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceToolProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceToolProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)); |
| *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char); |
| memcpy(*ptr, (char*)forMarshaling->version, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)); |
| *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char); |
| memcpy(*ptr, (VkToolPurposeFlags*)&forMarshaling->purposes, sizeof(VkToolPurposeFlags)); |
| *ptr += sizeof(VkToolPurposeFlags); |
| memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char); |
| memcpy(*ptr, (char*)forMarshaling->layer, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)); |
| *ptr += VK_MAX_EXTENSION_NAME_SIZE * sizeof(char); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderDemoteToHelperInvocation, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDevicePrivateDataFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevicePrivateDataFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->privateData, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkDevicePrivateDataCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDevicePrivateDataCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->privateDataSlotRequestCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPrivateDataSlotCreateInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPrivateDataSlotCreateInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPrivateDataSlotCreateFlags*)&forMarshaling->flags, |
| sizeof(VkPrivateDataSlotCreateFlags)); |
| *ptr += sizeof(VkPrivateDataSlotCreateFlags); |
| } |
| |
| void reservedmarshal_VkPhysicalDevicePipelineCreationCacheControlFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevicePipelineCreationCacheControlFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineCreationCacheControl, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkMemoryBarrier2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryBarrier2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->srcStageMask, |
| sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2)); |
| *ptr += sizeof(VkAccessFlags2); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->dstStageMask, |
| sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2)); |
| *ptr += sizeof(VkAccessFlags2); |
| } |
| |
| void reservedmarshal_VkBufferMemoryBarrier2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferMemoryBarrier2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->srcStageMask, |
| sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2)); |
| *ptr += sizeof(VkAccessFlags2); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->dstStageMask, |
| sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2)); |
| *ptr += sizeof(VkAccessFlags2); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkImageMemoryBarrier2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageMemoryBarrier2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->srcStageMask, |
| sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2)); |
| *ptr += sizeof(VkAccessFlags2); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->dstStageMask, |
| sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| memcpy(*ptr, (VkAccessFlags2*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2)); |
| *ptr += sizeof(VkAccessFlags2); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| reservedmarshal_VkImageSubresourceRange( |
| vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr); |
| } |
| |
| void reservedmarshal_VkDependencyInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDependencyInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDependencyFlags*)&forMarshaling->dependencyFlags, sizeof(VkDependencyFlags)); |
| *ptr += sizeof(VkDependencyFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryBarrierCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->memoryBarrierCount; ++i) { |
| reservedmarshal_VkMemoryBarrier2( |
| vkStream, rootType, (const VkMemoryBarrier2*)(forMarshaling->pMemoryBarriers + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bufferMemoryBarrierCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->bufferMemoryBarrierCount; ++i) { |
| reservedmarshal_VkBufferMemoryBarrier2( |
| vkStream, rootType, |
| (const VkBufferMemoryBarrier2*)(forMarshaling->pBufferMemoryBarriers + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->imageMemoryBarrierCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->imageMemoryBarrierCount; ++i) { |
| reservedmarshal_VkImageMemoryBarrier2( |
| vkStream, rootType, |
| (const VkImageMemoryBarrier2*)(forMarshaling->pImageMemoryBarriers + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkSemaphoreSubmitInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSemaphoreSubmitInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint64_t*)&forMarshaling->value, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->stageMask, sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkCommandBufferSubmitInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkCommandBufferSubmitInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&forMarshaling->commandBuffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkSubmitInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubmitInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSubmitFlags*)&forMarshaling->flags, sizeof(VkSubmitFlags)); |
| *ptr += sizeof(VkSubmitFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreInfoCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->waitSemaphoreInfoCount; ++i) { |
| reservedmarshal_VkSemaphoreSubmitInfo( |
| vkStream, rootType, |
| (const VkSemaphoreSubmitInfo*)(forMarshaling->pWaitSemaphoreInfos + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferInfoCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->commandBufferInfoCount; ++i) { |
| reservedmarshal_VkCommandBufferSubmitInfo( |
| vkStream, rootType, |
| (const VkCommandBufferSubmitInfo*)(forMarshaling->pCommandBufferInfos + i), ptr); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreInfoCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->signalSemaphoreInfoCount; ++i) { |
| reservedmarshal_VkSemaphoreSubmitInfo( |
| vkStream, rootType, |
| (const VkSemaphoreSubmitInfo*)(forMarshaling->pSignalSemaphoreInfos + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceSynchronization2Features( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSynchronization2Features* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->synchronization2, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderZeroInitializeWorkgroupMemory, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceImageRobustnessFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceImageRobustnessFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->robustImageAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkBufferCopy2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferCopy2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->srcOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->dstOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkCopyBufferInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCopyBufferInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->srcBuffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkBuffer((*&forMarshaling->dstBuffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkBufferCopy2(vkStream, rootType, |
| (const VkBufferCopy2*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkImageCopy2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageCopy2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->srcOffset), ptr); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->dstOffset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr); |
| } |
| |
| void reservedmarshal_VkCopyImageInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCopyImageInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkImageCopy2(vkStream, rootType, |
| (const VkImageCopy2*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkBufferImageCopy2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferImageCopy2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->bufferOffset, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bufferRowLength, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->bufferImageHeight, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr); |
| } |
| |
| void reservedmarshal_VkCopyBufferToImageInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCopyBufferToImageInfo2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->srcBuffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkBufferImageCopy2( |
| vkStream, rootType, (const VkBufferImageCopy2*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkCopyImageToBufferInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCopyImageToBufferInfo2* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkBuffer((*&forMarshaling->dstBuffer)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkBufferImageCopy2( |
| vkStream, rootType, (const VkBufferImageCopy2*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkImageBlit2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageBlit2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr); |
| for (uint32_t i = 0; i < (uint32_t)2; ++i) { |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(forMarshaling->srcOffsets + i), |
| ptr); |
| } |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr); |
| for (uint32_t i = 0; i < (uint32_t)2; ++i) { |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(forMarshaling->dstOffsets + i), |
| ptr); |
| } |
| } |
| |
| void reservedmarshal_VkBlitImageInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBlitImageInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkImageBlit2(vkStream, rootType, |
| (const VkImageBlit2*)(forMarshaling->pRegions + i), ptr); |
| } |
| memcpy(*ptr, (VkFilter*)&forMarshaling->filter, sizeof(VkFilter)); |
| *ptr += sizeof(VkFilter); |
| } |
| |
| void reservedmarshal_VkImageResolve2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageResolve2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->srcSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->srcOffset), ptr); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->dstSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->dstOffset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->extent), ptr); |
| } |
| |
| void reservedmarshal_VkResolveImageInfo2(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkResolveImageInfo2* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkImageResolve2(vkStream, rootType, |
| (const VkImageResolve2*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceSubgroupSizeControlFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSubgroupSizeControlFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->subgroupSizeControl, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->computeFullSubgroups, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceSubgroupSizeControlProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSubgroupSizeControlProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->minSubgroupSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxSubgroupSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxComputeWorkgroupSubgroups, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->requiredSubgroupSizeStages, |
| sizeof(VkShaderStageFlags)); |
| *ptr += sizeof(VkShaderStageFlags); |
| } |
| |
| void reservedmarshal_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->requiredSubgroupSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceInlineUniformBlockFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceInlineUniformBlockFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->inlineUniformBlock, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->descriptorBindingInlineUniformBlockUpdateAfterBind, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceInlineUniformBlockProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceInlineUniformBlockProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxInlineUniformBlockSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorInlineUniformBlocks, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetInlineUniformBlocks, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxDescriptorSetUpdateAfterBindInlineUniformBlocks, |
| sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkWriteDescriptorSetInlineUniformBlock( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkWriteDescriptorSetInlineUniformBlock* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->dataSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const void*)forMarshaling->pData, |
| forMarshaling->dataSize * sizeof(const uint8_t)); |
| *ptr += forMarshaling->dataSize * sizeof(const uint8_t); |
| } |
| |
| void reservedmarshal_VkDescriptorPoolInlineUniformBlockCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDescriptorPoolInlineUniformBlockCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxInlineUniformBlockBindings, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceTextureCompressionASTCHDRFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceTextureCompressionASTCHDRFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->textureCompressionASTC_HDR, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkRenderingAttachmentInfo(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkRenderingAttachmentInfo* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkResolveModeFlagBits*)&forMarshaling->resolveMode, |
| sizeof(VkResolveModeFlagBits)); |
| *ptr += sizeof(VkResolveModeFlagBits); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkImageView((*&forMarshaling->resolveImageView)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->resolveImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->loadOp, sizeof(VkAttachmentLoadOp)); |
| *ptr += sizeof(VkAttachmentLoadOp); |
| memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->storeOp, sizeof(VkAttachmentStoreOp)); |
| *ptr += sizeof(VkAttachmentStoreOp); |
| reservedmarshal_VkClearValue(vkStream, rootType, (VkClearValue*)(&forMarshaling->clearValue), |
| ptr); |
| } |
| |
| void reservedmarshal_VkRenderingInfo(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderingInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkRenderingFlags*)&forMarshaling->flags, sizeof(VkRenderingFlags)); |
| *ptr += sizeof(VkRenderingFlags); |
| reservedmarshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forMarshaling->renderArea), ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i) { |
| reservedmarshal_VkRenderingAttachmentInfo( |
| vkStream, rootType, |
| (const VkRenderingAttachmentInfo*)(forMarshaling->pColorAttachments + i), ptr); |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDepthAttachment; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pDepthAttachment) { |
| reservedmarshal_VkRenderingAttachmentInfo( |
| vkStream, rootType, (const VkRenderingAttachmentInfo*)(forMarshaling->pDepthAttachment), |
| ptr); |
| } |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pStencilAttachment; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pStencilAttachment) { |
| reservedmarshal_VkRenderingAttachmentInfo( |
| vkStream, rootType, |
| (const VkRenderingAttachmentInfo*)(forMarshaling->pStencilAttachment), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkPipelineRenderingCreateInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineRenderingCreateInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentFormats; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pColorAttachmentFormats) { |
| memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats, |
| forMarshaling->colorAttachmentCount * sizeof(const VkFormat)); |
| *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat); |
| } |
| memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceDynamicRenderingFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceDynamicRenderingFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRendering, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkCommandBufferInheritanceRenderingInfo( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCommandBufferInheritanceRenderingInfo* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkRenderingFlags*)&forMarshaling->flags, sizeof(VkRenderingFlags)); |
| *ptr += sizeof(VkRenderingFlags); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats, |
| forMarshaling->colorAttachmentCount * sizeof(const VkFormat)); |
| *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->rasterizationSamples, |
| sizeof(VkSampleCountFlagBits)); |
| *ptr += sizeof(VkSampleCountFlagBits); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeatures( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceShaderIntegerDotProductFeatures* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->shaderIntegerDotProduct, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceShaderIntegerDotProductProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy( |
| *ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy( |
| *ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy( |
| *ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy( |
| *ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitSignedAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling |
| ->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentProperties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceTexelBufferAlignmentProperties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->storageTexelBufferOffsetAlignmentBytes, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->storageTexelBufferOffsetSingleTexelAlignment, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->uniformTexelBufferOffsetAlignmentBytes, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->uniformTexelBufferOffsetSingleTexelAlignment, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkFormatProperties3(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkFormatProperties3* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkFormatFeatureFlags2*)&forMarshaling->linearTilingFeatures, |
| sizeof(VkFormatFeatureFlags2)); |
| *ptr += sizeof(VkFormatFeatureFlags2); |
| memcpy(*ptr, (VkFormatFeatureFlags2*)&forMarshaling->optimalTilingFeatures, |
| sizeof(VkFormatFeatureFlags2)); |
| *ptr += sizeof(VkFormatFeatureFlags2); |
| memcpy(*ptr, (VkFormatFeatureFlags2*)&forMarshaling->bufferFeatures, |
| sizeof(VkFormatFeatureFlags2)); |
| *ptr += sizeof(VkFormatFeatureFlags2); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceMaintenance4Features( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMaintenance4Features* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance4, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceMaintenance4Properties( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMaintenance4Properties* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxBufferSize, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkDeviceBufferMemoryRequirements( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceBufferMemoryRequirements* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkBufferCreateInfo( |
| vkStream, rootType, (const VkBufferCreateInfo*)(forMarshaling->pCreateInfo), ptr); |
| } |
| |
| void reservedmarshal_VkDeviceImageMemoryRequirements( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceImageMemoryRequirements* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkImageCreateInfo(vkStream, rootType, |
| (const VkImageCreateInfo*)(forMarshaling->pCreateInfo), ptr); |
| memcpy(*ptr, (VkImageAspectFlagBits*)&forMarshaling->planeAspect, |
| sizeof(VkImageAspectFlagBits)); |
| *ptr += sizeof(VkImageAspectFlagBits); |
| } |
| |
| #endif |
| #ifdef VK_KHR_surface |
| #endif |
| #ifdef VK_KHR_swapchain |
| void reservedmarshal_VkSwapchainCreateInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSwapchainCreateInfoKHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSwapchainCreateFlagsKHR*)&forMarshaling->flags, |
| sizeof(VkSwapchainCreateFlagsKHR)); |
| *ptr += sizeof(VkSwapchainCreateFlagsKHR); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSurfaceKHR((*&forMarshaling->surface)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->minImageCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->imageFormat, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkColorSpaceKHR*)&forMarshaling->imageColorSpace, sizeof(VkColorSpaceKHR)); |
| *ptr += sizeof(VkColorSpaceKHR); |
| reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->imageExtent), ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->imageArrayLayers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->imageUsage, sizeof(VkImageUsageFlags)); |
| *ptr += sizeof(VkImageUsageFlags); |
| memcpy(*ptr, (VkSharingMode*)&forMarshaling->imageSharingMode, sizeof(VkSharingMode)); |
| *ptr += sizeof(VkSharingMode); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndexCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pQueueFamilyIndices; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pQueueFamilyIndices) { |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pQueueFamilyIndices, |
| forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->queueFamilyIndexCount * sizeof(const uint32_t); |
| } |
| memcpy(*ptr, (VkSurfaceTransformFlagBitsKHR*)&forMarshaling->preTransform, |
| sizeof(VkSurfaceTransformFlagBitsKHR)); |
| *ptr += sizeof(VkSurfaceTransformFlagBitsKHR); |
| memcpy(*ptr, (VkCompositeAlphaFlagBitsKHR*)&forMarshaling->compositeAlpha, |
| sizeof(VkCompositeAlphaFlagBitsKHR)); |
| *ptr += sizeof(VkCompositeAlphaFlagBitsKHR); |
| memcpy(*ptr, (VkPresentModeKHR*)&forMarshaling->presentMode, sizeof(VkPresentModeKHR)); |
| *ptr += sizeof(VkPresentModeKHR); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->clipped, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| uint64_t cgen_var_2; |
| *&cgen_var_2 = get_host_u64_VkSwapchainKHR((*&forMarshaling->oldSwapchain)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_2, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkPresentInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPresentInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->waitSemaphoreCount) { |
| uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->waitSemaphoreCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkSemaphore(forMarshaling->pWaitSemaphores[k]); |
| memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->waitSemaphoreCount; |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->swapchainCount) { |
| uint8_t* cgen_var_1_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->swapchainCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkSwapchainKHR(forMarshaling->pSwapchains[k]); |
| memcpy(cgen_var_1_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->swapchainCount; |
| } |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pImageIndices, |
| forMarshaling->swapchainCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->swapchainCount * sizeof(const uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pResults; |
| memcpy((*ptr), &cgen_var_2, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pResults) { |
| memcpy(*ptr, (VkResult*)forMarshaling->pResults, |
| forMarshaling->swapchainCount * sizeof(VkResult)); |
| *ptr += forMarshaling->swapchainCount * sizeof(VkResult); |
| } |
| } |
| |
| void reservedmarshal_VkImageSwapchainCreateInfoKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageSwapchainCreateInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSwapchainKHR((*&forMarshaling->swapchain)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkBindImageMemorySwapchainInfoKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBindImageMemorySwapchainInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSwapchainKHR((*&forMarshaling->swapchain)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->imageIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkAcquireNextImageInfoKHR(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkAcquireNextImageInfoKHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSwapchainKHR((*&forMarshaling->swapchain)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint64_t*)&forMarshaling->timeout, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| uint64_t cgen_var_2; |
| *&cgen_var_2 = get_host_u64_VkFence((*&forMarshaling->fence)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_2, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDeviceGroupPresentCapabilitiesKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceGroupPresentCapabilitiesKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)forMarshaling->presentMask, |
| VK_MAX_DEVICE_GROUP_SIZE * sizeof(uint32_t)); |
| *ptr += VK_MAX_DEVICE_GROUP_SIZE * sizeof(uint32_t); |
| memcpy(*ptr, (VkDeviceGroupPresentModeFlagsKHR*)&forMarshaling->modes, |
| sizeof(VkDeviceGroupPresentModeFlagsKHR)); |
| *ptr += sizeof(VkDeviceGroupPresentModeFlagsKHR); |
| } |
| |
| void reservedmarshal_VkDeviceGroupPresentInfoKHR(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkDeviceGroupPresentInfoKHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pDeviceMasks, |
| forMarshaling->swapchainCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->swapchainCount * sizeof(const uint32_t); |
| memcpy(*ptr, (VkDeviceGroupPresentModeFlagBitsKHR*)&forMarshaling->mode, |
| sizeof(VkDeviceGroupPresentModeFlagBitsKHR)); |
| *ptr += sizeof(VkDeviceGroupPresentModeFlagBitsKHR); |
| } |
| |
| void reservedmarshal_VkDeviceGroupSwapchainCreateInfoKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceGroupSwapchainCreateInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceGroupPresentModeFlagsKHR*)&forMarshaling->modes, |
| sizeof(VkDeviceGroupPresentModeFlagsKHR)); |
| *ptr += sizeof(VkDeviceGroupPresentModeFlagsKHR); |
| } |
| |
| #endif |
| #ifdef VK_KHR_xcb_surface |
| #endif |
| #ifdef VK_KHR_android_surface |
| #endif |
| #ifdef VK_KHR_win32_surface |
| #endif |
| #ifdef VK_KHR_dynamic_rendering |
| void reservedmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderingFragmentShadingRateAttachmentInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| reservedmarshal_VkExtent2D(vkStream, rootType, |
| (VkExtent2D*)(&forMarshaling->shadingRateAttachmentTexelSize), ptr); |
| } |
| |
| void reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderingFragmentDensityMapAttachmentInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| } |
| |
| void reservedmarshal_VkAttachmentSampleCountInfoAMD( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkAttachmentSampleCountInfoAMD* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentSamples; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pColorAttachmentSamples) { |
| memcpy(*ptr, (const VkSampleCountFlagBits*)forMarshaling->pColorAttachmentSamples, |
| forMarshaling->colorAttachmentCount * sizeof(const VkSampleCountFlagBits)); |
| *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkSampleCountFlagBits); |
| } |
| memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->depthStencilAttachmentSamples, |
| sizeof(VkSampleCountFlagBits)); |
| *ptr += sizeof(VkSampleCountFlagBits); |
| } |
| |
| void reservedmarshal_VkMultiviewPerViewAttributesInfoNVX( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMultiviewPerViewAttributesInfoNVX* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->perViewAttributes, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->perViewAttributesPositionXOnly, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_KHR_get_physical_device_properties2 |
| #endif |
| #ifdef VK_KHR_maintenance1 |
| #endif |
| #ifdef VK_KHR_external_memory_capabilities |
| #endif |
| #ifdef VK_KHR_external_memory |
| #endif |
| #ifdef VK_KHR_external_memory_win32 |
| #endif |
| #ifdef VK_KHR_external_memory_fd |
| #endif |
| #ifdef VK_KHR_external_semaphore_capabilities |
| #endif |
| #ifdef VK_KHR_external_semaphore |
| #endif |
| #ifdef VK_KHR_external_semaphore_win32 |
| #endif |
| #ifdef VK_KHR_external_semaphore_fd |
| void reservedmarshal_VkImportSemaphoreFdInfoKHR(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkImportSemaphoreFdInfoKHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkSemaphoreImportFlags*)&forMarshaling->flags, sizeof(VkSemaphoreImportFlags)); |
| *ptr += sizeof(VkSemaphoreImportFlags); |
| memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType, |
| sizeof(VkExternalSemaphoreHandleTypeFlagBits)); |
| *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits); |
| memcpy(*ptr, (int*)&forMarshaling->fd, sizeof(int)); |
| *ptr += sizeof(int); |
| } |
| |
| void reservedmarshal_VkSemaphoreGetFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSemaphoreGetFdInfoKHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType, |
| sizeof(VkExternalSemaphoreHandleTypeFlagBits)); |
| *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits); |
| } |
| |
| #endif |
| #ifdef VK_KHR_shader_float16_int8 |
| #endif |
| #ifdef VK_KHR_incremental_present |
| void reservedmarshal_VkRectLayerKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRectLayerKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| reservedmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->offset), ptr); |
| reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->extent), ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->layer, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPresentRegionKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPresentRegionKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->rectangleCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pRectangles; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pRectangles) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->rectangleCount; ++i) { |
| reservedmarshal_VkRectLayerKHR( |
| vkStream, rootType, (const VkRectLayerKHR*)(forMarshaling->pRectangles + i), ptr); |
| } |
| } |
| } |
| |
| void reservedmarshal_VkPresentRegionsKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPresentRegionsKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pRegions; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pRegions) { |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->swapchainCount; ++i) { |
| reservedmarshal_VkPresentRegionKHR( |
| vkStream, rootType, (const VkPresentRegionKHR*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| } |
| |
| #endif |
| #ifdef VK_KHR_descriptor_update_template |
| #endif |
| #ifdef VK_KHR_imageless_framebuffer |
| #endif |
| #ifdef VK_KHR_create_renderpass2 |
| #endif |
| #ifdef VK_KHR_external_fence_capabilities |
| #endif |
| #ifdef VK_KHR_external_fence |
| #endif |
| #ifdef VK_KHR_external_fence_fd |
| void reservedmarshal_VkImportFenceFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImportFenceFdInfoKHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkFence((*&forMarshaling->fence)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkFenceImportFlags*)&forMarshaling->flags, sizeof(VkFenceImportFlags)); |
| *ptr += sizeof(VkFenceImportFlags); |
| memcpy(*ptr, (VkExternalFenceHandleTypeFlagBits*)&forMarshaling->handleType, |
| sizeof(VkExternalFenceHandleTypeFlagBits)); |
| *ptr += sizeof(VkExternalFenceHandleTypeFlagBits); |
| memcpy(*ptr, (int*)&forMarshaling->fd, sizeof(int)); |
| *ptr += sizeof(int); |
| } |
| |
| void reservedmarshal_VkFenceGetFdInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkFenceGetFdInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkFence((*&forMarshaling->fence)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkExternalFenceHandleTypeFlagBits*)&forMarshaling->handleType, |
| sizeof(VkExternalFenceHandleTypeFlagBits)); |
| *ptr += sizeof(VkExternalFenceHandleTypeFlagBits); |
| } |
| |
| #endif |
| #ifdef VK_KHR_maintenance2 |
| #endif |
| #ifdef VK_KHR_dedicated_allocation |
| #endif |
| #ifdef VK_KHR_storage_buffer_storage_class |
| #endif |
| #ifdef VK_KHR_get_memory_requirements2 |
| #endif |
| #ifdef VK_KHR_image_format_list |
| #endif |
| #ifdef VK_KHR_sampler_ycbcr_conversion |
| #endif |
| #ifdef VK_KHR_bind_memory2 |
| #endif |
| #ifdef VK_KHR_maintenance3 |
| #endif |
| #ifdef VK_KHR_shader_subgroup_extended_types |
| #endif |
| #ifdef VK_KHR_vulkan_memory_model |
| #endif |
| #ifdef VK_KHR_shader_terminate_invocation |
| #endif |
| #ifdef VK_KHR_buffer_device_address |
| #endif |
| #ifdef VK_KHR_pipeline_executable_properties |
| void reservedmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->pipelineExecutableInfo, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPipelineInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkPipeline((*&forMarshaling->pipeline)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| } |
| |
| void reservedmarshal_VkPipelineExecutablePropertiesKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineExecutablePropertiesKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkShaderStageFlags*)&forMarshaling->stages, sizeof(VkShaderStageFlags)); |
| *ptr += sizeof(VkShaderStageFlags); |
| memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char); |
| memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->subgroupSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPipelineExecutableInfoKHR(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkPipelineExecutableInfoKHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkPipeline((*&forMarshaling->pipeline)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->executableIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPipelineExecutableStatisticValueKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineExecutableStatisticValueKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkBool32*)&forMarshaling->b32, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPipelineExecutableStatisticKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineExecutableStatisticKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char); |
| memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char); |
| memcpy(*ptr, (VkPipelineExecutableStatisticFormatKHR*)&forMarshaling->format, |
| sizeof(VkPipelineExecutableStatisticFormatKHR)); |
| *ptr += sizeof(VkPipelineExecutableStatisticFormatKHR); |
| reservedmarshal_VkPipelineExecutableStatisticValueKHR( |
| vkStream, rootType, (VkPipelineExecutableStatisticValueKHR*)(&forMarshaling->value), ptr); |
| } |
| |
| void reservedmarshal_VkPipelineExecutableInternalRepresentationKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineExecutableInternalRepresentationKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (char*)forMarshaling->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char); |
| memcpy(*ptr, (char*)forMarshaling->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)); |
| *ptr += VK_MAX_DESCRIPTION_SIZE * sizeof(char); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->isText, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| uint64_t cgen_var_0 = (uint64_t)forMarshaling->dataSize; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pData; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pData) { |
| memcpy(*ptr, (void*)forMarshaling->pData, forMarshaling->dataSize * sizeof(uint8_t)); |
| *ptr += forMarshaling->dataSize * sizeof(uint8_t); |
| } |
| } |
| |
| #endif |
| #ifdef VK_KHR_shader_integer_dot_product |
| #endif |
| #ifdef VK_KHR_shader_non_semantic_info |
| #endif |
| #ifdef VK_KHR_synchronization2 |
| void reservedmarshal_VkQueueFamilyCheckpointProperties2NV( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkQueueFamilyCheckpointProperties2NV* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->checkpointExecutionStageMask, |
| sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| } |
| |
| void reservedmarshal_VkCheckpointData2NV(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCheckpointData2NV* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineStageFlags2*)&forMarshaling->stage, sizeof(VkPipelineStageFlags2)); |
| *ptr += sizeof(VkPipelineStageFlags2); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pCheckpointMarker; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pCheckpointMarker) { |
| memcpy(*ptr, (void*)forMarshaling->pCheckpointMarker, sizeof(uint8_t)); |
| *ptr += sizeof(uint8_t); |
| } |
| } |
| |
| #endif |
| #ifdef VK_KHR_zero_initialize_workgroup_memory |
| #endif |
| #ifdef VK_KHR_copy_commands2 |
| #endif |
| #ifdef VK_KHR_format_feature_flags2 |
| #endif |
| #ifdef VK_KHR_maintenance4 |
| #endif |
| #ifdef VK_KHR_maintenance5 |
| void reservedmarshal_VkPhysicalDeviceMaintenance5FeaturesKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMaintenance5FeaturesKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance5, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceMaintenance5PropertiesKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceMaintenance5PropertiesKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->earlyFragmentMultisampleCoverageAfterSampleCounting, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->earlyFragmentSampleMaskTestBeforeSampleCounting, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->depthStencilSwizzleOneSupport, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->polygonModePointSize, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->nonStrictSinglePixelWideLinesUseParallelogram, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->nonStrictWideLinesUseParallelogram, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkRenderingAreaInfoKHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkRenderingAreaInfoKHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentFormats; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pColorAttachmentFormats) { |
| memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats, |
| forMarshaling->colorAttachmentCount * sizeof(const VkFormat)); |
| *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat); |
| } |
| memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| } |
| |
| void reservedmarshal_VkImageSubresource2KHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageSubresource2KHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkImageSubresource( |
| vkStream, rootType, (VkImageSubresource*)(&forMarshaling->imageSubresource), ptr); |
| } |
| |
| void reservedmarshal_VkDeviceImageSubresourceInfoKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceImageSubresourceInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkImageCreateInfo(vkStream, rootType, |
| (const VkImageCreateInfo*)(forMarshaling->pCreateInfo), ptr); |
| reservedmarshal_VkImageSubresource2KHR( |
| vkStream, rootType, (const VkImageSubresource2KHR*)(forMarshaling->pSubresource), ptr); |
| } |
| |
| void reservedmarshal_VkSubresourceLayout2KHR(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubresourceLayout2KHR* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkSubresourceLayout( |
| vkStream, rootType, (VkSubresourceLayout*)(&forMarshaling->subresourceLayout), ptr); |
| } |
| |
| void reservedmarshal_VkPipelineCreateFlags2CreateInfoKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineCreateFlags2CreateInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineCreateFlags2KHR*)&forMarshaling->flags, |
| sizeof(VkPipelineCreateFlags2KHR)); |
| *ptr += sizeof(VkPipelineCreateFlags2KHR); |
| } |
| |
| void reservedmarshal_VkBufferUsageFlags2CreateInfoKHR( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkBufferUsageFlags2CreateInfoKHR* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBufferUsageFlags2KHR*)&forMarshaling->usage, sizeof(VkBufferUsageFlags2KHR)); |
| *ptr += sizeof(VkBufferUsageFlags2KHR); |
| } |
| |
| #endif |
| #ifdef VK_ANDROID_native_buffer |
| void reservedmarshal_VkNativeBufferUsage2ANDROID(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkNativeBufferUsage2ANDROID* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (uint64_t*)&forMarshaling->consumer, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->producer, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| } |
| |
| void reservedmarshal_VkNativeBufferANDROID(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkNativeBufferANDROID* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->handle; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->handle) { |
| memcpy(*ptr, (const uint32_t*)forMarshaling->handle, sizeof(const uint32_t)); |
| *ptr += sizeof(const uint32_t); |
| } |
| memcpy(*ptr, (int*)&forMarshaling->stride, sizeof(int)); |
| *ptr += sizeof(int); |
| memcpy(*ptr, (int*)&forMarshaling->format, sizeof(int)); |
| *ptr += sizeof(int); |
| memcpy(*ptr, (int*)&forMarshaling->usage, sizeof(int)); |
| *ptr += sizeof(int); |
| reservedmarshal_VkNativeBufferUsage2ANDROID( |
| vkStream, rootType, (VkNativeBufferUsage2ANDROID*)(&forMarshaling->usage2), ptr); |
| } |
| |
| void reservedmarshal_VkSwapchainImageCreateInfoANDROID( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSwapchainImageCreateInfoANDROID* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkSwapchainImageUsageFlagsANDROID*)&forMarshaling->usage, |
| sizeof(VkSwapchainImageUsageFlagsANDROID)); |
| *ptr += sizeof(VkSwapchainImageUsageFlagsANDROID); |
| } |
| |
| void reservedmarshal_VkPhysicalDevicePresentationPropertiesANDROID( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevicePresentationPropertiesANDROID* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->sharedImage, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_transform_feedback |
| void reservedmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceTransformFeedbackFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedback, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->geometryStreams, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceTransformFeedbackPropertiesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackStreams, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBuffers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxTransformFeedbackBufferSize, |
| sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackStreamDataSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBufferDataSize, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxTransformFeedbackBufferDataStride, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackQueries, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackStreamsLinesTriangles, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackRasterizationStreamSelect, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackDraw, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineRasterizationStateStreamCreateInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPipelineRasterizationStateStreamCreateFlagsEXT*)&forMarshaling->flags, |
| sizeof(VkPipelineRasterizationStateStreamCreateFlagsEXT)); |
| *ptr += sizeof(VkPipelineRasterizationStateStreamCreateFlagsEXT); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->rasterizationStream, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| #endif |
| #ifdef VK_AMD_gpu_shader_half_float |
| #endif |
| #ifdef VK_EXT_texture_compression_astc_hdr |
| #endif |
| #ifdef VK_EXT_swapchain_colorspace |
| #endif |
| #ifdef VK_EXT_queue_family_foreign |
| #endif |
| #ifdef VK_EXT_debug_utils |
| #endif |
| #ifdef VK_ANDROID_external_memory_android_hardware_buffer |
| #endif |
| #ifdef VK_EXT_inline_uniform_block |
| #endif |
| #ifdef VK_EXT_shader_stencil_export |
| #endif |
| #ifdef VK_EXT_pipeline_creation_feedback |
| #endif |
| #ifdef VK_NV_shader_subgroup_partitioned |
| #endif |
| #ifdef VK_EXT_metal_surface |
| #endif |
| #ifdef VK_EXT_subgroup_size_control |
| #endif |
| #ifdef VK_EXT_tooling_info |
| #endif |
| #ifdef VK_EXT_provoking_vertex |
| void reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceProvokingVertexFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->provokingVertexLast, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackPreservesProvokingVertex, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceProvokingVertexPropertiesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->provokingVertexModePerPipeline, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackPreservesTriangleFanProvokingVertex, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkProvokingVertexModeEXT*)&forMarshaling->provokingVertexMode, |
| sizeof(VkProvokingVertexModeEXT)); |
| *ptr += sizeof(VkProvokingVertexModeEXT); |
| } |
| |
| #endif |
| #ifdef VK_EXT_line_rasterization |
| void reservedmarshal_VkPhysicalDeviceLineRasterizationFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceLineRasterizationFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->rectangularLines, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->bresenhamLines, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->smoothLines, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->stippledRectangularLines, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->stippledBresenhamLines, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->stippledSmoothLines, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceLineRasterizationPropertiesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceLineRasterizationPropertiesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->lineSubPixelPrecisionBits, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPipelineRasterizationLineStateCreateInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPipelineRasterizationLineStateCreateInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkLineRasterizationModeEXT*)&forMarshaling->lineRasterizationMode, |
| sizeof(VkLineRasterizationModeEXT)); |
| *ptr += sizeof(VkLineRasterizationModeEXT); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->stippledLineEnable, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->lineStippleFactor, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint16_t*)&forMarshaling->lineStipplePattern, sizeof(uint16_t)); |
| *ptr += sizeof(uint16_t); |
| } |
| |
| #endif |
| #ifdef VK_EXT_index_type_uint8 |
| void reservedmarshal_VkPhysicalDeviceIndexTypeUint8FeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceIndexTypeUint8FeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->indexTypeUint8, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_extended_dynamic_state |
| void reservedmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_host_image_copy |
| void reservedmarshal_VkPhysicalDeviceHostImageCopyFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceHostImageCopyFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->hostImageCopy, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceHostImageCopyPropertiesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceHostImageCopyPropertiesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->copySrcLayoutCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pCopySrcLayouts; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pCopySrcLayouts) { |
| memcpy(*ptr, (VkImageLayout*)forMarshaling->pCopySrcLayouts, |
| forMarshaling->copySrcLayoutCount * sizeof(VkImageLayout)); |
| *ptr += forMarshaling->copySrcLayoutCount * sizeof(VkImageLayout); |
| } |
| memcpy(*ptr, (uint32_t*)&forMarshaling->copyDstLayoutCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pCopyDstLayouts; |
| memcpy((*ptr), &cgen_var_1, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pCopyDstLayouts) { |
| memcpy(*ptr, (VkImageLayout*)forMarshaling->pCopyDstLayouts, |
| forMarshaling->copyDstLayoutCount * sizeof(VkImageLayout)); |
| *ptr += forMarshaling->copyDstLayoutCount * sizeof(VkImageLayout); |
| } |
| memcpy(*ptr, (uint8_t*)forMarshaling->optimalTilingLayoutUUID, VK_UUID_SIZE * sizeof(uint8_t)); |
| *ptr += VK_UUID_SIZE * sizeof(uint8_t); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->identicalMemoryTypeRequirements, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkMemoryToImageCopyEXT(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkMemoryToImageCopyEXT* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (const void*)forMarshaling->pHostPointer, sizeof(const uint8_t)); |
| *ptr += sizeof(const uint8_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryRowLength, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryImageHeight, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr); |
| } |
| |
| void reservedmarshal_VkImageToMemoryCopyEXT(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageToMemoryCopyEXT* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (void*)forMarshaling->pHostPointer, sizeof(uint8_t)); |
| *ptr += sizeof(uint8_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryRowLength, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->memoryImageHeight, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| reservedmarshal_VkImageSubresourceLayers( |
| vkStream, rootType, (VkImageSubresourceLayers*)(&forMarshaling->imageSubresource), ptr); |
| reservedmarshal_VkOffset3D(vkStream, rootType, (VkOffset3D*)(&forMarshaling->imageOffset), ptr); |
| reservedmarshal_VkExtent3D(vkStream, rootType, (VkExtent3D*)(&forMarshaling->imageExtent), ptr); |
| } |
| |
| void reservedmarshal_VkCopyMemoryToImageInfoEXT(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkCopyMemoryToImageInfoEXT* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkHostImageCopyFlagsEXT*)&forMarshaling->flags, sizeof(VkHostImageCopyFlagsEXT)); |
| *ptr += sizeof(VkHostImageCopyFlagsEXT); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->dstImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkMemoryToImageCopyEXT( |
| vkStream, rootType, (const VkMemoryToImageCopyEXT*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkCopyImageToMemoryInfoEXT(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkCopyImageToMemoryInfoEXT* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkHostImageCopyFlagsEXT*)&forMarshaling->flags, sizeof(VkHostImageCopyFlagsEXT)); |
| *ptr += sizeof(VkHostImageCopyFlagsEXT); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkImageToMemoryCopyEXT( |
| vkStream, rootType, (const VkImageToMemoryCopyEXT*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkCopyImageToImageInfoEXT(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkCopyImageToImageInfoEXT* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkHostImageCopyFlagsEXT*)&forMarshaling->flags, sizeof(VkHostImageCopyFlagsEXT)); |
| *ptr += sizeof(VkHostImageCopyFlagsEXT); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->srcImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->srcImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| uint64_t cgen_var_1; |
| *&cgen_var_1 = get_host_u64_VkImage((*&forMarshaling->dstImage)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->dstImageLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->regionCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| for (uint32_t i = 0; i < (uint32_t)forMarshaling->regionCount; ++i) { |
| reservedmarshal_VkImageCopy2(vkStream, rootType, |
| (const VkImageCopy2*)(forMarshaling->pRegions + i), ptr); |
| } |
| } |
| |
| void reservedmarshal_VkHostImageLayoutTransitionInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkHostImageLayoutTransitionInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| memcpy(*ptr, (VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout)); |
| *ptr += sizeof(VkImageLayout); |
| reservedmarshal_VkImageSubresourceRange( |
| vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr); |
| } |
| |
| void reservedmarshal_VkSubresourceHostMemcpySizeEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSubresourceHostMemcpySizeEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| } |
| |
| void reservedmarshal_VkHostImageCopyDevicePerformanceQueryEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkHostImageCopyDevicePerformanceQueryEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->optimalDeviceAccess, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->identicalMemoryLayout, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_swapchain_maintenance1 |
| void reservedmarshal_VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->swapchainMaintenance1, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkSwapchainPresentFenceInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSwapchainPresentFenceInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| if (forMarshaling->swapchainCount) { |
| uint8_t* cgen_var_0_ptr = (uint8_t*)(*ptr); |
| if (forMarshaling) { |
| for (uint32_t k = 0; k < forMarshaling->swapchainCount; ++k) { |
| uint64_t tmpval = get_host_u64_VkFence(forMarshaling->pFences[k]); |
| memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t)); |
| } |
| } |
| *ptr += 8 * forMarshaling->swapchainCount; |
| } |
| } |
| |
| void reservedmarshal_VkSwapchainPresentModesCreateInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSwapchainPresentModesCreateInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->presentModeCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const VkPresentModeKHR*)forMarshaling->pPresentModes, |
| forMarshaling->presentModeCount * sizeof(const VkPresentModeKHR)); |
| *ptr += forMarshaling->presentModeCount * sizeof(const VkPresentModeKHR); |
| } |
| |
| void reservedmarshal_VkSwapchainPresentModeInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSwapchainPresentModeInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const VkPresentModeKHR*)forMarshaling->pPresentModes, |
| forMarshaling->swapchainCount * sizeof(const VkPresentModeKHR)); |
| *ptr += forMarshaling->swapchainCount * sizeof(const VkPresentModeKHR); |
| } |
| |
| void reservedmarshal_VkSwapchainPresentScalingCreateInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSwapchainPresentScalingCreateInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkPresentScalingFlagsEXT*)&forMarshaling->scalingBehavior, |
| sizeof(VkPresentScalingFlagsEXT)); |
| *ptr += sizeof(VkPresentScalingFlagsEXT); |
| memcpy(*ptr, (VkPresentGravityFlagsEXT*)&forMarshaling->presentGravityX, |
| sizeof(VkPresentGravityFlagsEXT)); |
| *ptr += sizeof(VkPresentGravityFlagsEXT); |
| memcpy(*ptr, (VkPresentGravityFlagsEXT*)&forMarshaling->presentGravityY, |
| sizeof(VkPresentGravityFlagsEXT)); |
| *ptr += sizeof(VkPresentGravityFlagsEXT); |
| } |
| |
| void reservedmarshal_VkReleaseSwapchainImagesInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkReleaseSwapchainImagesInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| uint64_t cgen_var_0; |
| *&cgen_var_0 = get_host_u64_VkSwapchainKHR((*&forMarshaling->swapchain)); |
| memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8); |
| *ptr += 1 * 8; |
| memcpy(*ptr, (uint32_t*)&forMarshaling->imageIndexCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (const uint32_t*)forMarshaling->pImageIndices, |
| forMarshaling->imageIndexCount * sizeof(const uint32_t)); |
| *ptr += forMarshaling->imageIndexCount * sizeof(const uint32_t); |
| } |
| |
| #endif |
| #ifdef VK_EXT_shader_demote_to_helper_invocation |
| #endif |
| #ifdef VK_EXT_texel_buffer_alignment |
| void reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->texelBufferAlignment, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_device_memory_report |
| void reservedmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->deviceMemoryReport, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkDeviceMemoryReportCallbackDataEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceMemoryReportCallbackDataEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceMemoryReportFlagsEXT*)&forMarshaling->flags, |
| sizeof(VkDeviceMemoryReportFlagsEXT)); |
| *ptr += sizeof(VkDeviceMemoryReportFlagsEXT); |
| memcpy(*ptr, (VkDeviceMemoryReportEventTypeEXT*)&forMarshaling->type, |
| sizeof(VkDeviceMemoryReportEventTypeEXT)); |
| *ptr += sizeof(VkDeviceMemoryReportEventTypeEXT); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->memoryObjectId, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize)); |
| *ptr += sizeof(VkDeviceSize); |
| memcpy(*ptr, (VkObjectType*)&forMarshaling->objectType, sizeof(VkObjectType)); |
| *ptr += sizeof(VkObjectType); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->objectHandle, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->heapIndex, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkDeviceDeviceMemoryReportCreateInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkDeviceMemoryReportFlagsEXT*)&forMarshaling->flags, |
| sizeof(VkDeviceMemoryReportFlagsEXT)); |
| *ptr += sizeof(VkDeviceMemoryReportFlagsEXT); |
| uint64_t cgen_var_0 = (uint64_t)forMarshaling->pfnUserCallback; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| memcpy(*ptr, (void*)forMarshaling->pUserData, sizeof(uint8_t)); |
| *ptr += sizeof(uint8_t); |
| } |
| |
| #endif |
| #ifdef VK_EXT_custom_border_color |
| void reservedmarshal_VkSamplerCustomBorderColorCreateInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkSamplerCustomBorderColorCreateInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| reservedmarshal_VkClearColorValue(vkStream, rootType, |
| (VkClearColorValue*)(&forMarshaling->customBorderColor), ptr); |
| memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat)); |
| *ptr += sizeof(VkFormat); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceCustomBorderColorPropertiesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->maxCustomBorderColorSamplers, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceCustomBorderColorFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->customBorderColors, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->customBorderColorWithoutFormat, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_private_data |
| #endif |
| #ifdef VK_EXT_pipeline_creation_cache_control |
| #endif |
| #ifdef VK_EXT_graphics_pipeline_library |
| void reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->graphicsPipelineLibrary, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->graphicsPipelineLibraryFastLinking, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, |
| (VkBool32*)&forMarshaling->graphicsPipelineLibraryIndependentInterpolationDecoration, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkGraphicsPipelineLibraryCreateInfoEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkGraphicsPipelineLibraryCreateInfoEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkGraphicsPipelineLibraryFlagsEXT*)&forMarshaling->flags, |
| sizeof(VkGraphicsPipelineLibraryFlagsEXT)); |
| *ptr += sizeof(VkGraphicsPipelineLibraryFlagsEXT); |
| } |
| |
| #endif |
| #ifdef VK_EXT_ycbcr_2plane_444_formats |
| void reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->ycbcr2plane444Formats, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_image_robustness |
| #endif |
| #ifdef VK_EXT_image_compression_control |
| void reservedmarshal_VkPhysicalDeviceImageCompressionControlFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceImageCompressionControlFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->imageCompressionControl, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| void reservedmarshal_VkImageCompressionControlEXT(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkImageCompressionControlEXT* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageCompressionFlagsEXT*)&forMarshaling->flags, |
| sizeof(VkImageCompressionFlagsEXT)); |
| *ptr += sizeof(VkImageCompressionFlagsEXT); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->compressionControlPlaneCount, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| // WARNING PTR CHECK |
| uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pFixedRateFlags; |
| memcpy((*ptr), &cgen_var_0, 8); |
| gfxstream::guest::Stream::toBe64((uint8_t*)(*ptr)); |
| *ptr += 8; |
| if (forMarshaling->pFixedRateFlags) { |
| memcpy(*ptr, (VkImageCompressionFixedRateFlagsEXT*)forMarshaling->pFixedRateFlags, |
| forMarshaling->compressionControlPlaneCount * |
| sizeof(VkImageCompressionFixedRateFlagsEXT)); |
| *ptr += forMarshaling->compressionControlPlaneCount * |
| sizeof(VkImageCompressionFixedRateFlagsEXT); |
| } |
| } |
| |
| void reservedmarshal_VkImageCompressionPropertiesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImageCompressionPropertiesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkImageCompressionFlagsEXT*)&forMarshaling->imageCompressionFlags, |
| sizeof(VkImageCompressionFlagsEXT)); |
| *ptr += sizeof(VkImageCompressionFlagsEXT); |
| memcpy(*ptr, |
| (VkImageCompressionFixedRateFlagsEXT*)&forMarshaling->imageCompressionFixedRateFlags, |
| sizeof(VkImageCompressionFixedRateFlagsEXT)); |
| *ptr += sizeof(VkImageCompressionFixedRateFlagsEXT); |
| } |
| |
| #endif |
| #ifdef VK_EXT_4444_formats |
| void reservedmarshal_VkPhysicalDevice4444FormatsFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevice4444FormatsFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->formatA4R4G4B4, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->formatA4B4G4R4, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_primitive_topology_list_restart |
| void reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveTopologyListRestart, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveTopologyPatchListRestart, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_EXT_extended_dynamic_state2 |
| void reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2LogicOp, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2PatchControlPoints, |
| sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| #ifdef VK_GOOGLE_gfxstream |
| void reservedmarshal_VkImportColorBufferGOOGLE(VulkanStreamGuest* vkStream, |
| VkStructureType rootType, |
| const VkImportColorBufferGOOGLE* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->colorBuffer, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkImportBufferGOOGLE(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkImportBufferGOOGLE* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->buffer, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| } |
| |
| void reservedmarshal_VkCreateBlobGOOGLE(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkCreateBlobGOOGLE* forMarshaling, uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->blobMem, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint32_t*)&forMarshaling->blobFlags, sizeof(uint32_t)); |
| *ptr += sizeof(uint32_t); |
| memcpy(*ptr, (uint64_t*)&forMarshaling->blobId, sizeof(uint64_t)); |
| *ptr += sizeof(uint64_t); |
| } |
| |
| #endif |
| #ifdef VK_EXT_load_store_op_none |
| #endif |
| #ifdef VK_EXT_image_compression_control_swapchain |
| void reservedmarshal_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT( |
| VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* forMarshaling, |
| uint8_t** ptr) { |
| (void)vkStream; |
| (void)rootType; |
| memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM) { |
| rootType = forMarshaling->sType; |
| } |
| reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr); |
| memcpy(*ptr, (VkBool32*)&forMarshaling->imageCompressionControlSwapchain, sizeof(VkBool32)); |
| *ptr += sizeof(VkBool32); |
| } |
| |
| #endif |
| void reservedmarshal_extension_struct(VulkanStreamGuest* vkStream, VkStructureType rootType, |
| const void* structExtension, uint8_t** ptr) { |
| VkInstanceCreateInfo* structAccess = (VkInstanceCreateInfo*)(structExtension); |
| uint32_t currExtSize = goldfish_vk_extension_struct_size_with_stream_features( |
| vkStream->getFeatureBits(), rootType, structExtension); |
| if (!currExtSize && structExtension) { |
| // unknown struct extension; skip and call on its pNext field |
| reservedmarshal_extension_struct(vkStream, rootType, (void*)structAccess->pNext, ptr); |
| return; |
| } else { |
| // known or null extension struct |
| memcpy(*ptr, &currExtSize, sizeof(uint32_t)); |
| ; |
| gfxstream::guest::Stream::toBe32((uint8_t*)*ptr); |
| *ptr += sizeof(uint32_t); |
| if (!currExtSize) { |
| // exit if this was a null extension struct (size == 0 in this branch) |
| return; |
| } |
| } |
| memcpy(*ptr, structExtension, sizeof(VkStructureType)); |
| *ptr += sizeof(VkStructureType); |
| if (!structExtension) { |
| return; |
| } |
| uint32_t structType = (uint32_t)goldfish_vk_struct_type(structExtension); |
| switch (structType) { |
| #ifdef VK_VERSION_1_0 |
| case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: { |
| reservedmarshal_VkShaderModuleCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkShaderModuleCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_VERSION_1_1 |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceSubgroupProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceSubgroupProperties*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: { |
| reservedmarshal_VkPhysicalDevice16BitStorageFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDevice16BitStorageFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS: { |
| reservedmarshal_VkMemoryDedicatedRequirements( |
| vkStream, rootType, |
| reinterpret_cast<const VkMemoryDedicatedRequirements*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO: { |
| reservedmarshal_VkMemoryDedicatedAllocateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkMemoryDedicatedAllocateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO: { |
| reservedmarshal_VkMemoryAllocateFlagsInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkMemoryAllocateFlagsInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO: { |
| reservedmarshal_VkDeviceGroupRenderPassBeginInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDeviceGroupRenderPassBeginInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO: { |
| reservedmarshal_VkDeviceGroupCommandBufferBeginInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDeviceGroupCommandBufferBeginInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO: { |
| reservedmarshal_VkDeviceGroupSubmitInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDeviceGroupSubmitInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO: { |
| reservedmarshal_VkDeviceGroupBindSparseInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDeviceGroupBindSparseInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO: { |
| reservedmarshal_VkBindBufferMemoryDeviceGroupInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkBindBufferMemoryDeviceGroupInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO: { |
| reservedmarshal_VkBindImageMemoryDeviceGroupInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkBindImageMemoryDeviceGroupInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO: { |
| reservedmarshal_VkDeviceGroupDeviceCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDeviceGroupDeviceCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: { |
| reservedmarshal_VkPhysicalDeviceFeatures2( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceFeatures2*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES: { |
| reservedmarshal_VkPhysicalDevicePointClippingProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDevicePointClippingProperties*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO: { |
| reservedmarshal_VkRenderPassInputAttachmentAspectCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkRenderPassInputAttachmentAspectCreateInfo*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO: { |
| reservedmarshal_VkImageViewUsageCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkImageViewUsageCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO: { |
| reservedmarshal_VkPipelineTessellationDomainOriginStateCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkPipelineTessellationDomainOriginStateCreateInfo*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO: { |
| reservedmarshal_VkRenderPassMultiviewCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkRenderPassMultiviewCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceMultiviewFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceMultiviewFeatures*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceMultiviewProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceMultiviewProperties*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceVariablePointersFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceVariablePointersFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceProtectedMemoryFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceProtectedMemoryFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceProtectedMemoryProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceProtectedMemoryProperties*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO: { |
| reservedmarshal_VkProtectedSubmitInfo( |
| vkStream, rootType, reinterpret_cast<const VkProtectedSubmitInfo*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO: { |
| reservedmarshal_VkSamplerYcbcrConversionInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkSamplerYcbcrConversionInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO: { |
| reservedmarshal_VkBindImagePlaneMemoryInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkBindImagePlaneMemoryInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO: { |
| reservedmarshal_VkImagePlaneMemoryRequirementsInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkImagePlaneMemoryRequirementsInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceSamplerYcbcrConversionFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES: { |
| reservedmarshal_VkSamplerYcbcrConversionImageFormatProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO: { |
| reservedmarshal_VkPhysicalDeviceExternalImageFormatInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceExternalImageFormatInfo*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES: { |
| reservedmarshal_VkExternalImageFormatProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkExternalImageFormatProperties*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceIDProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceIDProperties*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO: { |
| reservedmarshal_VkExternalMemoryImageCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkExternalMemoryImageCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO: { |
| reservedmarshal_VkExternalMemoryBufferCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkExternalMemoryBufferCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO: { |
| reservedmarshal_VkExportMemoryAllocateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkExportMemoryAllocateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO: { |
| reservedmarshal_VkExportFenceCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkExportFenceCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO: { |
| reservedmarshal_VkExportSemaphoreCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkExportSemaphoreCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceMaintenance3Properties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceMaintenance3Properties*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceShaderDrawParametersFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceShaderDrawParametersFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_VERSION_1_2 |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceVulkan11Features( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceVulkan11Features*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceVulkan11Properties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceVulkan11Properties*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceVulkan12Features( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceVulkan12Features*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceVulkan12Properties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceVulkan12Properties*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO: { |
| reservedmarshal_VkImageFormatListCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkImageFormatListCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES: { |
| reservedmarshal_VkPhysicalDevice8BitStorageFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDevice8BitStorageFeatures*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceDriverProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceDriverProperties*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceShaderAtomicInt64Features( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceShaderAtomicInt64Features*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceShaderFloat16Int8Features( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceShaderFloat16Int8Features*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceFloatControlsProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceFloatControlsProperties*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO: { |
| reservedmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfo*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceDescriptorIndexingFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceDescriptorIndexingProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO: { |
| reservedmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfo*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT: { |
| reservedmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupport( |
| vkStream, rootType, |
| reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupport*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE: { |
| reservedmarshal_VkSubpassDescriptionDepthStencilResolve( |
| vkStream, rootType, |
| reinterpret_cast<const VkSubpassDescriptionDepthStencilResolve*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceDepthStencilResolveProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceDepthStencilResolveProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceScalarBlockLayoutFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceScalarBlockLayoutFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO: { |
| reservedmarshal_VkImageStencilUsageCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkImageStencilUsageCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO: { |
| reservedmarshal_VkSamplerReductionModeCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkSamplerReductionModeCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceSamplerFilterMinmaxProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceSamplerFilterMinmaxProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceVulkanMemoryModelFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceVulkanMemoryModelFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceImagelessFramebufferFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO: { |
| reservedmarshal_VkFramebufferAttachmentsCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkFramebufferAttachmentsCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO: { |
| reservedmarshal_VkRenderPassAttachmentBeginInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkRenderPassAttachmentBeginInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceUniformBufferStandardLayoutFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT: { |
| reservedmarshal_VkAttachmentReferenceStencilLayout( |
| vkStream, rootType, |
| reinterpret_cast<const VkAttachmentReferenceStencilLayout*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT: { |
| reservedmarshal_VkAttachmentDescriptionStencilLayout( |
| vkStream, rootType, |
| reinterpret_cast<const VkAttachmentDescriptionStencilLayout*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceHostQueryResetFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceHostQueryResetFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceTimelineSemaphoreFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceTimelineSemaphoreProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO: { |
| reservedmarshal_VkSemaphoreTypeCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkSemaphoreTypeCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO: { |
| reservedmarshal_VkTimelineSemaphoreSubmitInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkTimelineSemaphoreSubmitInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceBufferDeviceAddressFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO: { |
| reservedmarshal_VkBufferOpaqueCaptureAddressCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkBufferOpaqueCaptureAddressCreateInfo*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO: { |
| reservedmarshal_VkMemoryOpaqueCaptureAddressAllocateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkMemoryOpaqueCaptureAddressAllocateInfo*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_VERSION_1_3 |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceVulkan13Features( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceVulkan13Features*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceVulkan13Properties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceVulkan13Properties*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO: { |
| reservedmarshal_VkPipelineCreationFeedbackCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkPipelineCreationFeedbackCreateInfo*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceShaderTerminateInvocationFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceShaderTerminateInvocationFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES: { |
| reservedmarshal_VkPhysicalDevicePrivateDataFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDevicePrivateDataFeatures*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO: { |
| reservedmarshal_VkDevicePrivateDataCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDevicePrivateDataCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES: { |
| reservedmarshal_VkPhysicalDevicePipelineCreationCacheControlFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDevicePipelineCreationCacheControlFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2: { |
| reservedmarshal_VkMemoryBarrier2( |
| vkStream, rootType, reinterpret_cast<const VkMemoryBarrier2*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceSynchronization2Features( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceSynchronization2Features*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceImageRobustnessFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceImageRobustnessFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceSubgroupSizeControlFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceSubgroupSizeControlProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO: { |
| reservedmarshal_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceInlineUniformBlockFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceInlineUniformBlockProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK: { |
| reservedmarshal_VkWriteDescriptorSetInlineUniformBlock( |
| vkStream, rootType, |
| reinterpret_cast<const VkWriteDescriptorSetInlineUniformBlock*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO: { |
| reservedmarshal_VkDescriptorPoolInlineUniformBlockCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkDescriptorPoolInlineUniformBlockCreateInfo*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceTextureCompressionASTCHDRFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceTextureCompressionASTCHDRFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO: { |
| reservedmarshal_VkPipelineRenderingCreateInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkPipelineRenderingCreateInfo*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceDynamicRenderingFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeatures*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO: { |
| reservedmarshal_VkCommandBufferInheritanceRenderingInfo( |
| vkStream, rootType, |
| reinterpret_cast<const VkCommandBufferInheritanceRenderingInfo*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeatures( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeatures*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentProperties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentProperties*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3: { |
| reservedmarshal_VkFormatProperties3( |
| vkStream, rootType, reinterpret_cast<const VkFormatProperties3*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES: { |
| reservedmarshal_VkPhysicalDeviceMaintenance4Features( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceMaintenance4Features*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES: { |
| reservedmarshal_VkPhysicalDeviceMaintenance4Properties( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceMaintenance4Properties*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_KHR_swapchain |
| case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR: { |
| reservedmarshal_VkImageSwapchainCreateInfoKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkImageSwapchainCreateInfoKHR*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR: { |
| reservedmarshal_VkBindImageMemorySwapchainInfoKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkBindImageMemorySwapchainInfoKHR*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR: { |
| reservedmarshal_VkDeviceGroupPresentInfoKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkDeviceGroupPresentInfoKHR*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR: { |
| reservedmarshal_VkDeviceGroupSwapchainCreateInfoKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkDeviceGroupSwapchainCreateInfoKHR*>(structExtension), ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_KHR_dynamic_rendering |
| case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR: { |
| reservedmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT: { |
| reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD: { |
| reservedmarshal_VkAttachmentSampleCountInfoAMD( |
| vkStream, rootType, |
| reinterpret_cast<const VkAttachmentSampleCountInfoAMD*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX: { |
| reservedmarshal_VkMultiviewPerViewAttributesInfoNVX( |
| vkStream, rootType, |
| reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX*>(structExtension), ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_KHR_incremental_present |
| case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: { |
| reservedmarshal_VkPresentRegionsKHR( |
| vkStream, rootType, reinterpret_cast<const VkPresentRegionsKHR*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_KHR_pipeline_executable_properties |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR: { |
| reservedmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_KHR_synchronization2 |
| case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV: { |
| reservedmarshal_VkQueueFamilyCheckpointProperties2NV( |
| vkStream, rootType, |
| reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_KHR_maintenance5 |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR: { |
| reservedmarshal_VkPhysicalDeviceMaintenance5FeaturesKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceMaintenance5FeaturesKHR*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR: { |
| reservedmarshal_VkPhysicalDeviceMaintenance5PropertiesKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceMaintenance5PropertiesKHR*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR: { |
| reservedmarshal_VkPipelineCreateFlags2CreateInfoKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkPipelineCreateFlags2CreateInfoKHR*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR: { |
| reservedmarshal_VkBufferUsageFlags2CreateInfoKHR( |
| vkStream, rootType, |
| reinterpret_cast<const VkBufferUsageFlags2CreateInfoKHR*>(structExtension), ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_ANDROID_native_buffer |
| case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID: { |
| reservedmarshal_VkNativeBufferANDROID( |
| vkStream, rootType, reinterpret_cast<const VkNativeBufferANDROID*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_transform_feedback |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceTransformFeedbackFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT: { |
| reservedmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceTransformFeedbackPropertiesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT: { |
| reservedmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPipelineRasterizationStateStreamCreateInfoEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_provoking_vertex |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT: { |
| reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT: { |
| reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_line_rasterization |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceLineRasterizationFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceLineRasterizationFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT: { |
| reservedmarshal_VkPhysicalDeviceLineRasterizationPropertiesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceLineRasterizationPropertiesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT: { |
| reservedmarshal_VkPipelineRasterizationLineStateCreateInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPipelineRasterizationLineStateCreateInfoEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_index_type_uint8 |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceIndexTypeUint8FeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceIndexTypeUint8FeaturesEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_extended_dynamic_state |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_host_image_copy |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceHostImageCopyFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceHostImageCopyFeaturesEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT: { |
| reservedmarshal_VkPhysicalDeviceHostImageCopyPropertiesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceHostImageCopyPropertiesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE_EXT: { |
| reservedmarshal_VkSubresourceHostMemcpySizeEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkSubresourceHostMemcpySizeEXT*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT: { |
| reservedmarshal_VkHostImageCopyDevicePerformanceQueryEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkHostImageCopyDevicePerformanceQueryEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_swapchain_maintenance1 |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT: { |
| reservedmarshal_VkSwapchainPresentFenceInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkSwapchainPresentFenceInfoEXT*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT: { |
| reservedmarshal_VkSwapchainPresentModesCreateInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkSwapchainPresentModesCreateInfoEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT: { |
| reservedmarshal_VkSwapchainPresentModeInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkSwapchainPresentModeInfoEXT*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT: { |
| reservedmarshal_VkSwapchainPresentScalingCreateInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkSwapchainPresentScalingCreateInfoEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_texel_buffer_alignment |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_device_memory_report |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT: { |
| reservedmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkDeviceDeviceMemoryReportCreateInfoEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_custom_border_color |
| case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT: { |
| reservedmarshal_VkSamplerCustomBorderColorCreateInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkSamplerCustomBorderColorCreateInfoEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT: { |
| reservedmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceCustomBorderColorPropertiesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceCustomBorderColorFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_graphics_pipeline_library |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT: { |
| reservedmarshal_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT: { |
| reservedmarshal_VkGraphicsPipelineLibraryCreateInfoEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkGraphicsPipelineLibraryCreateInfoEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_ycbcr_2plane_444_formats |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_image_compression_control |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceImageCompressionControlFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceImageCompressionControlFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT: { |
| reservedmarshal_VkImageCompressionControlEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkImageCompressionControlEXT*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT: { |
| reservedmarshal_VkImageCompressionPropertiesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkImageCompressionPropertiesEXT*>(structExtension), ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_4444_formats |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDevice4444FormatsFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDevice4444FormatsFeaturesEXT*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_primitive_topology_list_restart |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_extended_dynamic_state2 |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_GOOGLE_gfxstream |
| case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE: { |
| reservedmarshal_VkImportColorBufferGOOGLE( |
| vkStream, rootType, |
| reinterpret_cast<const VkImportColorBufferGOOGLE*>(structExtension), ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_IMPORT_BUFFER_GOOGLE: { |
| reservedmarshal_VkImportBufferGOOGLE( |
| vkStream, rootType, reinterpret_cast<const VkImportBufferGOOGLE*>(structExtension), |
| ptr); |
| break; |
| } |
| case VK_STRUCTURE_TYPE_CREATE_BLOB_GOOGLE: { |
| reservedmarshal_VkCreateBlobGOOGLE( |
| vkStream, rootType, reinterpret_cast<const VkCreateBlobGOOGLE*>(structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| #ifdef VK_EXT_image_compression_control_swapchain |
| case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT: { |
| reservedmarshal_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT( |
| vkStream, rootType, |
| reinterpret_cast< |
| const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*>( |
| structExtension), |
| ptr); |
| break; |
| } |
| #endif |
| default: { |
| // fatal; the switch is only taken if the extension struct is known |
| abort(); |
| } |
| } |
| } |
| |
| } // namespace vk |
| } // namespace gfxstream |