aboutsummaryrefslogtreecommitdiffstats
path: root/src/amd/common
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2019-03-12 11:37:29 +0100
committerSamuel Pitoiset <[email protected]>2019-03-20 22:18:37 +0100
commit4debe49d4445eda94b7472f05f0d6371283deef0 (patch)
tree8b2c818e1369daff9b5c6706bdde1db6c1896fc9 /src/amd/common
parent1b553dd47f82a2ccd9fab8b866a59473d1eb6a6c (diff)
ac/nir: set attrib flags for SSBO and image store operations
For consistency regarding other store operations. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src/amd/common')
-rw-r--r--src/amd/common/ac_nir_to_llvm.c9
1 files 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]));