Lines Matching refs:clusters

1058 group_cluster::group_cluster (vec<cluster *> &clusters,  in group_cluster()  argument
1066 m_cases.quick_push (static_cast<simple_cluster *> (clusters[i])); in group_cluster()
1067 m_prob += clusters[i]->m_prob; in group_cluster()
1180 jump_table_cluster::find_jump_tables (vec<cluster *> &clusters) in find_jump_tables() argument
1183 return clusters.copy (); in find_jump_tables()
1185 unsigned l = clusters.length (); in find_jump_tables()
1206 && can_be_handled (clusters, j, i - 1)) in find_jump_tables()
1215 return clusters.copy (); in find_jump_tables()
1226 if (is_beneficial (clusters, start, end - 1)) in find_jump_tables()
1227 output.safe_push (new jump_table_cluster (clusters, start, end - 1)); in find_jump_tables()
1230 output.safe_push (clusters[i]); in find_jump_tables()
1246 jump_table_cluster::can_be_handled (const vec<cluster *> &clusters, in can_be_handled() argument
1270 unsigned HOST_WIDE_INT range = get_range (clusters[start]->get_low (), in can_be_handled()
1271 clusters[end]->get_high ()); in can_be_handled()
1291 simple_cluster *sc = static_cast<simple_cluster *> (clusters[i]); in can_be_handled()
1316 bit_test_cluster::find_bit_tests (vec<cluster *> &clusters) in find_bit_tests() argument
1318 unsigned l = clusters.length (); in find_bit_tests()
1332 && can_be_handled (clusters, j, i - 1)) in find_bit_tests()
1341 return clusters.copy (); in find_bit_tests()
1351 if (is_beneficial (clusters, start, end - 1)) in find_bit_tests()
1353 bool entire = start == 0 && end == clusters.length (); in find_bit_tests()
1354 output.safe_push (new bit_test_cluster (clusters, start, end - 1, in find_bit_tests()
1359 output.safe_push (clusters[i]); in find_bit_tests()
1392 bit_test_cluster::can_be_handled (const vec<cluster *> &clusters, in can_be_handled() argument
1402 unsigned HOST_WIDE_INT range = get_range (clusters[start]->get_low (), in can_be_handled()
1403 clusters[end]->get_high ()); in can_be_handled()
1411 simple_cluster *sc = static_cast<simple_cluster *> (clusters[i]); in can_be_handled()
1440 bit_test_cluster::is_beneficial (const vec<cluster *> &clusters, in is_beneficial() argument
1451 simple_cluster *sc = static_cast<simple_cluster *> (clusters[i]); in is_beneficial()
1724 auto_vec<cluster *> clusters; in analyze_switch_statement() local
1725 clusters.create (l - 1); in analyze_switch_statement()
1744 clusters.quick_push (new simple_cluster (low, high, elt, case_edge->dest, in analyze_switch_statement()
1752 vec<cluster *> output = jump_table_cluster::find_jump_tables (clusters); in analyze_switch_statement()
1810 switch_decision_tree::try_switch_expansion (vec<cluster *> &clusters) in try_switch_expansion() argument
1829 for (int i = clusters.length () - 1; i >= 0; i--) in try_switch_expansion()
1834 m_case_list->m_c = clusters[i]; in try_switch_expansion()
1853 for (unsigned i = 0; i < clusters.length (); i++) in try_switch_expansion()
1854 if (clusters[i]->get_type () != SIMPLE_CASE) in try_switch_expansion()
1856 clusters[i]->m_case_bb = create_empty_bb (bb); in try_switch_expansion()
1857 clusters[i]->m_case_bb->count = bb->count; in try_switch_expansion()
1858 clusters[i]->m_case_bb->loop_father = bb->loop_father; in try_switch_expansion()
1862 if (clusters.length () == 1 in try_switch_expansion()
1863 && clusters[0]->get_type () != SIMPLE_CASE) in try_switch_expansion()
1865 cluster *c = clusters[0]; in try_switch_expansion()
1876 for (unsigned i = 0; i < clusters.length (); i++) in try_switch_expansion()
1877 if (clusters[i]->get_type () != SIMPLE_CASE) in try_switch_expansion()
1878 clusters[i]->emit (index_expr, index_type, in try_switch_expansion()