[Mesa-dev] [PATCH 2/2] [RFC] i965/fs: Reward spills in if/else/endif blocks

Ben Widawsky benjamin.widawsky at intel.com
Fri Jun 19 17:21:02 PDT 2015


Just like the previous patch but for the FS.

Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
---
 src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp
index cd78816..d53449a 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp
@@ -805,10 +805,12 @@ fs_visitor::choose_spill_reg(struct ra_graph *g)
 
       switch (inst->opcode) {
 
+      case BRW_OPCODE_ENDIF:
       case BRW_OPCODE_DO:
 	 loop_scale *= 10;
 	 break;
 
+      case BRW_OPCODE_IF:
       case BRW_OPCODE_WHILE:
 	 loop_scale /= 10;
 	 break;
-- 
2.4.4



More information about the mesa-dev mailing list