nir/glsl: Add support for coarse and fine derivatives

Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
This commit is contained in:
Jason Ekstrand 2014-10-15 16:57:10 -07:00
parent 8c75a7ce59
commit d40b5ca5c5
1 changed files with 6 additions and 2 deletions

View File

@ -1078,8 +1078,12 @@ nir_visitor::visit(ir_expression *ir)
case ir_unop_cos_reduced:
emit(nir_op_fcos_reduced, dest_size, srcs);
break;
case ir_unop_dFdx: emit(nir_op_fddx, dest_size, srcs); break;
case ir_unop_dFdy: emit(nir_op_fddy, dest_size, srcs); break;
case ir_unop_dFdx: emit(nir_op_fddx, dest_size, srcs); break;
case ir_unop_dFdy: emit(nir_op_fddy, dest_size, srcs); break;
case ir_unop_dFdx_fine: emit(nir_op_fddx_fine, dest_size, srcs); break;
case ir_unop_dFdy_fine: emit(nir_op_fddy_fine, dest_size, srcs); break;
case ir_unop_dFdx_coarse: emit(nir_op_fddx_coarse, dest_size, srcs); break;
case ir_unop_dFdy_coarse: emit(nir_op_fddy_coarse, dest_size, srcs); break;
case ir_unop_pack_snorm_2x16:
emit(nir_op_pack_snorm_2x16, dest_size, srcs);
break;