From 1cb7dfc3b3c1506c0fc3cef33b8571f2eefd549c Mon Sep 17 00:00:00 2001 From: Mostafa Hagog Date: Sun, 3 Apr 2005 08:44:33 +0000 Subject: cfghooks.c (lv_flush_pending_stmts, [...]): New. 2005-03-30 Mostafa Hagog * cfghooks.c (lv_flush_pending_stmts, cfg_hook_duplicate_loop_to_header_edge, extract_cond_bb_edges, lv_adjust_loop_header_phi, lv_add_condition_to_bb): New. * cfghooks.h (cfg_hook_duplicate_loop_to_header_edge, lv_add_condition_to_bb, lv_adjust_loop_header_phi, extract_cond_bb_edges, flush_pending_stmts): New in cfg_hooks structure. (cfg_hook_duplicate_loop_to_header_edge, lv_flush_pending_stmts, extract_cond_bb_edges, lv_adjust_loop_header_phi, lv_add_condition_to_bb): New declarations. * cfgloop.h (duplicate_loop_to_header_edge): Change return type to bool. (loop_version): Declare. * cfgloopmanip.c (cfghooks.h): Include. (duplicate_loop_to_header_edge): Change return type to bool. (loop_version, lv_adjust_loop_entry_edge): Move here. * cfgrtl.c (cfgloop.h): Include. (rtl_verify_flow_info_1): Fix. (rtl_lv_add_condition_to_bb, rtl_extract_cond_bb_edges): New. (rtl_cfg_hooks, cfg_layout_rtl_cfg_hook): Add hooks to initialization. * tree-cfg.c (tree_lv_adjust_loop_header_phi, tree_lv_add_condition_to_bb): New. (tree_cfg_hooks): Add new hooks to initialization. * tree-ssa-loop-manip.c (lv_adjust_loop_header_phi, lv_adjust_loop_entry_edge, tree_ssa_loop_version): Remove. From-SVN: r97481 --- gcc/cfgloop.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'gcc/cfgloop.h') diff --git a/gcc/cfgloop.h b/gcc/cfgloop.h index e0dad37..7a5d57f 100644 --- a/gcc/cfgloop.h +++ b/gcc/cfgloop.h @@ -298,11 +298,13 @@ extern bool can_duplicate_loop_p (struct loop *loop); extern struct loop * duplicate_loop (struct loops *, struct loop *, struct loop *); -extern int duplicate_loop_to_header_edge (struct loop *, edge, struct loops *, - unsigned, sbitmap, edge, edge *, - unsigned *, int); +extern bool duplicate_loop_to_header_edge (struct loop *, edge, struct loops *, + unsigned, sbitmap, edge, edge *, + unsigned *, int); extern struct loop *loopify (struct loops *, edge, edge, basic_block, edge, edge, bool); +struct loop * loop_version (struct loops *, struct loop *, void *, + basic_block *); extern bool remove_path (struct loops *, edge); extern edge split_loop_bb (basic_block, void *); -- cgit v1.1