Mesa (master): ac/nir: set attrib flags for SSBO and image store operations

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Mar 20 21:19:15 UTC 2019


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

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Mar 12 11:37:29 2019 +0100

ac/nir: set attrib flags for SSBO and image store operations

For consistency regarding other store operations.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>

---

 src/amd/common/ac_nir_to_llvm.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 0ca3f83a248..b12cb418e11 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -1593,7 +1593,8 @@ static void visit_store_ssbo(struct ac_nir_context *ctx,
 				ctx->ac.i1false,
 			};
 			ac_build_intrinsic(&ctx->ac, store_name,
-					   ctx->ac.voidt, tbuffer_params, 10, 0);
+					   ctx->ac.voidt, tbuffer_params, 10,
+					   ac_get_store_intr_attribs(writeonly_memory));
 		} else {
 			switch (num_bytes) {
 			case 16: /* v4f32 */
@@ -1621,7 +1622,8 @@ static void visit_store_ssbo(struct ac_nir_context *ctx,
 				ctx->ac.i1false,  /* slc */
 			};
 			ac_build_intrinsic(&ctx->ac, store_name,
-					   ctx->ac.voidt, params, 6, 0);
+					   ctx->ac.voidt, params, 6,
+					   ac_get_store_intr_attribs(writeonly_memory));
 		}
 	}
 }
@@ -2548,7 +2550,8 @@ static void visit_image_store(struct ac_nir_context *ctx,
 			params[4] = LLVMConstInt(ctx->ac.i1, !!(args.cache_policy & ac_glc), 0);
 			params[5] = ctx->ac.i1false;  /* slc */
 		}
-		ac_build_intrinsic(&ctx->ac, name, ctx->ac.voidt, params, 6, 0);
+		ac_build_intrinsic(&ctx->ac, name, ctx->ac.voidt, params, 6,
+				   ac_get_store_intr_attribs(writeonly_memory));
 	} else {
 		args.opcode = ac_image_store;
 		args.data[0] = ac_to_float(&ctx->ac, get_src(ctx, instr->src[3]));




More information about the mesa-commit mailing list