summaryrefslogtreecommitdiff
path: root/gcc/tree-flow.h
diff options
context:
space:
mode:
authoramacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-09 14:11:30 +0000
committeramacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-09 14:11:30 +0000
commit64641360c444568aeb4328aebc1585466b2cede5 (patch)
tree5f0d797d661ee8ba11c4c05d7c09c7138fad2499 /gcc/tree-flow.h
parentddddc40dafe5e52cdf87e72388fdcc26f98f0ea6 (diff)
downloadgcc-64641360c444568aeb4328aebc1585466b2cede5.tar.gz
* tree-flow.h: Remove all remaining prototypes, enums and structs that
are not related to tree-cfg.c. * tree-ssa-address.h: New file. Relocate prototypes. * tree-ssa-address.c: (struct mem_address): Relocate from tree-flow.h. (addr_for_mem_ref): New. Combine call to get_address_description and return addr_for_mem_ref. * expr.c (expand_expr_real_1): Use new addr_for_mem_ref routine. * tree-ssa-live.h: Adjust prototypes. * passes.c: Include tree-ssa-live.h. * gimple-pretty-print.h (gimple_dump_bb): Add prototype. * graphite.c (graphite_transform_loops): Make static. (graphite_transforms, gate_graphite_transforms, pass_data_graphite, make_pass_graphite, pass_data_graphite_transforms, make_pass_graphite_transforms): Relocate here from tree-ssa-loop.c. * ipa-pure-const.c (warn_function_noreturn): Make static. (execute_warn_function_noreturn, gate_warn_function_noreturn, class pass_warn_function_noreturn, make_pass_warn_function_noreturn): Relocate from tree-cfg.c * tree-cfg.c (tree_node_can_be_shared, gimple_empty_block_p): Make static. (execute_warn_function_noreturn, gate_warn_function_noreturn, class pass_warn_function_noreturn, make_pass_warn_function_noreturn): Move to ipa-pure-const.c. (execute_fixup_cfg, class pass_fixup_cfg, make_pass_fixup_cfg): Relocate from tree-optimize.c. * tree-optimize.c (execute_fixup_cfg, class pass_fixup_cfg, make_pass_fixup_cfg): Move to tree-cfg.c. * tree-chrec.h: (enum ev_direction): Relocate here from tree-flow.h. Relocate some prototypes. * tree-data-ref.h (tree_check_data_deps) Add prototype. * tree-dump.c (dump_function_to_file): Remove prototype. Add tree-flow.h to the include file. * tree-dump.h: Remove prototype. * tree-parloops.h: New File. Add prototypes. * tree-parloops.c (gate_tree_parallelize_loops, tree_parallelize_loops, pass_data_parallelize_loops, make_pass_parallelize_loops): Relocate from tree-ssa-loop.c. * tree-predcom.c (run_tree_predictive_commoning, gate_tree_predictive_commoning, pass_data_predcom, make_pass_predcom): Relocate here from tree-ssa-loop.c. * tree-ssa-dom.c (tree_ssa_dominator_optimize) Don't call ssa_name_values.release (). * tree-ssa-threadedge.h: New File. Relocate prototypes here. (ssa_name_values): Relocate from tree-flow.h. * tree-ssa.h: Include tree-ssa-threadedge.h and tree-ssa-address.h. * tree-ssa-loop.c (run_tree_predictive_commoning, gate_tree_predictive_commoning, pass_data_predcom, make_pass_predcom, graphite_transforms, gate_graphite_transforms, pass_data_graphite, make_pass_graphite, pass_data_graphite_transforms, make_pass_graphite_transforms, gate_tree_parallelize_loops, tree_parallelize_loops, pass_data_parallelize_loops, make_pass_parallelize_loops): Move to other files. * tree-vectorizer.h (lpeel_tree_duplicate_loop_to_edge_cfg): Prototype moved here. * tree.h: Remove prototypes from tree-address.c. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203320 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-flow.h')
-rw-r--r--gcc/tree-flow.h160
1 files changed, 44 insertions, 116 deletions
diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h
index 1f0fb3e199c..c4678d9fcf4 100644
--- a/gcc/tree-flow.h
+++ b/gcc/tree-flow.h
@@ -87,120 +87,77 @@ extern void free_omp_regions (void);
void omp_expand_local (basic_block);
tree copy_var_decl (tree, tree, tree);
-/*---------------------------------------------------------------------------
- Function prototypes
----------------------------------------------------------------------------*/
-/* In tree-cfg.c */
-
/* Location to track pending stmt for edge insertion. */
#define PENDING_STMT(e) ((e)->insns.g)
-extern void delete_tree_cfg_annotations (void);
-extern bool stmt_ends_bb_p (gimple);
-extern bool is_ctrl_stmt (gimple);
-extern bool is_ctrl_altering_stmt (gimple);
-extern bool simple_goto_p (gimple);
-extern bool stmt_can_make_abnormal_goto (gimple);
+extern void init_empty_tree_cfg_for_function (struct function *);
+extern void init_empty_tree_cfg (void);
+extern void fold_cond_expr_cond (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 void make_abnormal_goto_edges (basic_block, bool);
+extern void cleanup_dead_labels (void);
+extern void group_case_labels_stmt (gimple);
+extern void group_case_labels (void);
+extern void replace_uses_by (tree, tree);
extern basic_block single_noncomplex_succ (basic_block bb);
-extern void gimple_dump_bb (FILE *, basic_block, int, int);
+extern void notice_special_calls (gimple);
+extern void clear_special_calls (void);
+extern edge find_taken_edge (basic_block, tree);
extern void gimple_debug_bb (basic_block);
extern basic_block gimple_debug_bb_n (int);
-extern void gimple_dump_cfg (FILE *, int);
extern void gimple_debug_cfg (int);
+extern void gimple_dump_cfg (FILE *, int);
extern void dump_cfg_stats (FILE *);
-extern void dot_cfg (void);
extern void debug_cfg_stats (void);
-extern void debug_loops (int);
-extern void debug_loop (struct loop *, int);
-extern void debug (struct loop &ref);
-extern void debug (struct loop *ptr);
-extern void debug_verbose (struct loop &ref);
-extern void debug_verbose (struct loop *ptr);
-extern void debug_loop_num (unsigned, int);
-extern void print_loops (FILE *, int);
-extern void print_loops_bb (FILE *, basic_block, int, int);
-extern void cleanup_dead_labels (void);
-extern void group_case_labels_stmt (gimple);
-extern void group_case_labels (void);
+extern bool stmt_can_make_abnormal_goto (gimple);
+extern bool is_ctrl_stmt (gimple);
+extern bool is_ctrl_altering_stmt (gimple);
+extern bool simple_goto_p (gimple);
+extern bool stmt_ends_bb_p (gimple);
+extern void delete_tree_cfg_annotations (void);
extern gimple first_stmt (basic_block);
extern gimple last_stmt (basic_block);
extern gimple last_and_only_stmt (basic_block);
-extern edge find_taken_edge (basic_block, tree);
-extern basic_block label_to_block_fn (struct function *, tree);
-#define label_to_block(t) (label_to_block_fn (cfun, t))
-extern void notice_special_calls (gimple);
-extern void clear_special_calls (void);
extern void verify_gimple_in_seq (gimple_seq);
extern void verify_gimple_in_cfg (struct function *);
extern tree gimple_block_label (basic_block);
-extern void extract_true_false_edges_from_block (basic_block, edge *, edge *);
+extern void add_phi_args_after_copy_bb (basic_block);
+extern void add_phi_args_after_copy (basic_block *, unsigned, edge);
extern bool gimple_duplicate_sese_region (edge, edge, basic_block *, unsigned,
basic_block *, bool);
extern bool gimple_duplicate_sese_tail (edge, edge, basic_block *, unsigned,
basic_block *);
extern void gather_blocks_in_sese_region (basic_block entry, basic_block exit,
vec<basic_block> *bbs_p);
-extern void add_phi_args_after_copy_bb (basic_block);
-extern void add_phi_args_after_copy (basic_block *, unsigned, edge);
+extern basic_block move_sese_region_to_fn (struct function *, basic_block,
+ basic_block, tree);
+extern void dump_function_to_file (tree, FILE *, int);
+extern void debug_function (tree, int) ;
+extern void print_loops_bb (FILE *, basic_block, int, int);
+extern void print_loops (FILE *, int);
+extern void debug (struct loop &ref);
+extern void debug (struct loop *ptr);
+extern void debug_verbose (struct loop &ref);
+extern void debug_verbose (struct loop *ptr);
+extern void debug_loops (int);
+extern void debug_loop (struct loop *, int);
+extern void debug_loop_num (unsigned, int);
+void remove_edge_and_dominated_blocks (edge);
extern bool gimple_purge_dead_eh_edges (basic_block);
extern bool gimple_purge_all_dead_eh_edges (const_bitmap);
extern bool gimple_purge_dead_abnormal_call_edges (basic_block);
extern bool gimple_purge_all_dead_abnormal_call_edges (const_bitmap);
-extern tree gimplify_build1 (gimple_stmt_iterator *, enum tree_code,
- tree, tree);
-extern tree gimplify_build2 (gimple_stmt_iterator *, enum tree_code,
- tree, tree, tree);
extern tree gimplify_build3 (gimple_stmt_iterator *, enum tree_code,
tree, tree, tree, tree);
-extern void init_empty_tree_cfg (void);
-extern void init_empty_tree_cfg_for_function (struct function *);
-extern void fold_cond_expr_cond (void);
-extern void make_abnormal_goto_edges (basic_block, bool);
-extern void replace_uses_by (tree, tree);
-extern void start_recording_case_labels (void);
-extern void end_recording_case_labels (void);
-extern basic_block move_sese_region_to_fn (struct function *, basic_block,
- basic_block, tree);
-void remove_edge_and_dominated_blocks (edge);
-bool tree_node_can_be_shared (tree);
-
-
-
-/* In tree-ssa-loop*.c */
-
-unsigned tree_predictive_commoning (void);
-bool parallelize_loops (void);
-
-bool convert_affine_scev (struct loop *, tree, tree *, tree *, gimple, bool);
-
-enum ev_direction {EV_DIR_GROWS, EV_DIR_DECREASES, EV_DIR_UNKNOWN};
-enum ev_direction scev_direction (const_tree);
-
-struct loop *slpeel_tree_duplicate_loop_to_edge_cfg (struct loop *, edge);
-
-/* In tree-ssa-threadedge.c */
-extern void threadedge_initialize_values (void);
-extern void threadedge_finalize_values (void);
-extern vec<tree> ssa_name_values;
-#define SSA_NAME_VALUE(x) \
- (SSA_NAME_VERSION (x) < ssa_name_values.length () \
- ? ssa_name_values[SSA_NAME_VERSION (x)] \
- : NULL_TREE)
-extern void set_ssa_name_value (tree, tree);
-extern bool potentially_threadable_block (basic_block);
-extern void thread_across_edge (gimple, edge, bool,
- vec<tree> *, tree (*) (gimple, gimple));
-extern void propagate_threaded_block_debug_into (basic_block, basic_block);
-
-/* In tree-loop-linear.c */
-extern void linear_transform_loops (void);
-extern unsigned perfect_loop_nest_depth (struct loop *);
-
-/* In graphite.c */
-extern void graphite_transform_loops (void);
-
-/* In tree-data-ref.c */
-extern void tree_check_data_deps (void);
+extern tree gimplify_build2 (gimple_stmt_iterator *, enum tree_code,
+ tree, tree, tree);
+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 unsigned int execute_fixup_cfg (void);
/* In gimplify.c */
tree force_gimple_operand_1 (tree, gimple_seq *, gimple_predicate, tree);
@@ -212,34 +169,5 @@ tree force_gimple_operand_gsi (gimple_stmt_iterator *, tree, bool, tree,
bool, enum gsi_iterator_update);
tree gimple_fold_indirect_ref (tree);
-/* In tree-ssa-live.c */
-extern void remove_unused_locals (void);
-extern void dump_scope_blocks (FILE *, int);
-extern void debug_scope_blocks (int);
-extern void debug_scope_block (tree, int);
-
-/* In tree-ssa-address.c */
-
-/* Description of a memory address. */
-
-struct mem_address
-{
- tree symbol, base, index, step, offset;
-};
-
-struct affine_tree_combination;
-tree create_mem_ref (gimple_stmt_iterator *, tree,
- struct affine_tree_combination *, tree, tree, tree, bool);
-rtx addr_for_mem_ref (struct mem_address *, addr_space_t, bool);
-void get_address_description (tree, struct mem_address *);
-tree maybe_fold_tmr (tree);
-
-unsigned int execute_fixup_cfg (void);
-
-/* In ipa-pure-const.c */
-void warn_function_noreturn (tree);
-
-/* In tree-parloops.c */
-bool parallelized_function_p (tree);
#endif /* _TREE_FLOW_H */