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

Author: Samuel Pitoiset <[email protected]>
Date:   Mon Apr  8 09:24:56 2019 +0200

ac/nir: fix nir_op_b2f16

Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>

---

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

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index f2d527540d8..3d2f738edec 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -322,10 +322,16 @@ static LLVMValueRef emit_b2f(struct ac_llvm_context *ctx,
                                           "");
        result = LLVMBuildBitCast(ctx->builder, result, ctx->f32, "");
 
-       if (bitsize == 32)
+       switch (bitsize) {
+       case 16:
+               return LLVMBuildFPTrunc(ctx->builder, result, ctx->f16, "");
+       case 32:
                return result;
-
-       return LLVMBuildFPExt(ctx->builder, result, ctx->f64, "");
+       case 64:
+               return LLVMBuildFPExt(ctx->builder, result, ctx->f64, "");
+       default:
+               unreachable("Unsupported bit size.");
+       }
 }
 
 static LLVMValueRef emit_f2b(struct ac_llvm_context *ctx,

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to