Mesa (master): nir: Add r600 specific intrinsics for tesselation shader IO

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Apr 23 18:50:27 UTC 2020


Module: Mesa
Branch: master
Commit: 42aa348dadeac7faf21ec8e9d8109255f2adf124
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=42aa348dadeac7faf21ec8e9d8109255f2adf124

Author: Gert Wollny <gert.wollny at collabora.com>
Date:   Sun Apr 12 16:35:42 2020 +0200

nir: Add r600 specific intrinsics for tesselation shader IO

Signed-off-by: Gert Wollny <gert.wollny at collabora.com>
Reviewed-by: Eric Anholt <eric at anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4610>

---

 src/compiler/nir/nir_intrinsics.py | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py
index fb4c459e062..6ce3ce147b6 100644
--- a/src/compiler/nir/nir_intrinsics.py
+++ b/src/compiler/nir/nir_intrinsics.py
@@ -889,6 +889,18 @@ load("sampler_lod_parameters_pan", 1, [CAN_ELIMINATE, CAN_REORDER])
 # src[] = { buffer_index, offset }.
 load("ubo_r600", 2, [ACCESS, ALIGN_MUL, ALIGN_OFFSET], flags=[CAN_ELIMINATE, CAN_REORDER])
 
+# location where the tesselation data is stored in LDS
+system_value("tcs_in_param_base_r600", 4)
+system_value("tcs_out_param_base_r600", 4)
+system_value("tcs_rel_patch_id_r600", 1)
+system_value("tcs_tess_factor_base_r600", 1)
+
+# load as many components as needed giving per-component addresses
+intrinsic("load_local_shared_r600", src_comp=[0], dest_comp=0, indices = [COMPONENT], flags = [CAN_ELIMINATE, CAN_REORDER])
+
+store("local_shared_r600", 2, [WRMASK])
+store("tf_r600", 1)
+
 # V3D-specific instrinc for tile buffer color reads.
 #
 # The hardware requires that we read the samples and components of a pixel



More information about the mesa-commit mailing list