mesa/src
Lionel Landwerlin e4da8b9c33 mesa/compiler: rework tear down of builtin/types
The issue we're running into when running CTS is that glsl types are
deleted while builtins depending on them are not.

This happens because on one hand we have glsl types ref counted, but
builtins are not. Instead builtins are destroyed when unloading libGL
or explicitly calling glReleaseShaderCompiler().

This change removes almost entirely any dealing with glsl types
ref/unref by letting the builtins deal with it instead. In turn we
introduce a builtin ref count mechanism. Each GL context takes a
reference on the builtins when compiling a shader for the first time.
It releases the reference when the context is destroyed. It can also
explicitly release those when glReleaseShaderCompiler() is called.

Finally we also take a reference on the glsl types when loading libGL
to avoid recreating glsl types too often.

v2: Ensure we take a reference if we don't have one in link step (Lionel)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110796
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
2019-08-21 09:44:10 +02:00
..
amd radv/gfx10: hardcode some depth+stencil formats in the format table 2019-08-21 08:17:40 +02:00
broadcom v3d: clamp gl_PointSize to a minimum of 1.0 2019-08-13 09:44:54 +02:00
compiler mesa/compiler: rework tear down of builtin/types 2019-08-21 09:44:10 +02:00
drm-shim meson: replace libmesa_util with idep_mesautil 2019-08-03 00:08:37 +00:00
egl win32: unify strcasecmp definitions 2019-08-15 20:23:44 +02:00
etnaviv etnaviv: Add valgrind support 2019-08-14 10:36:20 +02:00
freedreno freedreno/ir3+a6xx: same VBO state for draw/binning 2019-08-13 08:11:26 -07:00
gallium gallium/vl: use compute preference for all multimedia, not just blit 2019-08-20 23:51:39 -04:00
gbm meson: replace last uses of libxmlconfig with idep_xmlconfig 2019-08-03 00:08:37 +00:00
getopt
glx glx: Eliminate glx_config::{rgb,float,colorIndex}Mode 2019-08-20 14:05:07 -04:00
gtest
hgl
imgui
intel anv: inline uniforms blocks don't count toward descriptor set limits 2019-08-20 16:48:45 +00:00
loader mesa: Rename GLX_USE_TLS to USE_ELF_TLS. 2019-08-03 20:18:17 +02:00
mapi mesa: add ext_dsa GetMultiTexLevelParameterEXT 2019-08-19 18:50:08 -04:00
mesa mesa/compiler: rework tear down of builtin/types 2019-08-21 09:44:10 +02:00
panfrost pan/midgard: Compute liveness per-block 2019-08-19 08:32:17 -07:00
util win32: unify strcasecmp definitions 2019-08-15 20:23:44 +02:00
vulkan vulkan: Update the XML and headers to 1.1.119 2019-08-12 14:56:33 +00:00
meson.build
SConscript