intel/compiler: Introduce backend_shader method to propagate IR changes to analysis...
[mesa.git] / src / intel / compiler / brw_predicated_break.cpp
index e60052f36084e06c044ad5fcca92c379ce9d0ea5..cc29b029b4567fd64997ed3839aa8f35561256b6 100644 (file)
@@ -21,7 +21,7 @@
  * IN THE SOFTWARE.
  */
 
-#include "brw_cfg.h"
+#include "brw_shader.h"
 
 using namespace brw;
 
@@ -100,13 +100,15 @@ opt_predicated_break(backend_shader *s)
 
       if (!earlier_block->ends_with_control_flow()) {
          earlier_block->children.make_empty();
-         earlier_block->add_successor(s->cfg->mem_ctx, jump_block);
+         earlier_block->add_successor(s->cfg->mem_ctx, jump_block,
+                                      bblock_link_logical);
       }
 
       if (!later_block->starts_with_control_flow()) {
          later_block->parents.make_empty();
       }
-      jump_block->add_successor(s->cfg->mem_ctx, later_block);
+      jump_block->add_successor(s->cfg->mem_ctx, later_block,
+                                bblock_link_logical);
 
       if (earlier_block->can_combine_with(jump_block)) {
          earlier_block->combine_with(jump_block);
@@ -136,7 +138,7 @@ opt_predicated_break(backend_shader *s)
    }
 
    if (progress)
-      s->invalidate_live_intervals();
+      s->invalidate_analysis(DEPENDENCY_EVERYTHING);
 
    return progress;
 }