12 Commits

Author SHA1 Message Date
Hans-Kristian Arntzen
4437cd1eac Attempt to workaround odd crashes in glslang.
I accidentally managed to reproduce an issue which has been plaguing
users for a while, where glslang throws an assert after closing a game
(and starting a new one).

pthread_setspecific was somehow failing with an EINVAL call, despite the
key never having been freed. I suspect some kind of corruption happening
when dynamic libraries are unloaded, but I doubt this is a bug in either
RetroArch or glslang per-se.

My workaround here is to tear down all TLS use in glslang after we're
done compiling. Somehow this works around the problem for me, and I
don't really see another viable fix. Valgrind does not say anything about the
issue, so doubt it's memory corruption either.

I had to fix a minor TLS leak in glslang as DetachProcess does not free
the PoolIndex TLS.
2019-12-16 22:27:13 +01:00
Twinaphex
fd11b205da Silence bunch of warnings 2018-06-21 07:52:01 +02:00
twinaphex
abf7bf877e (glslang) Buildfix #1 2018-06-20 10:22:08 +02:00
twinaphex
8771171f63 (glslang) Compatibility tweaks for MSVC 2010 compatibility 2018-02-04 15:49:53 +01:00
twinaphex
a792112bd1 Update glslang support for MSVC 2017-12-30 04:36:35 +01:00
twinaphex
a90b19126d Turn this into relative header include 2016-12-20 18:50:20 +01:00
twinaphex
e99d47852f Get rid of the submodules 2016-12-20 18:43:53 +01:00
twinaphex
88b45350cc Get rid of the submodules 2016-12-20 18:43:27 +01:00
twinaphex
45b623043a More header include cleanups 2016-09-01 18:19:28 +02:00
Hans-Kristian Arntzen
fb407796e9 Vulkan: Add push constant support to slang.
Usually, the UBO is very small, so we can fit everything in fast-access
uniforms.
2016-08-02 12:51:30 +02:00
Hans-Kristian Arntzen
6bd88e6848 Update glslang. 2016-03-21 22:58:13 +01:00
Hans-Kristian Arntzen
adbf9fed16 Vulkan implementation. 2016-02-16 20:42:02 +01:00