|
GCC Middle and Back End API Reference
|
#include <tree-switch-conversion.h>


Public Member Functions | |
| group_cluster (vec< cluster * > &clusters, unsigned start, unsigned end) | |
| ~group_cluster () | |
| tree | get_low () final override |
| tree | get_high () final override |
| void | debug () final override |
| void | dump (FILE *f, bool details=false) final override |
| virtual cluster_type | get_type ()=0 |
| virtual void | emit (tree, tree, tree, basic_block, location_t)=0 |
| virtual bool | is_single_value_p () |
Static Public Member Functions | |
| static unsigned HOST_WIDE_INT | get_range (tree low, tree high) |
Data Fields | |
| vec< simple_cluster * > | m_cases |
| tree | m_case_label_expr |
| basic_block | m_case_bb |
| profile_probability | m_prob |
| profile_probability | m_subtree_prob |
| profile_probability | m_default_prob |
Abstract subclass of jump table and bit test cluster, handling a collection of simple_cluster instances.
Constructor.
References end(), gcc_checking_assert, i, m_cases, tree_switch_conversion::cluster::m_prob, tree_switch_conversion::cluster::m_subtree_prob, and profile_probability::never().
Referenced by tree_switch_conversion::bit_test_cluster::bit_test_cluster(), and tree_switch_conversion::jump_table_cluster::jump_table_cluster().
|
inlinefinaloverridevirtual |
Implements tree_switch_conversion::cluster.
Dump content of a cluster.
Implements tree_switch_conversion::cluster.
References get_high(), get_low(), tree_switch_conversion::cluster::get_range(), tree_switch_conversion::cluster::get_type(), HOST_WIDE_INT_PRINT_DEC, i, tree_switch_conversion::JUMP_TABLE, m_cases, PRINT_CASE, and sc.
Referenced by debug().
|
pure virtualinherited |
|
inlinefinaloverridevirtual |
Implements tree_switch_conversion::cluster.
References final(), and m_cases.
Referenced by tree_switch_conversion::jump_table_cluster::can_be_handled(), dump(), tree_switch_conversion::bit_test_cluster::emit(), tree_switch_conversion::jump_table_cluster::emit(), and tree_switch_conversion::bit_test_cluster::find_bit_tests().
|
inlinefinaloverridevirtual |
Implements tree_switch_conversion::cluster.
References final(), and m_cases.
Referenced by tree_switch_conversion::jump_table_cluster::can_be_handled(), dump(), tree_switch_conversion::bit_test_cluster::emit(), tree_switch_conversion::jump_table_cluster::emit(), and tree_switch_conversion::bit_test_cluster::find_bit_tests().
|
inlinestaticinherited |
References wi::fits_uhwi_p(), wi::neg_p(), wi::to_wide(), TREE_TYPE, and TYPE_SIGN.
Referenced by tree_switch_conversion::jump_table_cluster::can_be_handled(), tree_switch_conversion::group_cluster::dump(), tree_switch_conversion::jump_table_cluster::emit(), and tree_switch_conversion::bit_test_cluster::find_bit_tests().
|
pure virtualinherited |
|
inlinevirtualinherited |
Reimplemented in tree_switch_conversion::simple_cluster.
|
inherited |
|
inherited |
Referenced by cluster(), and tree_switch_conversion::jump_table_cluster::emit().
| vec<simple_cluster *> tree_switch_conversion::group_cluster::m_cases |
|
inherited |
Referenced by cluster(), and tree_switch_conversion::bit_test_cluster::emit().
|
inherited |
|
inherited |