Mesa (master): llvmpipe: Avoid adding floating point zero to flat inputs.

Jose Fonseca jrfonseca at kemper.freedesktop.org
Fri May 18 00:01:04 UTC 2012


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

Author: José Fonseca <jose.r.fonseca at gmail.com>
Date:   Fri May 18 01:03:13 2012 +0100

llvmpipe: Avoid adding floating point zero to flat inputs.

Which could clobber integer inputs, if the addition is not optimized away
(e.g., if optimizations are disabled for debugging purposes).

---

 src/gallium/drivers/llvmpipe/lp_bld_interp.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/src/gallium/drivers/llvmpipe/lp_bld_interp.c b/src/gallium/drivers/llvmpipe/lp_bld_interp.c
index 0608ab0..0d51ccb 100644
--- a/src/gallium/drivers/llvmpipe/lp_bld_interp.c
+++ b/src/gallium/drivers/llvmpipe/lp_bld_interp.c
@@ -239,7 +239,10 @@ coeffs_init(struct lp_build_interp_soa_context *bld,
              * Compute the attrib values on the upper-left corner of each quad.
              */
 
-            a = LLVMBuildFAdd(builder, a, dadq2, "");
+            if (interp != LP_INTERP_CONSTANT &&
+                interp != LP_INTERP_FACING) {
+               a = LLVMBuildFAdd(builder, a, dadq2, "");
+	    }
 
 #if PERSPECTIVE_DIVIDE_PER_QUAD
             /*




More information about the mesa-commit mailing list