Mesa (staging/19.0): amd/common: Handle nir_deref_type_ptr_as_array for shared memory.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Feb 7 18:23:32 UTC 2019


Module: Mesa
Branch: staging/19.0
Commit: 6f36d3bbc01def8f92a417ee9a1303509343625a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6f36d3bbc01def8f92a417ee9a1303509343625a

Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Thu Jan 24 01:21:28 2019 +0100

amd/common: Handle nir_deref_type_ptr_as_array for shared memory.

Fixes: a2b5cc3c399 "radv: enable variable pointers"
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
(cherry picked from commit 830fd0efc1ae58d722d8efa4b95f708cf70b23ca)

---

 src/amd/common/ac_nir_to_llvm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 73ac6e05a2..bc7623570a 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -3844,6 +3844,10 @@ static void visit_deref(struct ac_nir_context *ctx,
 		result = ac_build_gep0(&ctx->ac, get_src(ctx, instr->parent),
 		                       get_src(ctx, instr->arr.index));
 		break;
+	case nir_deref_type_ptr_as_array:
+		result = ac_build_gep_ptr(&ctx->ac, get_src(ctx, instr->parent),
+		                          get_src(ctx, instr->arr.index));
+		break;
 	case nir_deref_type_cast:
 		result = get_src(ctx, instr->parent);
 		break;




More information about the mesa-commit mailing list