Mesa (main): r300: implement forgotten tgsi's cases of textures

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Oct 1 23:07:07 UTC 2021


Module: Mesa
Branch: main
Commit: b47017192b0738d93512e41120ee5eace25ad4a3
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b47017192b0738d93512e41120ee5eace25ad4a3

Author: Filip Gawin <filip.gawin at zoho.com>
Date:   Fri Oct  1 11:20:27 2021 +0200

r300: implement forgotten tgsi's cases of textures

Fixes: d0c398a8 ("r300g: Use radeon compiler for fragment programs")

Reviewed-by: Emma Anholt <emma at anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13135>

---

 src/gallium/drivers/r300/r300_tgsi_to_rc.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/src/gallium/drivers/r300/r300_tgsi_to_rc.c b/src/gallium/drivers/r300/r300_tgsi_to_rc.c
index 7217dd09a31..14fb3182d40 100644
--- a/src/gallium/drivers/r300/r300_tgsi_to_rc.c
+++ b/src/gallium/drivers/r300/r300_tgsi_to_rc.c
@@ -237,6 +237,27 @@ static void transform_texture(struct rc_instruction * dst, struct tgsi_instructi
             dst->U.I.TexShadow = 1;
             *shadowSamplers |= 1 << dst->U.I.TexSrcUnit;
             break;
+        case TGSI_TEXTURE_1D_ARRAY:
+            dst->U.I.TexSrcTarget = RC_TEXTURE_1D_ARRAY;
+            break;
+        case TGSI_TEXTURE_2D_ARRAY:
+            dst->U.I.TexSrcTarget = RC_TEXTURE_2D_ARRAY;
+            break;
+        case TGSI_TEXTURE_SHADOW1D_ARRAY:
+            dst->U.I.TexSrcTarget = RC_TEXTURE_1D_ARRAY;
+            dst->U.I.TexShadow = 1;
+            *shadowSamplers |= 1 << dst->U.I.TexSrcUnit;
+            break;
+        case TGSI_TEXTURE_SHADOW2D_ARRAY:
+            dst->U.I.TexSrcTarget = RC_TEXTURE_2D_ARRAY;
+            dst->U.I.TexShadow = 1;
+            *shadowSamplers |= 1 << dst->U.I.TexSrcUnit;
+            break;
+        case TGSI_TEXTURE_SHADOWCUBE:
+            dst->U.I.TexSrcTarget = RC_TEXTURE_CUBE;
+            dst->U.I.TexShadow = 1;
+            *shadowSamplers |= 1 << dst->U.I.TexSrcUnit;
+            break;
     }
     dst->U.I.TexSwizzle = RC_SWIZZLE_XYZW;
 }



More information about the mesa-commit mailing list