vtn/opencl: add native_tan-support
authorErik Faye-Lund <erik.faye-lund@collabora.com>
Mon, 16 Mar 2020 12:00:27 +0000 (13:00 +0100)
committerMarge Bot <eric+marge@anholt.net>
Mon, 4 May 2020 11:31:29 +0000 (11:31 +0000)
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-By: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4811>

src/compiler/spirv/vtn_opencl.c

index eb8aaac7d1cb8e40908bfac7c4274d5c41c8f644..89fad0bad79cd5b48a64327814a1f894426a3984 100644 (file)
@@ -204,6 +204,8 @@ handle_special(struct vtn_builder *b, enum OpenCLstd_Entrypoints opcode,
       return nir_flog(nb, srcs[0]);
    case OpenCLstd_Native_log10:
       return nir_fmul_imm(nb, nir_flog2(nb, srcs[0]), log(2) / log(10));
+   case OpenCLstd_Native_tan:
+      return nir_ftan(nb, srcs[0]);
    default:
       vtn_fail("No NIR equivalent");
       return NULL;
@@ -409,6 +411,7 @@ vtn_handle_opencl_instruction(struct vtn_builder *b, SpvOp ext_opcode,
    case OpenCLstd_Native_exp10:
    case OpenCLstd_Native_log:
    case OpenCLstd_Native_log10:
+   case OpenCLstd_Native_tan:
       handle_instr(b, cl_opcode, w, count, handle_special);
       return true;
    case OpenCLstd_Vloadn: