mesa/src/compiler
Alyssa Rosenzweig 0b588506ff vtn: introduce vtn_bindgen tool
This is a small command line utility to generate NIR bindings for a SPIR-V
library, using vtn's infrastructure for this. This is split out from asahi_clc
in an effort to make clc more modular. Notably, this tool does not depend on:

* LLVM, SPIRV-LLVM, CLC, etc (important for Android, and gets us closer to the
  clang spir-v future)
* Driver details other than addressing modes (which are already largely
  hardcoded, setting them to anything else doesn't make a ton of sense for CL C)
* The driver itself, or its backend compiler. That means that the backend
  compiler can depend on the generated bindings header, even if the compiler is
  also used for internal shader precompiling. This breaks the dep loop.

So in short term, this solves the dependency problem for asahi, and in the long
term helps more drivers use clc infrastructure without re-rolling things
themselves.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32226>
2024-11-22 23:04:17 +00:00
..
clc clc: add mesa_clc tool 2024-11-01 13:25:37 -07:00
glsl glsl: remove more now unused params from glsl_to_nir() 2024-11-21 03:21:08 +00:00
isaspec build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
nir nir: add nir_fixup_is_exported pass 2024-11-22 23:04:17 +00:00
rust compiler/rust: Use std::mem::offset_of!() 2024-11-18 22:29:13 +00:00
spirv vtn: introduce vtn_bindgen tool 2024-11-22 23:04:17 +00:00
builtin_types.py compiler/types: Add multisample vimage/vtexture types 2024-08-27 15:06:16 +00:00
builtin_types_c.py util,vulkan,mesa,compiler: Generate source files with utf8 encoding from mako template 2023-12-07 12:41:07 +00:00
builtin_types_h.py util,vulkan,mesa,compiler: Generate source files with utf8 encoding from mako template 2023-12-07 12:41:07 +00:00
glsl_types.c compiler/types: Add multisample vimage/vtexture types 2024-08-27 15:06:16 +00:00
glsl_types.h compiler: make glsl_sampler_dim available to CL 2024-11-20 16:53:51 +00:00
meson.build nak: Move bitset to compiler crate 2024-08-07 21:08:18 +00:00
shader_enums.c nir: add SYSTEM_VALUE_PIXEL_COORD 2024-11-04 12:34:30 +00:00
shader_enums.h compiler: make glsl_sampler_dim available to CL 2024-11-20 16:53:51 +00:00
shader_info.h nir: add shader_info::tess::tcs_same_invocation_inputs_read(_indirect) 2024-10-21 18:53:51 +00:00