diff options
author | Bas Nieuwenhuizen <[email protected]> | 2019-09-18 14:11:47 +0200 |
---|---|---|
committer | Bas Nieuwenhuizen <[email protected]> | 2019-09-18 16:51:18 +0200 |
commit | 7999e10cab93fe854fbc7accd4d8cf2e60726b75 (patch) | |
tree | 81ce6deb6703f7801090b0fd75a0ef1246249876 | |
parent | f833b4cada07b746a10ffa4d93fcd821920c3cb1 (diff) |
tu: Set up glsl types.
Addresses this assert:
deqp-vk: ../mesa-freedreno-9999/src/compiler/glsl_types.cpp:1244: static const glsl_type *glsl_type::get_interface_instance(const glsl_struct_field *, unsigned int, enum glsl_interface_packing, bool, const char *): Assertion `glsl_type_users > 0' failed.
running dEQP-VK.api.smoke.triangle .
Fixes: 624789e3708 "compiler/glsl: handle case where we have multiple users for types"
Reviewed-by: Lionel Landwerlin <[email protected]>
-rw-r--r-- | src/freedreno/vulkan/tu_device.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/freedreno/vulkan/tu_device.c b/src/freedreno/vulkan/tu_device.c index fdb9e1e0a1e..8799f4109fb 100644 --- a/src/freedreno/vulkan/tu_device.c +++ b/src/freedreno/vulkan/tu_device.c @@ -36,6 +36,7 @@ #include <unistd.h> #include <xf86drm.h> +#include "compiler/glsl_types.h" #include "util/debug.h" #include "util/disk_cache.h" #include "util/strtod.h" @@ -431,6 +432,7 @@ tu_CreateInstance(const VkInstanceCreateInfo *pCreateInfo, } _mesa_locale_init(); + glsl_type_singleton_init_or_ref(); VG(VALGRIND_CREATE_MEMPOOL(instance, 0, false)); @@ -454,6 +456,7 @@ tu_DestroyInstance(VkInstance _instance, VG(VALGRIND_DESTROY_MEMPOOL(instance)); + glsl_type_singleton_decref(); _mesa_locale_fini(); vk_debug_report_instance_destroy(&instance->debug_report_callbacks); |