diff options
author | marha <marha@users.sourceforge.net> | 2012-10-04 10:58:53 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-10-04 10:58:53 +0200 |
commit | bd13c464f728719fceb8a4918b52727ec125ea6e (patch) | |
tree | 05a48375076036097a9e28356738c05a16cc5ed0 /mesalib/src/mesa/program/register_allocate.c | |
parent | bab6395ded69210cbc550c0fb3765160e4405283 (diff) | |
parent | 0130346adbce7e6b2422429887fc46c76806d845 (diff) | |
download | vcxsrv-bd13c464f728719fceb8a4918b52727ec125ea6e.tar.gz vcxsrv-bd13c464f728719fceb8a4918b52727ec125ea6e.tar.bz2 vcxsrv-bd13c464f728719fceb8a4918b52727ec125ea6e.zip |
Merge remote-tracking branch 'origin/released'
* origin/released:
randrproto mesa pixman git update 4 oct 2012
Diffstat (limited to 'mesalib/src/mesa/program/register_allocate.c')
-rw-r--r-- | mesalib/src/mesa/program/register_allocate.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/mesalib/src/mesa/program/register_allocate.c b/mesalib/src/mesa/program/register_allocate.c index 97d4e331c..88793dbdc 100644 --- a/mesalib/src/mesa/program/register_allocate.c +++ b/mesalib/src/mesa/program/register_allocate.c @@ -555,6 +555,13 @@ ra_get_best_spill_node(struct ra_graph *g) if (cost <= 0.0) continue; + /* Only consider registers for spilling if they are still in the + * interference graph (those on the stack have already been proven to be + * allocatable without spilling). + */ + if (g->nodes[n].in_stack) + continue; + benefit = ra_get_spill_benefit(g, n); if (benefit / cost > best_benefit) { |