From a8420e253038fd4ef063af4ee370038075ee7aeb Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Fri, 13 Apr 2018 12:40:55 +1000 Subject: [PATCH] radv: mark const structs as extern in header file to avoid lto damage The copr repo from che was using LTO and he reported radv broke recently with it. When testing with lto builds here I noticed that we weren't seeing any instance extensions reported. It appears LTO was treating the const without extern as an empty struct, this is possibly a gcc bug, but we can work around it just by marking these with extern. Acked-by: Samuel Pitoiset Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_extensions.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/amd/vulkan/radv_extensions.py b/src/amd/vulkan/radv_extensions.py index dbe0ff4ac5a..ec34551696e 100644 --- a/src/amd/vulkan/radv_extensions.py +++ b/src/amd/vulkan/radv_extensions.py @@ -195,9 +195,9 @@ struct radv_device_extension_table { }; }; -const VkExtensionProperties radv_instance_extensions[RADV_INSTANCE_EXTENSION_COUNT]; -const VkExtensionProperties radv_device_extensions[RADV_DEVICE_EXTENSION_COUNT]; -const struct radv_instance_extension_table radv_supported_instance_extensions; +extern const VkExtensionProperties radv_instance_extensions[RADV_INSTANCE_EXTENSION_COUNT]; +extern const VkExtensionProperties radv_device_extensions[RADV_DEVICE_EXTENSION_COUNT]; +extern const struct radv_instance_extension_table radv_supported_instance_extensions; struct radv_physical_device;