Module: Mesa
Branch: staging/19.1
Commit: 32556060845448d2a999530171e37069eaa32320
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=32556060845448d2a999530171e37069eaa32320

Author: Bas Nieuwenhuizen <[email protected]>
Date:   Wed Sep 18 14:11:47 2019 +0200

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]>
(cherry picked from commit 7999e10cab93fe854fbc7accd4d8cf2e60726b75)

---

 src/freedreno/vulkan/tu_device.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/freedreno/vulkan/tu_device.c b/src/freedreno/vulkan/tu_device.c
index b2cf3fe7168..ea349a99e17 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);

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to