Mercurial > hg > CbC > CbC_gcc
diff gcc/tree-cfg.h @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children | 1830386684a0 |
line wrap: on
line diff
--- a/gcc/tree-cfg.h Fri Oct 27 22:46:09 2017 +0900 +++ b/gcc/tree-cfg.h Thu Oct 25 07:37:49 2018 +0900 @@ -1,5 +1,5 @@ /* Data and Control Flow Analysis for Trees. - Copyright (C) 2001-2017 Free Software Foundation, Inc. + Copyright (C) 2001-2018 Free Software Foundation, Inc. Contributed by Diego Novillo <dnovillo@redhat.com> This file is part of GCC. @@ -33,8 +33,7 @@ extern void init_empty_tree_cfg (void); extern void start_recording_case_labels (void); extern void end_recording_case_labels (void); -extern basic_block label_to_block_fn (struct function *, tree); -#define label_to_block(t) (label_to_block_fn (cfun, t)) +extern basic_block label_to_block (struct function *, tree); extern void cleanup_dead_labels (void); extern bool group_case_labels_stmt (gswitch *); extern bool group_case_labels (void); @@ -77,10 +76,11 @@ vec<basic_block> *bbs_p); extern void verify_sese (basic_block, basic_block, vec<basic_block> *); extern bool gather_ssa_name_hash_map_from (tree const &, tree const &, void *); +extern void fold_loop_internal_call (gimple *, tree); extern basic_block move_sese_region_to_fn (struct function *, basic_block, basic_block, tree); extern void dump_function_to_file (tree, FILE *, dump_flags_t); -extern void debug_function (tree, int) ; +extern void debug_function (tree, dump_flags_t); extern void print_loops_bb (FILE *, basic_block, int, int); extern void print_loops (FILE *, int); extern void debug (struct loop &ref); @@ -102,6 +102,8 @@ extern tree gimplify_build1 (gimple_stmt_iterator *, enum tree_code, tree, tree); extern void extract_true_false_edges_from_block (basic_block, edge *, edge *); +extern tree find_case_label_for_value (const gswitch *switch_stmt, tree val); +extern edge find_taken_edge_switch_expr (const gswitch *switch_stmt, tree val); extern unsigned int execute_fixup_cfg (void); extern unsigned int split_critical_edges (void); extern basic_block insert_cond_bb (basic_block, gimple *, gimple *, @@ -111,6 +113,10 @@ edge *, edge *); extern void generate_range_test (basic_block bb, tree index, tree low, tree high, tree *lhs, tree *rhs); +extern basic_block gimple_switch_label_bb (function *, gswitch *, unsigned); +extern basic_block gimple_switch_default_bb (function *, gswitch *); +extern edge gimple_switch_edge (function *, gswitch *, unsigned); +extern edge gimple_switch_default_edge (function *, gswitch *); /* Return true if the LHS of a call should be removed. */