Mesa (master): mesa: Fix test for optimistic coloring being necessary.

Eric Anholt anholt at kemper.freedesktop.org
Wed May 29 17:21:05 UTC 2013


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

Author: Eric Anholt <eric at anholt.net>
Date:   Mon May  6 13:47:27 2013 -0700

mesa: Fix test for optimistic coloring being necessary.

i965 and radeon use ra_set_node_reg() to force payload registers to
specific registers while exposing those registers to the allocator still.
We were treating those register nodes as unsuccessfully allocated in the
ra_simplify() step, leading to walking the registers again to do
optimistic coloring even if there was nothing left ot do.

Acked-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/program/register_allocate.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/mesa/program/register_allocate.c b/src/mesa/program/register_allocate.c
index b8472a2..16739fd 100644
--- a/src/mesa/program/register_allocate.c
+++ b/src/mesa/program/register_allocate.c
@@ -437,7 +437,7 @@ ra_simplify(struct ra_graph *g)
    }
 
    for (i = 0; i < g->count; i++) {
-      if (!g->nodes[i].in_stack)
+      if (!g->nodes[i].in_stack && g->nodes[i].reg == -1)
 	 return GL_FALSE;
    }
 




More information about the mesa-commit mailing list