Mesa (master): util: add lost code to util_make_fragment_tex_shader_writemask()

Keith Whitwell keithw at kemper.freedesktop.org
Mon Oct 5 14:52:33 UTC 2009


Module: Mesa
Branch: master
Commit: 6a085184ebf251f145181796e317ffa179a38bae
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6a085184ebf251f145181796e317ffa179a38bae

Author: Keith Whitwell <keithw at vmware.com>
Date:   Mon Oct  5 15:46:47 2009 +0100

util: add lost code to util_make_fragment_tex_shader_writemask()

This got ported to ureg at some point, but lost the code that
distinguishes it from regular util_make_fragment_tex_shader().

---

 src/gallium/auxiliary/util/u_simple_shaders.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/src/gallium/auxiliary/util/u_simple_shaders.c b/src/gallium/auxiliary/util/u_simple_shaders.c
index 0d706f9..1c8b157 100644
--- a/src/gallium/auxiliary/util/u_simple_shaders.c
+++ b/src/gallium/auxiliary/util/u_simple_shaders.c
@@ -108,7 +108,15 @@ util_make_fragment_tex_shader_writemask(struct pipe_context *pipe,
                            TGSI_SEMANTIC_COLOR,
                            0 );
 
-   ureg_TEX( ureg, out, TGSI_TEXTURE_2D, tex, sampler );
+   if (writemask != TGSI_WRITEMASK_XYZW) {
+      struct ureg_src imm = ureg_imm4f( ureg, 0, 0, 0, 1 );
+
+      ureg_MOV( ureg, out, imm );
+   }
+
+   ureg_TEX( ureg, 
+             ureg_writemask(out, writemask),
+             TGSI_TEXTURE_2D, tex, sampler );
    ureg_END( ureg );
 
    return ureg_create_shader_and_destroy( ureg, pipe );




More information about the mesa-commit mailing list