i965: Move more code into codegen-branch of the fs_visitor::run() if statement
authorKristian Høgsberg <krh@bitplanet.net>
Fri, 14 Nov 2014 00:28:17 +0000 (16:28 -0800)
committerKenneth Graunke <kenneth@whitecape.org>
Sat, 15 Nov 2014 03:38:05 +0000 (19:38 -0800)
These last few operations all only apply when we've actually generated
code, optimized and allocated registers.  The dummy and the repclear
shaders don't need the gen4 send workaround, and don't spill.  This
means we can move these lines into the else-branch, which will make
the following refactoring easier.

v2 (Ken): Rebase on master, which removed the uncompressed stack.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_fs.cpp

index 1289a400f365356b148ab517164b249dfb1291ef..0bdd8abcf8ab83785bcb4063e8b15d1993567518 100644 (file)
@@ -3624,22 +3624,21 @@ fs_visitor::run()
                break;
          }
       }
-   }
 
-   /* This must come after all optimization and register allocation, since
-    * it inserts dead code that happens to have side effects, and it does
-    * so based on the actual physical registers in use.
-    */
-   insert_gen4_send_dependency_workarounds();
+      /* This must come after all optimization and register allocation, since
+       * it inserts dead code that happens to have side effects, and it does
+       * so based on the actual physical registers in use.
+       */
+      insert_gen4_send_dependency_workarounds();
 
-   if (failed)
-      return false;
+      if (failed)
+         return false;
 
-   if (!allocated_without_spills)
-      schedule_instructions(SCHEDULE_POST);
+      if (!allocated_without_spills)
+         schedule_instructions(SCHEDULE_POST);
 
-   if (last_scratch > 0) {
-      prog_data->total_scratch = brw_get_scratch_size(last_scratch);
+      if (last_scratch > 0)
+         prog_data->total_scratch = brw_get_scratch_size(last_scratch);
    }
 
    if (stage == MESA_SHADER_FRAGMENT) {