diff options
author | Bas Nieuwenhuizen <[email protected]> | 2016-11-22 00:31:44 +0100 |
---|---|---|
committer | Bas Nieuwenhuizen <[email protected]> | 2016-11-22 07:58:35 +0100 |
commit | 43ee4917cadbba7677def091333edbf3cf069f8a (patch) | |
tree | 118c72b54006f9e79dbca4c23863f71dee4685ad /src/amd/vulkan/radv_device.c | |
parent | 581bd1d12a0c8f68110519196673b11940887143 (diff) |
radv: Store UUID in physical device.
No sense in repeatedly determining it. Also, it might be dependent
on the device as shaders get compiled differently for SI/CIK/VI etc.
Signed-off-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_device.c')
-rw-r--r-- | src/amd/vulkan/radv_device.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index 390fde0f3dd..b73117128de 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -44,6 +44,13 @@ #include "util/debug.h" struct radv_dispatch_table dtable; +static void +radv_device_get_cache_uuid(void *uuid) +{ + memset(uuid, 0, VK_UUID_SIZE); + snprintf(uuid, VK_UUID_SIZE, "radv-%s", RADV_TIMESTAMP); +} + static VkResult radv_physical_device_init(struct radv_physical_device *device, struct radv_instance *instance, @@ -89,6 +96,8 @@ radv_physical_device_init(struct radv_physical_device *device, goto fail; } + radv_device_get_cache_uuid(device->uuid); + fprintf(stderr, "WARNING: radv is not a conformant vulkan implementation, testing use only.\n"); device->name = device->rad_info.name; return VK_SUCCESS; @@ -361,13 +370,6 @@ void radv_GetPhysicalDeviceFeatures( }; } -void -radv_device_get_cache_uuid(void *uuid) -{ - memset(uuid, 0, VK_UUID_SIZE); - snprintf(uuid, VK_UUID_SIZE, "radv-%s", RADV_TIMESTAMP); -} - void radv_GetPhysicalDeviceProperties( VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties) @@ -498,7 +500,7 @@ void radv_GetPhysicalDeviceProperties( }; strcpy(pProperties->deviceName, pdevice->name); - radv_device_get_cache_uuid(pProperties->pipelineCacheUUID); + memcpy(pProperties->pipelineCacheUUID, pdevice->uuid, VK_UUID_SIZE); } void radv_GetPhysicalDeviceQueueFamilyProperties( |