[Nouveau] [RFC PATCH] nv50/ir: allow spilling of def values for constrained MERGES/UNIONS

Tobias Klausmann tobias.johannes.klausmann at mni.thm.de
Mon Jul 31 11:21:40 UTC 2017


This lets us spill more values and compile a big shader for Civilization 6.

Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann at mni.thm.de>
---
 src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp
index b33d7b4010..f29c8a1a95 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp
@@ -2344,8 +2344,6 @@ RegAlloc::InsertConstraintsPass::insertConstraintMoves()
             cst->setSrc(s, mov->getDef(0));
             cst->bb->insertBefore(cst, mov);
 
-            cst->getDef(0)->asLValue()->noSpill = 1; // doesn't help
-
             if (cst->op == OP_UNION)
                mov->setPredicate(defi->cc, defi->getPredicate());
          }
-- 
2.13.3



More information about the Nouveau mailing list