mesa/src/compiler
Alyssa Rosenzweig 47ed0b41be nir: Add Mali load_output taking converison
Mali's LD_TILE instruction (mapping to NIR's load_output) requires a "conversion
descriptor" specifying how to convert from the register foramt to the tilebuffer
format. To implement framebuffer fetch on OpenGL without shader variants, we
generate these descriptors in the driver and pass them in a uniform. However, to
comply with the Ekstrand Rule, we can't have magically materialized system
values -- they should come only from the NIR where the driver can lower as it
pleases (e.g. PanVK can lower to a constant because it knows the framebuffer
format at pipeline create time). Add intrinsics to model this.

Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20906>
2023-03-23 23:53:45 +00:00
..
clc clc: Include opencl-c-base.h with LLVM 15 (using builtins) 2023-02-11 05:24:08 +00:00
glsl glsl: Write a new test for GLSL and NIR mediump lowering. 2023-03-22 22:52:45 +00:00
isaspec ir3, isaspec: add raw instruction to assembler/disassembler. 2023-01-26 14:26:11 +00:00
nir nir: Add Mali load_output taking converison 2023-03-23 23:53:45 +00:00
spirv spirv,nir: add support for SpvBuiltInFullyCoveredEXT 2023-03-21 08:44:09 +00:00
builtin_type_macros.h glsl: add texture subpass variants 2022-11-10 10:21:34 +00:00
glsl_types.cpp compiler: Handle nested arrays correctly for computing CL size/alignment 2022-12-02 09:52:44 -08:00
glsl_types.h glsl: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER 2022-11-09 04:38:28 +00:00
meson.build meson: inline gtest_test_protocol now that it's always 'gtest' 2023-03-10 07:20:29 +00:00
nir_gl_types.h mesa: #include "util/glheader.h" instead GL/gl.h in shared code 2022-11-03 16:07:31 +00:00
nir_types.cpp nir/types: Add some asserts to glsl_get_struct_field() 2022-11-01 14:48:41 +00:00
nir_types.h nir: Add a pass to lower mediump temps and shared mem. 2022-09-01 22:39:39 +00:00
shader_enums.c spirv,nir: add support for SpvBuiltInFullyCoveredEXT 2023-03-21 08:44:09 +00:00
shader_enums.h spirv,nir: add support for SpvBuiltInFullyCoveredEXT 2023-03-21 08:44:09 +00:00
shader_info.h nir: Add memory coherency information to shaders. 2023-03-23 16:59:56 +00:00