nir: Support sysval tess levels in SPIR-V to NIR
[mesa.git] / src / compiler / spirv / vtn_opencl.c
index eb6db0c1eb965112f89c740d0f6ba3be8f243d7c..e332810302d94f27183c28c7701e3fd79cb71cb6 100644 (file)
@@ -88,7 +88,11 @@ nir_alu_op_for_opencl_opcode(struct vtn_builder *b,
    case OpenCLstd_Native_divide: return nir_op_fdiv;
    case OpenCLstd_Native_exp2: return nir_op_fexp2;
    case OpenCLstd_Native_log2: return nir_op_flog2;
+   case OpenCLstd_Native_powr: return nir_op_fpow;
+   case OpenCLstd_Native_recip: return nir_op_frcp;
+   case OpenCLstd_Native_rsqrt: return nir_op_frsq;
    case OpenCLstd_Native_sin: return nir_op_fsin;
+   case OpenCLstd_Native_sqrt: return nir_op_fsqrt;
    case OpenCLstd_SMul_hi: return nir_op_imul_high;
    case OpenCLstd_UMul_hi: return nir_op_umul_high;
    case OpenCLstd_Popcount: return nir_op_bit_count;
@@ -359,7 +363,11 @@ vtn_handle_opencl_instruction(struct vtn_builder *b, SpvOp ext_opcode,
    case OpenCLstd_Native_divide:
    case OpenCLstd_Native_exp2:
    case OpenCLstd_Native_log2:
+   case OpenCLstd_Native_powr:
+   case OpenCLstd_Native_recip:
+   case OpenCLstd_Native_rsqrt:
    case OpenCLstd_Native_sin:
+   case OpenCLstd_Native_sqrt:
    case OpenCLstd_Fmod:
    case OpenCLstd_SMul_hi:
    case OpenCLstd_UMul_hi: