From f77a5bb0ae6038b9f6d1b7dcd6541f8eece3ea89 Mon Sep 17 00:00:00 2001 From: vmakarov Date: Tue, 24 Feb 2004 17:28:33 +0000 Subject: 2003-02-24 Sanjiv Kumar Gupta * target-def.h (TARGET_SCHED_INIT_GLOBAL, TARGET_SCHED_FINISH_GLOBAL): New macros. * target.h (md_init_global, md_finish_global): Function declarations corresponding to new target macros. * haifa-sched.c (sched_init, sched_finish): Allow target to call the new schedular hooks. * flow.c (recompute_reg_usage): Add PROP_DEATH_NOTES flag in call to update_life_info. * config/sh/sh.h (OVERRIDE_OPTIONS): Re-enable flag_schedule_insns for SH4. * config/sh/sh.c (sh_md_init_global, sh_md_finish_global, find_set_regmode_weight, find_insn_regmode_weight, find_regmode_weight), sh_md_init, sh_dfa_new_cycle, sh_variable_issue, high_pressure, ready_reorder, rank_for_reorder, swap_reorder, sh_reorder, sh_reorder2): New functions used to throttle the insn movement in first scheduling pass for SH. * gcc/doc/tm.texi: Document TARGET_SCHED_INIT_GLOBAL and TARGET_SCHED_FINISH_GLOBAL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78374 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/flow.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gcc/flow.c') diff --git a/gcc/flow.c b/gcc/flow.c index 56a0bfa1db5..736e5e61bcb 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -4260,7 +4260,10 @@ void recompute_reg_usage (rtx f ATTRIBUTE_UNUSED, int loop_step ATTRIBUTE_UNUSED) { allocate_reg_life_data (); - update_life_info (NULL, UPDATE_LIFE_LOCAL, PROP_REG_INFO); + /* distribute_notes in combiner fails to convert some of the REG_UNUSED notes + to REG_DEAD notes. This causes CHECK_DEAD_NOTES in sched1 to abort. To + solve this update the DEATH_NOTES here. */ + update_life_info (NULL, UPDATE_LIFE_LOCAL, PROP_REG_INFO | PROP_DEATH_NOTES); } /* Optionally removes all the REG_DEAD and REG_UNUSED notes from a set of -- cgit v1.2.3