Everything has been converted to preserve the CFG. --- src/mesa/drivers/dri/i965/brw_dead_control_flow.cpp | 2 +- src/mesa/drivers/dri/i965/brw_fs.cpp | 20 ++++++++++---------- src/mesa/drivers/dri/i965/brw_fs.h | 2 +- .../drivers/dri/i965/brw_fs_copy_propagation.cpp | 2 +- src/mesa/drivers/dri/i965/brw_fs_cse.cpp | 2 +- .../drivers/dri/i965/brw_fs_dead_code_eliminate.cpp | 2 +- src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp | 5 +---- .../dri/i965/brw_fs_peephole_predicated_break.cpp | 2 +- src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp | 2 +- .../drivers/dri/i965/brw_fs_register_coalesce.cpp | 2 +- .../drivers/dri/i965/brw_fs_saturate_propagation.cpp | 2 +- src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp | 2 +- .../drivers/dri/i965/brw_schedule_instructions.cpp | 4 ++-- src/mesa/drivers/dri/i965/brw_shader.h | 2 +- src/mesa/drivers/dri/i965/brw_vec4.cpp | 10 +++++----- src/mesa/drivers/dri/i965/brw_vec4.h | 2 +- .../drivers/dri/i965/brw_vec4_copy_propagation.cpp | 2 +- src/mesa/drivers/dri/i965/brw_vec4_cse.cpp | 2 +- .../drivers/dri/i965/brw_vec4_live_variables.cpp | 5 +---- src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp | 2 +- 20 files changed, 34 insertions(+), 40 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_dead_control_flow.cpp b/src/mesa/drivers/dri/i965/brw_dead_control_flow.cpp index 7a302da..9d5ba58 100644 --- a/src/mesa/drivers/dri/i965/brw_dead_control_flow.cpp +++ b/src/mesa/drivers/dri/i965/brw_dead_control_flow.cpp @@ -124,7 +124,7 @@ dead_control_flow_eliminate(backend_visitor *v) } if (progress) - v->invalidate_live_intervals(false); + v->invalidate_live_intervals(); return progress; } diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 5c4ecb4..4f5ff94 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -1702,7 +1702,7 @@ fs_visitor::split_virtual_grfs() } } } - invalidate_live_intervals(false); + invalidate_live_intervals(); } /** @@ -1740,7 +1740,7 @@ fs_visitor::compact_virtual_grfs() if (remap_table[i] != -1) { remap_table[i] = new_index; virtual_grf_sizes[new_index] = virtual_grf_sizes[i]; - invalidate_live_intervals(false); + invalidate_live_intervals(); ++new_index; } } @@ -1965,7 +1965,7 @@ fs_visitor::demote_pull_constants() inst->src[i].reg_offset = 0; } } - invalidate_live_intervals(false); + invalidate_live_intervals(); } bool @@ -2126,7 +2126,7 @@ fs_visitor::opt_register_renaming() } if (progress) { - invalidate_live_intervals(false); + invalidate_live_intervals(); for (unsigned i = 0; i < ARRAY_SIZE(delta_x); i++) { if (delta_x[i].file == GRF && remap[delta_x[i].reg] != -1) { @@ -2300,7 +2300,7 @@ fs_visitor::compute_to_mrf() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } @@ -2465,7 +2465,7 @@ fs_visitor::remove_duplicate_mrf_writes() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } @@ -2682,7 +2682,7 @@ fs_visitor::insert_gen4_send_dependency_workarounds() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); } /** @@ -2740,7 +2740,7 @@ fs_visitor::lower_uniform_pull_constant_loads() inst->opcode = FS_OPCODE_UNIFORM_PULL_CONSTANT_LOAD_GEN7; inst->src[1] = payload; - invalidate_live_intervals(false); + invalidate_live_intervals(); } else { /* Before register allocation, we didn't tell the scheduler about the * MRF we use. We know it's safe to use this MRF because nothing @@ -2781,7 +2781,7 @@ fs_visitor::lower_load_payload() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } @@ -3123,7 +3123,7 @@ fs_visitor::assign_binding_table_offsets() void fs_visitor::calculate_register_pressure() { - invalidate_live_intervals(false); + invalidate_live_intervals(); calculate_live_intervals(); unsigned num_instructions = instructions.length(); diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h index d7d7c3b..24c6ff6 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.h +++ b/src/mesa/drivers/dri/i965/brw_fs.h @@ -328,7 +328,7 @@ public: void move_uniform_array_access_to_pull_constants(); void assign_constant_locations(); void demote_pull_constants(); - void invalidate_live_intervals(bool invalidate_cfg = true); + void invalidate_live_intervals(); void calculate_live_intervals(); void calculate_register_pressure(); bool opt_algebraic(); diff --git a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp index e5816df..806135b 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp @@ -649,7 +649,7 @@ fs_visitor::opt_copy_propagate() ralloc_free(copy_prop_ctx); if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } diff --git a/src/mesa/drivers/dri/i965/brw_fs_cse.cpp b/src/mesa/drivers/dri/i965/brw_fs_cse.cpp index 9db6865..5615b13 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_cse.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_cse.cpp @@ -321,7 +321,7 @@ fs_visitor::opt_cse() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } diff --git a/src/mesa/drivers/dri/i965/brw_fs_dead_code_eliminate.cpp b/src/mesa/drivers/dri/i965/brw_fs_dead_code_eliminate.cpp index 697b44a..3cb6339 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_dead_code_eliminate.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_dead_code_eliminate.cpp @@ -106,7 +106,7 @@ fs_visitor::dead_code_eliminate() } } - invalidate_live_intervals(false); + invalidate_live_intervals(); } return progress; diff --git a/src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp b/src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp index e7ecb0f..577f4db 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp @@ -290,13 +290,10 @@ fs_live_variables::~fs_live_variables() } void -fs_visitor::invalidate_live_intervals(bool __invalidate_cfg) +fs_visitor::invalidate_live_intervals() { ralloc_free(live_intervals); live_intervals = NULL; - - if (__invalidate_cfg) - invalidate_cfg(); } /** diff --git a/src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp b/src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp index eb99681..a1bc14d 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp @@ -110,7 +110,7 @@ fs_visitor::opt_peephole_predicated_break() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } 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 a9bff65..6ee30ed 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp @@ -727,5 +727,5 @@ fs_visitor::spill_reg(int spill_reg) } } - invalidate_live_intervals(false); + invalidate_live_intervals(); } diff --git a/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp b/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp index c1b785b..b4abb4c 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp @@ -280,7 +280,7 @@ fs_visitor::register_coalesce() } } - invalidate_live_intervals(false); + invalidate_live_intervals(); } return progress; diff --git a/src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp b/src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp index 3412ce0..d65b2f1 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp @@ -100,7 +100,7 @@ fs_visitor::opt_saturate_propagation() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } diff --git a/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp b/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp index f609138..0bc734e 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp @@ -231,7 +231,7 @@ fs_visitor::opt_peephole_sel() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } diff --git a/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp b/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp index bac0d55..e1806b9 100644 --- a/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp +++ b/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp @@ -1511,7 +1511,7 @@ fs_visitor::schedule_instructions(instruction_scheduler_mode mode) dispatch_width, sched.time); } - invalidate_live_intervals(false); + invalidate_live_intervals(); } void @@ -1524,5 +1524,5 @@ vec4_visitor::opt_schedule_instructions() fprintf(stderr, "vec4 estimated execution time: %d cycles\n", sched.time); } - invalidate_live_intervals(false); + invalidate_live_intervals(); } diff --git a/src/mesa/drivers/dri/i965/brw_shader.h b/src/mesa/drivers/dri/i965/brw_shader.h index 342cdb3..35a2b96 100644 --- a/src/mesa/drivers/dri/i965/brw_shader.h +++ b/src/mesa/drivers/dri/i965/brw_shader.h @@ -182,7 +182,7 @@ public: void assign_common_binding_table_offsets(uint32_t next_binding_table_offset); - virtual void invalidate_live_intervals(bool invalidate_cfg = true) = 0; + virtual void invalidate_live_intervals() = 0; }; uint32_t brw_texture_offset(struct gl_context *ctx, ir_constant *offset); diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp b/src/mesa/drivers/dri/i965/brw_vec4.cpp index 6ccd6a1..e91ef82 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp @@ -403,7 +403,7 @@ vec4_visitor::opt_reduce_swizzle() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } @@ -560,7 +560,7 @@ vec4_visitor::dead_code_eliminate() } } - invalidate_live_intervals(false); + invalidate_live_intervals(); } return progress; @@ -739,7 +739,7 @@ vec4_visitor::opt_algebraic() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } @@ -1192,7 +1192,7 @@ vec4_visitor::opt_register_coalesce() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } @@ -1271,7 +1271,7 @@ vec4_visitor::split_virtual_grfs() } } } - invalidate_live_intervals(false); + invalidate_live_intervals(); } void diff --git a/src/mesa/drivers/dri/i965/brw_vec4.h b/src/mesa/drivers/dri/i965/brw_vec4.h index 9706d28..24f70ff 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4.h +++ b/src/mesa/drivers/dri/i965/brw_vec4.h @@ -378,7 +378,7 @@ public: void split_uniform_registers(); void pack_uniform_registers(); void calculate_live_intervals(); - void invalidate_live_intervals(bool invalidate_cfg = true); + void invalidate_live_intervals(); void split_virtual_grfs(); bool opt_reduce_swizzle(); bool dead_code_eliminate(); diff --git a/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp b/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp index 6769310..fe47b0f 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp @@ -438,7 +438,7 @@ vec4_visitor::opt_copy_propagation() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } diff --git a/src/mesa/drivers/dri/i965/brw_vec4_cse.cpp b/src/mesa/drivers/dri/i965/brw_vec4_cse.cpp index a0f6e77..e0fb07c 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_cse.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_cse.cpp @@ -256,7 +256,7 @@ vec4_visitor::opt_cse() } if (progress) - invalidate_live_intervals(false); + invalidate_live_intervals(); return progress; } diff --git a/src/mesa/drivers/dri/i965/brw_vec4_live_variables.cpp b/src/mesa/drivers/dri/i965/brw_vec4_live_variables.cpp index 7cd1dd6..2686174 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_live_variables.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_live_variables.cpp @@ -268,12 +268,9 @@ vec4_visitor::calculate_live_intervals() } void -vec4_visitor::invalidate_live_intervals(bool __invalidate_cfg) +vec4_visitor::invalidate_live_intervals() { live_intervals_valid = false; - - if (__invalidate_cfg) - invalidate_cfg(); } bool diff --git a/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp b/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp index 72c72e6..8faa724 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp @@ -354,7 +354,7 @@ vec4_visitor::spill_reg(int spill_reg_nr) } } - invalidate_live_intervals(false); + invalidate_live_intervals(); } } /* namespace brw */ -- 1.8.5.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev