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

Author: Rhys Perry <pendingchao...@gmail.com>
Date:   Fri Nov 17 11:21:58 2023 +0000

ac/llvm: implement msad_4x8

Signed-off-by: Rhys Perry <pendingchao...@gmail.com>
Reviewed-by: Georg Lehmann <dadschoo...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26907>

---

 src/amd/llvm/ac_nir_to_llvm.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/amd/llvm/ac_nir_to_llvm.c b/src/amd/llvm/ac_nir_to_llvm.c
index 27cfe82b43a..e712e2d6820 100644
--- a/src/amd/llvm/ac_nir_to_llvm.c
+++ b/src/amd/llvm/ac_nir_to_llvm.c
@@ -1258,6 +1258,11 @@ static bool visit_alu(struct ac_nir_context *ctx, const 
nir_alu_instr *instr)
                                   (LLVMValueRef[]){src[0], src[1], src[2]}, 3, 
0);
       break;
 
+   case nir_op_msad_4x8:
+      result = ac_build_intrinsic(&ctx->ac, "llvm.amdgcn.msad.u8", ctx->ac.i32,
+                                  (LLVMValueRef[]){src[1], src[0], src[2]}, 3, 
0);
+      break;
+
    default:
       fprintf(stderr, "Unknown NIR alu instr: ");
       nir_print_instr(&instr->instr, stderr);

Reply via email to