Mesa (master): gallivm: do texture swizzle after shadow compare
Brian Paul
brianp at kemper.freedesktop.org
Tue Dec 14 19:17:35 UTC 2010
Module: Mesa
Branch: master
Commit: dfbc20593ec89ef5ddcb0dba3b05ea95e296861e
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dfbc20593ec89ef5ddcb0dba3b05ea95e296861e
Author: Brian Paul <brianp at vmware.com>
Date: Tue Dec 14 10:38:15 2010 -0700
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).
---
src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c | 2 --
src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c | 4 ++--
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c
index 991f6fa..e61cf95 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 cf46e2b..e685f4b 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);
}
More information about the mesa-commit
mailing list