summaryrefslogtreecommitdiff
path: root/gcc/toplev.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-23 11:02:09 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-23 11:02:09 +0000
commitc59b7e96d8fdfadf3a8af5c33244638c78cb6abd (patch)
tree802fba0f5d8b9b39d10bd272582ae4909f3a1a5e /gcc/toplev.c
parent7a442f2bd81886b4092d5e5e32193f3878696605 (diff)
downloadgcc-c59b7e96d8fdfadf3a8af5c33244638c78cb6abd.tar.gz
* basic-block.h (PROP_POSTRELOAD): New macro.
(CLEANUP_LOG_LINKS): New. * cfgcleanup.c (cleanup_cfg): Only PROP_LOG_LINKS when asked to. * toplev.c (rest_of_handle_life): Preserve LOG_LINKS trought cleanup_cfg. * cselib.c (value_pool): New. (new_cselib_val): Use pool. (cselib_init): Initialize value_pool (cselib_finish): Free pool. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76405 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r--gcc/toplev.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c
index ea4c56358db..05e753a7628 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -2812,6 +2812,7 @@ rest_of_handle_life (tree decl, rtx insns)
life_analysis (insns, rtl_dump_file, PROP_FINAL);
if (optimize)
cleanup_cfg ((optimize ? CLEANUP_EXPENSIVE : 0) | CLEANUP_UPDATE_LIFE
+ | CLEANUP_LOG_LINKS
| (flag_thread_jumps ? CLEANUP_THREADING : 0));
timevar_pop (TV_FLOW);
@@ -3456,7 +3457,7 @@ rest_of_compilation (tree decl)
if (optimize)
{
- life_analysis (insns, rtl_dump_file, PROP_FINAL);
+ life_analysis (insns, rtl_dump_file, PROP_POSTRELOAD);
cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_UPDATE_LIFE
| (flag_crossjumping ? CLEANUP_CROSSJUMP : 0));