mesa/src/compiler
Gustavo Lima Chaves 7cc5178bba spirv: add/hookup SpvCapabilityStencilExportEXT
v2:
An attempt to support SpvExecutionModeStencilRefReplacingEXT's behavior
also follows, with the interpretation to said mode being we prevent
writes to the built-in FragStencilRefEXT variable when the execution
mode isn't set.

v3:
A more cautious reading of 1db44252d0 led
me to a missing change that would stop (what I later discovered were)
GPU hangs on the CTS test written to exercise this.

v4:
Turn FragStencilRefEXT decoration usage without StencilRefReplacingEXT
mode into a warning, instead of trying to make the variable read-only.
If we are to follow the originating extension on GL, the built-in
variable in question should never be readable anyway.

v5/v6: rebases.

v7:
Fix check for gen9 lost in rebase. (Ilia)
Reduce the scope of the bool used to track whether
SpvExecutionModeStencilRefReplacingEXT was used. Was in shader_info,
moved to vtn_builder. (Jason)

v8:
Assert for fragment shader handling StencilRefReplacingEXT execution
mode. (Caio)
Remove warning logic, since an entry point might not have
StencilRefReplacingEXT execution mode, but the global output variable
might still exist for another entry point in the module. (Jason)

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2018-06-08 11:15:37 -07:00
..
glsl glsl: Take 'double' as reserved after GLSL ES 1.0 2018-06-05 23:39:25 -07:00
nir nir: Add global invocation id intrinsic. 2018-06-07 14:53:12 +01:00
spirv spirv: add/hookup SpvCapabilityStencilExportEXT 2018-06-08 11:15:37 -07:00
.gitignore
Android.glsl.gen.mk
Android.glsl.mk
Android.mk
Android.nir.gen.mk android: Use new nir intrinsics python scripts 2018-03-28 14:48:47 +03:00
Android.nir.mk
blob.c blob: Don't set overrun if reading 0 bytes at end of data 2017-10-31 23:36:54 -07:00
blob.h blob: Use intptr_t instead of ssize_t 2017-10-13 15:02:34 -07:00
builtin_type_macros.h glsl_types: vec8/vec16 support 2018-03-25 10:42:54 -04:00
glsl_types.cpp glsl: prevent spurious Valgrind errors when serializing NIR 2018-04-20 09:21:23 +02:00
glsl_types.h mesa: include mtypes.h less 2018-04-12 19:31:30 -04:00
Makefile.am autotools: Include new meson files 2018-04-20 20:26:56 -07:00
Makefile.glsl.am compiler: All leaf Makefile.am should use += 2018-03-29 14:09:41 -07:00
Makefile.nir.am nir: Fix a typo in src/compiler/Makefile.nir.am 2018-04-09 08:32:45 -06:00
Makefile.sources nir: Add an ALU lowering pass for mul_high. 2018-06-06 13:44:28 -07:00
Makefile.spirv.am spirv: autotools: add vtn_gather_types_c.py in distribution tarball 2018-04-10 10:37:46 +02:00
meson.build meson: remove dummy_cpp 2018-04-24 14:08:15 -07:00
nir_types.cpp glsl_types: vec8/vec16 support 2018-03-25 10:42:54 -04:00
nir_types.h compiler: int8/uint8 support 2018-03-14 10:08:42 -04:00
SConscript spirv: Fix building with SCons 2018-03-30 14:33:03 -06:00
SConscript.glsl
SConscript.nir nir: mako all the intrinsics 2018-03-27 08:36:37 -04:00
SConscript.spirv spirv: Fix building with SCons 2018-03-30 14:33:03 -06:00
shader_enums.c compiler: Add SYSTEM_VALUE_IS_INDEXED_DRAW and instrinsics 2018-05-02 11:20:40 +02:00
shader_enums.h compiler: Add SYSTEM_VALUE_IS_INDEXED_DRAW and instrinsics 2018-05-02 11:20:40 +02:00
shader_info.h spirv: add/hookup SpvCapabilityStencilExportEXT 2018-06-08 11:15:37 -07:00