summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Gmeiner <cgmeiner@igalia.com>2023-07-11 15:36:34 +0200
committerMarge Bot <emma+marge@anholt.net>2023-07-21 08:52:03 +0000
commitfb48d3d1da0ab493fbd22f62dd85a9ab0c0811a0 (patch)
tree22ea75163f83ac786f853430434013c3949b4983
parent65ffa5b0b8066045b657d155d4ef16e5e7f38525 (diff)
nir: add enta specific intrinsic used for txs lowering
Non of the know etnaviv GPUs support this feature in hardware and the binary blob provides sizes via uniforms too. Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com> Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24217>
-rw-r--r--src/compiler/nir/nir_intrinsics.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py
index 187f5a555d7..955a87c455e 100644
--- a/src/compiler/nir/nir_intrinsics.py
+++ b/src/compiler/nir/nir_intrinsics.py
@@ -1905,3 +1905,11 @@ system_value("ray_query_global_intel", 1, bit_sizes=[64])
# is defined to be whatever thing the hardware can easily give you, so long as
# it's in normalized coordinates in the range [0, 1] across the point.
intrinsic("load_point_coord_maybe_flipped", dest_comp=2, bit_sizes=[32])
+
+
+# Load texture size values:
+#
+# Takes a sampler # and returns width, height and depth. If texture is a array
+# texture it returns width, height and array size. Used for txs lowering.
+intrinsic("load_texture_size_etna", src_comp=[1], dest_comp=3,
+ flags=[CAN_ELIMINATE, CAN_REORDER])