[Mesa-dev] [PATCH 2/2] i965: Remove artificial dependency between math instructions.

Matt Turner mattst88 at gmail.com
Mon Jul 7 13:39:17 PDT 2014


... on Gen7+. I'm not actually sure which class Gen6 fits into.
---
 src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp b/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp
index 10a8f6d..04ac242 100644
--- a/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp
+++ b/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp
@@ -1356,6 +1356,7 @@ vec4_instruction_scheduler::issue_time(backend_instruction *inst)
 void
 instruction_scheduler::schedule_instructions(backend_instruction *next_block_header)
 {
+   struct brw_context *brw = bv->brw;
    time = 0;
 
    /* Remove non-DAG heads from the list. */
@@ -1424,7 +1425,7 @@ instruction_scheduler::schedule_instructions(backend_instruction *next_block_hea
        * the next math instruction isn't going to make progress until the first
        * is done.
        */
-      if (chosen->inst->is_math()) {
+      if (brw->gen < 6 && chosen->inst->is_math()) {
          foreach_in_list(schedule_node, n, &instructions) {
 	    if (n->inst->is_math())
 	       n->unblocked_time = MAX2(n->unblocked_time,
-- 
1.8.5.5



More information about the mesa-dev mailing list