Mesa (master): ac/nir: make use of ac_build_umin() where possible

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Apr 12 15:29:10 UTC 2019


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

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Wed Apr 10 17:16:48 2019 +0200

ac/nir: make use of ac_build_umin() where possible

This changes the predicate from LessThan to Equal.

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

---

 src/amd/common/ac_nir_to_llvm.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index f074a12c31b..5995e001330 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -757,7 +757,7 @@ static void visit_alu(struct ac_nir_context *ctx, const nir_alu_instr *instr)
 		result = emit_minmax_int(&ctx->ac, LLVMIntUGT, src[0], src[1]);
 		break;
 	case nir_op_umin:
-		result = emit_minmax_int(&ctx->ac, LLVMIntULT, src[0], src[1]);
+		result = ac_build_umin(&ctx->ac, src[0], src[1]);
 		break;
 	case nir_op_isign:
 		result = ac_build_isign(&ctx->ac, src[0],
@@ -1105,8 +1105,8 @@ static void visit_alu(struct ac_nir_context *ctx, const nir_alu_instr *instr)
 						ac_to_float_type(&ctx->ac, def_type), result, src[2]);
 		break;
 	case nir_op_umin3:
-		result = emit_minmax_int(&ctx->ac, LLVMIntULT, src[0], src[1]);
-		result = emit_minmax_int(&ctx->ac, LLVMIntULT, result, src[2]);
+		result = ac_build_umin(&ctx->ac, src[0], src[1]);
+		result = ac_build_umin(&ctx->ac, result, src[2]);
 		break;
 	case nir_op_imin3:
 		result = ac_build_imin(&ctx->ac, src[0], src[1]);
@@ -1142,9 +1142,9 @@ static void visit_alu(struct ac_nir_context *ctx, const nir_alu_instr *instr)
 		break;
 	}
 	case nir_op_umed3: {
-		LLVMValueRef tmp1 = emit_minmax_int(&ctx->ac, LLVMIntULT, src[0], src[1]);
+		LLVMValueRef tmp1 = ac_build_umin(&ctx->ac, src[0], src[1]);
 		LLVMValueRef tmp2 = emit_minmax_int(&ctx->ac, LLVMIntUGT, src[0], src[1]);
-		tmp2 = emit_minmax_int(&ctx->ac, LLVMIntULT, tmp2, src[2]);
+		tmp2 = ac_build_umin(&ctx->ac, tmp2, src[2]);
 		result = emit_minmax_int(&ctx->ac, LLVMIntUGT, tmp1, tmp2);
 		break;
 	}




More information about the mesa-commit mailing list