Transform switch_conversion into a class.
commit44511ab2471c1f88b755a5b0998fc47a8653d8c2
authormarxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 20 Jun 2018 08:51:45 +0000 (20 08:51 +0000)
committermarxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 20 Jun 2018 08:51:45 +0000 (20 08:51 +0000)
tree9755289956547d66f8f565d1b6b35847e3bdbcfb
parent1ba54d4eb04b7a16d96aa036a410fc5a5d1b0aad
Transform switch_conversion into a class.

2018-06-20  Martin Liska  <mliska@suse.cz>

* tree-switch-conversion.c (MAX_CASE_BIT_TESTS): Remove.
(hoist_edge_and_branch_if_true): Likewise.
(expand_switch_using_bit_tests_p): Likewise.
(struct case_bit_test): Likewise.
(case_bit_test_cmp): Likewise.
(emit_case_bit_tests): Likewise.
(switch_conversion::switch_conversion): New class.
(struct switch_conv_info): Remove old struct.
(collect_switch_conv_info): More to ...
(switch_conversion::collect): ... this.
(check_range): Likewise.
(switch_conversion::check_range): Likewise.
(check_all_empty_except_final): Likewise.
(switch_conversion::check_all_empty_except_final): Likewise.
(check_final_bb): Likewise.
(switch_conversion::check_final_bb): Likewise.
(create_temp_arrays): Likewise.
(switch_conversion::create_temp_arrays): Likewise.
(free_temp_arrays): Likewise.
(gather_default_values): Likewise.
(switch_conversion::gather_default_values): Likewise.
(build_constructors): Likewise.
(switch_conversion::build_constructors): Likewise.
(constructor_contains_same_values_p): Likewise.
(switch_conversion::contains_same_values_p): Likewise.
(array_value_type): Likewise.
(switch_conversion::array_value_type): Likewise.
(build_one_array): Likewise.
(switch_conversion::build_one_array): Likewise.
(build_arrays): Likewise.
(switch_conversion::build_arrays): Likewise.
(gen_def_assigns): Likewise.
(switch_conversion::gen_def_assigns): Likewise.
(prune_bbs): Likewise.
(switch_conversion::prune_bbs): Likewise.
(fix_phi_nodes): Likewise.
(switch_conversion::fix_phi_nodes): Likewise.
(gen_inbound_check): Likewise.
(switch_conversion::gen_inbound_check): Likewise.
(process_switch): Use the newly created class.
(switch_conversion::expand): New.
(switch_conversion::~switch_conversion): New.
* tree-switch-conversion.h: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@261792 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/tree-switch-conversion.c
gcc/tree-switch-conversion.h [new file with mode: 0644]