Mesa (master): Revert "i965: fix problem with constant out of bounds access (v2)"

Kenneth Graunke kwg at kemper.freedesktop.org
Thu May 30 06:32:51 UTC 2013


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

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Wed May 29 23:27:45 2013 -0700

Revert "i965: fix problem with constant out of bounds access (v2)"

This reverts commit 98dfd59a0445666060c97b0dccaf0e9f030b547a.

The patch was clearly not Piglit tested, as it caused at least 225
tests to start crashing with assertion failures.  That was before my
desktop tanked and the test run died completely.

---

 src/mesa/drivers/dri/i965/brw_fs.cpp |   12 +-----------
 1 files changed, 1 insertions(+), 11 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index 9efdfc8..baaa25c 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -1504,13 +1504,7 @@ fs_visitor::remove_dead_constants()
 	    if (inst->src[i].file != UNIFORM)
 	       continue;
 
-	    /* if we get a negative constant nr or one greater than we can
-	     * handle, this can cause an overflow, we can't just refuse to
-	     * build, so just go undefined and alias everyone to constant 0.
-	     */
-	    if (constant_nr < 0 || constant_nr >= (int)c->prog_data.nr_params) {
-	       constant_nr = 0;
-	    }
+	    assert(constant_nr < (int)c->prog_data.nr_params);
 
 	    /* For now, set this to non-negative.  We'll give it the
 	     * actual new number in a moment, in order to keep the
@@ -1558,10 +1552,6 @@ fs_visitor::remove_dead_constants()
 	 if (inst->src[i].file != UNIFORM)
 	    continue;
 
-         /* as above alias to 0 */
-	 if (constant_nr < 0 || constant_nr >= (int)c->prog_data.nr_params) {
-	    constant_nr = 0;
-	 }
 	 assert(this->params_remap[constant_nr] != -1);
 	 inst->src[i].reg = this->params_remap[constant_nr];
 	 inst->src[i].reg_offset = 0;




More information about the mesa-commit mailing list