aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2005-06-16 12:33:40 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2005-06-16 10:33:40 +0000
commit5e2d947ce84b1a8baa2252c5ff04b9b3931b3893 (patch)
tree681bd279155de09165d78fad8c1bda0ae8a5495f /gcc/cfgexpand.c
parent0adcdb66ecc4606e302524b98811d82fa555bc4b (diff)
downloadgcc-5e2d947ce84b1a8baa2252c5ff04b9b3931b3893.zip
gcc-5e2d947ce84b1a8baa2252c5ff04b9b3931b3893.tar.gz
gcc-5e2d947ce84b1a8baa2252c5ff04b9b3931b3893.tar.bz2
basic-block.h (rtl_bb_info): Break out head_, end_, global_live_at_start, global_live_at_end from ...
* basic-block.h (rtl_bb_info): Break out head_, end_, global_live_at_start, global_live_at_end from ... (basic_block_def): ... here; update all references (BB_RTL): New flag. (init_rtl_bb_info): Declare. * cfgexpand.c (expand_gimple_basic_block): Init bb info, set BB_RTL flag. * cfgrtl.c: Include ggc.h (create_basic_block_structure): Init bb info. (rtl_verify_flow_info_1): Check BB_RTL flag and rtl_bb_info pointer. (init_rtl_bb_info): New function. (rtl_merge_block, cfglayout_merge_block): Copy global_live_at_end here. * cfghooks.c (merge_block): Do not copy global_live_at_end here. * cfg.c (clear_bb_flags): Skip BB_RTL flag. (dump_flow_info): Gueard global_live_* dumping. From-SVN: r101082
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index 63a4136..d3acbb0 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -1056,6 +1056,9 @@ expand_gimple_basic_block (basic_block bb, FILE * dump_file)
bb->index);
}
+ init_rtl_bb_info (bb);
+ bb->flags |= BB_RTL;
+
if (!bsi_end_p (bsi))
stmt = bsi_stmt (bsi);
@@ -1162,6 +1165,10 @@ construct_init_block (void)
/* Multiple entry points not supported yet. */
gcc_assert (EDGE_COUNT (ENTRY_BLOCK_PTR->succs) == 1);
+ init_rtl_bb_info (ENTRY_BLOCK_PTR);
+ init_rtl_bb_info (EXIT_BLOCK_PTR);
+ ENTRY_BLOCK_PTR->flags |= BB_RTL;
+ EXIT_BLOCK_PTR->flags |= BB_RTL;
e = EDGE_SUCC (ENTRY_BLOCK_PTR, 0);