diff --git a/src/compiler/spirv/vtn_opencl.c b/src/compiler/spirv/vtn_opencl.c index 003a9914110..5eeaed4c3b4 100644 --- a/src/compiler/spirv/vtn_opencl.c +++ b/src/compiler/spirv/vtn_opencl.c @@ -193,6 +193,10 @@ handle_special(struct vtn_builder *b, enum OpenCLstd_Entrypoints opcode, case OpenCLstd_S_Upsample: case OpenCLstd_U_Upsample: return nir_upsample(nb, srcs[0], srcs[1]); + case OpenCLstd_Native_exp: + return nir_fexp(nb, srcs[0]); + case OpenCLstd_Native_log: + return nir_flog(nb, srcs[0]); default: vtn_fail("No NIR equivalent"); return NULL; @@ -391,6 +395,8 @@ vtn_handle_opencl_instruction(struct vtn_builder *b, SpvOp ext_opcode, case OpenCLstd_S_Upsample: case OpenCLstd_U_Upsample: case OpenCLstd_Clz: + case OpenCLstd_Native_exp: + case OpenCLstd_Native_log: handle_instr(b, cl_opcode, w, count, handle_special); return true; case OpenCLstd_Vloadn: