nir: Add helper to create passthrough TCS shader

Based on si_create_passthrough_tcs() as that seemed the most generic of
the various different backend driver implementations.  Uses the
load_tess_level_outer_default and load_tess_level_inner_default
intrinsics to load the gl_TessLevelOuter and gl_TessLevelInner values,
so driver will somehow need to implement those to load the values set
by pipe_context::set_tess_state() or similar.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19259>
This commit is contained in:
Rob Clark
2022-10-22 10:29:43 -07:00
committed by Marge Bot
parent 2b750cacd7
commit a8e84f50bc
3 changed files with 113 additions and 0 deletions

View File

@@ -262,6 +262,7 @@ files_libnir = files(
'nir_opt_undef.c',
'nir_opt_uniform_atomics.c',
'nir_opt_vectorize.c',
'nir_passthrough_tcs.c',
'nir_phi_builder.c',
'nir_phi_builder.h',
'nir_print.c',