Mesa (master): radv/ac: handle nir irem opcode.

Dave Airlie airlied at kemper.freedesktop.org
Mon Jan 30 19:40:12 UTC 2017


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

Author: Dave Airlie <airlied at redhat.com>
Date:   Tue Jan 31 04:50:30 2017 +1000

radv/ac: handle nir irem opcode.

This fixes:
dEQP-VK.spirv_assembly.instruction.compute.opsrem.*

Reviewed-by: Andres Rodriguez <andresx7 at gmail.com>
Cc: "17.0" <mesa-stable at lists.freedesktop.org"
Signed-off-by: Dave Airlie <airlied at redhat.com>

---

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

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index b90148e..bfe6a2e 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -1273,6 +1273,9 @@ static void visit_alu(struct nir_to_llvm_context *ctx, nir_alu_instr *instr)
 		src[1] = to_float(ctx, src[1]);
 		result = LLVMBuildFRem(ctx->builder, src[0], src[1], "");
 		break;
+	case nir_op_irem:
+		result = LLVMBuildSRem(ctx->builder, src[0], src[1], "");
+		break;
 	case nir_op_idiv:
 		result = LLVMBuildSDiv(ctx->builder, src[0], src[1], "");
 		break;




More information about the mesa-commit mailing list