Georg Lehmann (@DadSchoorse) commented about dlls/winevulkan/vulkan.c:
void *mapping = NULL; VkResult result;
- /* For host visible memory, we try to use VK_EXT_external_memory_host on wow64
mem_flags = device->phys_dev->memory_properties.memoryTypes[alloc_info->memoryTypeIndex].propertyFlags;* to ensure that mapped pointer is 32-bit. */
- if (device->phys_dev->external_memory_align && (mem_flags & VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT) &&
- if (device->phys_dev->map_placed_align)
- {
if (mem_flags & VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT)
{
VkDeviceSize align = device->phys_dev->map_placed_align - 1;
info.allocationSize = (info.allocationSize + align) & ~align;
}
- }
I'm unsure if this is actually nessecary. I can't find anything in the spec, and I can't think of a situation where it breaks without this code but I guess it also doesn't hurt?