Mesa (master): radeonsi: make use of ac_init_exec_full_mask()

Samuel Pitoiset hakzsam at kemper.freedesktop.org
Wed Dec 27 08:58:03 UTC 2017


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

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Wed Dec 13 13:59:12 2017 +0100

radeonsi: make use of ac_init_exec_full_mask()

Similar to si_init_exec_full_mask().

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>

---

 src/gallium/drivers/radeonsi/si_shader.c | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index 16b2ab9732..ef1b460f45 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -5673,14 +5673,6 @@ static void si_count_scratch_private_memory(struct si_shader_context *ctx)
 	}
 }
 
-static void si_init_exec_full_mask(struct si_shader_context *ctx)
-{
-	LLVMValueRef full_mask = LLVMConstInt(ctx->i64, ~0ull, 0);
-	lp_build_intrinsic(ctx->ac.builder,
-			   "llvm.amdgcn.init.exec", ctx->voidt,
-			   &full_mask, 1, LP_FUNC_ATTR_CONVERGENT);
-}
-
 static void si_init_exec_from_input(struct si_shader_context *ctx,
 				    unsigned param, unsigned bitoffset)
 {
@@ -5783,7 +5775,7 @@ static bool si_compile_tgsi_main(struct si_shader_context *ctx,
 		} else if (ctx->type == PIPE_SHADER_TESS_CTRL ||
 			   ctx->type == PIPE_SHADER_GEOMETRY) {
 			if (!is_monolithic)
-				si_init_exec_full_mask(ctx);
+				ac_init_exec_full_mask(&ctx->ac);
 
 			/* The barrier must execute for all shaders in a
 			 * threadgroup.
@@ -6073,7 +6065,7 @@ static void si_build_gs_prolog_function(struct si_shader_context *ctx,
 	 * mask.
 	 */
 	if (ctx->screen->info.chip_class >= GFX9 && !key->gs_prolog.is_monolithic)
-		si_init_exec_full_mask(ctx);
+		ac_init_exec_full_mask(&ctx->ac);
 
 	/* Copy inputs to outputs. This should be no-op, as the registers match,
 	 * but it will prevent the compiler from overwriting them unintentionally.
@@ -6225,7 +6217,7 @@ static void si_build_wrapper_function(struct si_shader_context *ctx,
 			   si_get_max_workgroup_size(ctx->shader));
 
 	if (is_merged_shader(ctx->shader))
-		si_init_exec_full_mask(ctx);
+		ac_init_exec_full_mask(&ctx->ac);
 
 	/* Record the arguments of the function as if they were an output of
 	 * a previous part.




More information about the mesa-commit mailing list