mesa/src/compiler
Marek Olšák 73f532e5bf nir: add new VARYING_SLOTs and shader info for packed 16-bit varyings
This allows mediump inputs and outputs to be trivially lowered into packed
16-bit varyings where 1 slot is occupied by 2 16-bit vec4s, without any
packing instructions in NIR and without any conflicts with 32-bit varyings.

The only thing that is changed is IO semantics in intrinsics to get packed
16-bit varyings.

This simplifies supporting 16-bit types for drivers that have 32-bit slots
everywhere except the fragment shader where they can do 16-bit interpolation
on either the low or high half of each slot.

Reviewed-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9050>
2021-04-13 05:07:42 +00:00
..
glsl compiler/glsl: fix include for Android build 2021-04-10 20:33:52 +02:00
nir nir: add new VARYING_SLOTs and shader info for packed 16-bit varyings 2021-04-13 05:07:42 +00:00
spirv vtn: Support scoped control barriers for OpenCL too 2021-04-13 03:40:23 +00:00
Android.glsl.gen.mk android: util: Move xxd.py to util 2020-10-11 23:22:34 +02:00
Android.glsl.mk android: glsl: build shader cache sources 2017-02-20 16:30:37 +00:00
Android.mk
Android.nir.gen.mk android: spirv: fix '::' typo in gen rules 2020-12-08 22:44:23 +01:00
Android.nir.mk android: fix libmesa_nir build 2017-07-21 08:47:56 +03:00
builtin_type_macros.h compiler/types: Add 64-bit image types 2020-11-09 17:17:39 +00:00
glsl_types.cpp glsl/linker: Fix attempts to split up 64bit varyings between slots 2021-04-01 17:16:33 +00:00
glsl_types.h glsl: fix is_integer_16_32 2021-04-10 09:01:54 +00:00
Makefile.sources nir: Add nir_opt_offsets to fold const adds into load/store offsets. 2021-03-17 12:42:23 +00:00
meson.build spirv: add some tests for volatile/available/visible 2020-09-01 17:15:22 +00:00
nir_types.cpp nir: Add a size_align helper function for aligning elements to 16 bytes. 2020-11-16 13:54:22 -08:00
nir_types.h nir: Add a size_align helper function for aligning elements to 16 bytes. 2020-11-16 13:54:22 -08:00
shader_enums.c compiler: Drop now unused gl_varying_slot_name() 2021-02-13 00:44:53 +00:00
shader_enums.h nir: add new VARYING_SLOTs and shader info for packed 16-bit varyings 2021-04-13 05:07:42 +00:00
shader_info.h nir: add new VARYING_SLOTs and shader info for packed 16-bit varyings 2021-04-13 05:07:42 +00:00