Mesa (master): r600g/sb: fix initial register allocation

Vadim Girlin vadimg at kemper.freedesktop.org
Wed Jul 17 14:33:32 UTC 2013


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

Author: Vadim Girlin <vadimgirlin at gmail.com>
Date:   Wed Jul 17 12:05:32 2013 +0400

r600g/sb: fix initial register allocation

Mark values that are members of the 'same register' constraint as
preallocated in ra_init pass, this will prevent incorrect
reallocation in scheduler in some cases.

Should fix https://bugs.freedesktop.org/show_bug.cgi?id=66713

Signed-off-by: Vadim Girlin <vadimgirlin at gmail.com>

---

 src/gallium/drivers/r600/sb/sb_ra_coalesce.cpp |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/r600/sb/sb_ra_coalesce.cpp b/src/gallium/drivers/r600/sb/sb_ra_coalesce.cpp
index 582f553..7f388af 100644
--- a/src/gallium/drivers/r600/sb/sb_ra_coalesce.cpp
+++ b/src/gallium/drivers/r600/sb/sb_ra_coalesce.cpp
@@ -593,6 +593,7 @@ int coalescer::color_reg_constraint(ra_constraint *c) {
 
 		color_chunk(cc, color);
 		cc->fix();
+		cc->set_prealloc();
 	}
 
 	return 0;




More information about the mesa-commit mailing list