Module: Mesa Branch: master Commit: e7bcf28d8bfad3ddf8c156a1256d4d624b8e4c9d URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e7bcf28d8bfad3ddf8c156a1256d4d624b8e4c9d
Author: Jason Ekstrand <[email protected]> Date: Thu Jul 21 12:01:46 2016 -0700 spirv/nir: Handle texture projectors Signed-off-by: Jason Ekstrand <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Cc: "12.0" <[email protected]> --- src/compiler/spirv/spirv_to_nir.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c index 6ebf951..27d2b42 100644 --- a/src/compiler/spirv/spirv_to_nir.c +++ b/src/compiler/spirv/spirv_to_nir.c @@ -1442,6 +1442,21 @@ vtn_handle_texture(struct vtn_builder *b, SpvOp opcode, break; } + switch (opcode) { + case SpvOpImageSampleProjImplicitLod: + case SpvOpImageSampleProjExplicitLod: + case SpvOpImageSampleProjDrefImplicitLod: + case SpvOpImageSampleProjDrefExplicitLod: + /* These have the projector as the last coordinate component */ + p->src = nir_src_for_ssa(nir_channel(&b->nb, coord, coord_components)); + p->src_type = nir_tex_src_projector; + p++; + break; + + default: + break; + } + unsigned gather_component = 0; switch (opcode) { case SpvOpImageSampleDrefImplicitLod: _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
