mesa/src/compiler
Iago Toral Quiroga 41ac0b1443 compiler/spirv: set is_shadow for depth comparitor sampling opcodes
From the SPIR-V spec, OpTypeImage:

"Depth is whether or not this image is a depth image. (Note that
 whether or not depth comparisons are actually done is a property of
 the sampling opcode, not of this type declaration.)"

The sampling opcodes that specify depth comparisons are
OpImageSample{Proj}Dref{Explicit,Implicit}Lod, so we should set
is_shadow only for these (we were using the deph property of the
image until now).

v2:
 - Do the same for OpImageDrefGather.
 - Set is_shadow to false if the sampling opcode is not one of these (Jason)
 - Reuse an existing switch statement instead of adding a new one (Jason)

Fixes crashes in:
dEQP-VK.spirv_assembly.instruction.graphics.image_sampler.depth_property.*

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Cc: mesa-stable@lists.freedesktop.org
2018-04-04 07:57:58 +02:00
..
glsl glsl: always call do_lower_jumps() after loop unrolling 2018-04-04 08:40:16 +10:00
nir nir/lower_vec_to_movs: Only coalesce if the vec had a SSA destination 2018-04-03 22:21:23 -07:00
spirv compiler/spirv: set is_shadow for depth comparitor sampling opcodes 2018-04-04 07:57:58 +02:00
.gitignore nir/spirv: Remove a duplicate spirv2nir from .gitignore 2016-10-04 07:43:15 -07:00
Android.glsl.gen.mk Android: clean-up trailing '\' in make variables 2017-03-22 17:52:06 +00:00
Android.glsl.mk android: glsl: build shader cache sources 2017-02-20 16:30:37 +00:00
Android.mk Android: glsl: add rules to generate ir_expression*.h header files 2016-09-06 15:58:55 +01:00
Android.nir.gen.mk android: Use new nir intrinsics python scripts 2018-03-28 14:48:47 +03:00
Android.nir.mk android: fix libmesa_nir build 2017-07-21 08:47:56 +03:00
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_types: fix build break with intel/msvc compiler 2018-03-27 08:17:11 -04:00
glsl_types.h glsl_types: refactor/prep for vec8/vec16 2018-03-25 10:42:54 -04:00
Makefile.am spirv: Move SPIR-V building to Makefile.spirv.am and spirv/meson.build 2018-03-29 14:16:01 -07:00
Makefile.glsl.am compiler: All leaf Makefile.am should use += 2018-03-29 14:09:41 -07:00
Makefile.nir.am spirv: Fix building with SCons 2018-03-30 14:33:03 -06:00
Makefile.sources nir/spirv: add gl_spirv_validation method 2018-03-30 09:14:56 +02:00
Makefile.spirv.am spirv: Move SPIR-V building to Makefile.spirv.am and spirv/meson.build 2018-03-29 14:16:01 -07:00
meson.build spirv: Move SPIR-V building to Makefile.spirv.am and spirv/meson.build 2018-03-29 14:16:01 -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 mesa: Remove prog_hash_table.c 2016-09-12 10:48:35 +10:00
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 two new system values for subgroups 2018-03-07 12:13:47 -08:00
shader_enums.h compiler: Add two new system values for subgroups 2018-03-07 12:13:47 -08:00
shader_info.h st/glsl_to_nir: gather next_stage in shader_info 2018-04-02 14:56:00 +10:00