From: Brian Paul Date: Tue, 14 Dec 2010 17:38:15 +0000 (-0700) Subject: gallivm: do texture swizzle after shadow compare X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=dfbc20593ec89ef5ddcb0dba3b05ea95e296861e;p=mesa.git gallivm: do texture swizzle after shadow compare We need to swizzle after the shadow comparison so that the GL_DEPTH_MODE functionality is handled properly. This fixes all the piglit glsl-fs-shadow2d*.shader_test cases, except for glsl-fs-shadow2dproj-bias.shader_test which fails because of a bug in the GLSL compiler (fd.o 32395). --- diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c index 991f6fa5ef7..e61cf9541ea 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c @@ -1098,6 +1098,4 @@ lp_build_sample_aos(struct lp_build_sample_context *bld, texel_out[2] = unswizzled[2]; texel_out[3] = unswizzled[3]; } - - apply_sampler_swizzle(bld, texel_out); } diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c index cf46e2be832..e685f4b73f0 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c @@ -187,8 +187,6 @@ lp_build_sample_texel_soa(struct lp_build_sample_context *bld, border_chan_vec, texel_out[chan]); } } - - apply_sampler_swizzle(bld, texel_out); } @@ -1268,4 +1266,6 @@ lp_build_sample_soa(struct gallivm_state *gallivm, } lp_build_sample_compare(&bld, r, texel_out); + + apply_sampler_swizzle(&bld, texel_out); }