diff options
author | Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | 2000-02-02 09:15:44 +0100 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2000-02-02 00:15:44 -0800 |
commit | 0edaaa41bb9c8361dbff2e553f9357ea43b3ddfc (patch) | |
tree | 9db4f9454802be1b14ea4a0fe96fa715a28b2559 /gcc | |
parent | 2c5a510cb834f9d9c91d65ee40e568b2e33b6164 (diff) | |
download | gcc-0edaaa41bb9c8361dbff2e553f9357ea43b3ddfc.zip gcc-0edaaa41bb9c8361dbff2e553f9357ea43b3ddfc.tar.gz gcc-0edaaa41bb9c8361dbff2e553f9357ea43b3ddfc.tar.bz2 |
toplev.c (rest_of_compilation): Run rebuild_jump_labels after split_all_insns to recreate REG_LABEL notes for...
* toplev.c (rest_of_compilation): Run rebuild_jump_labels after
split_all_insns to recreate REG_LABEL notes for flow2 pass.
From-SVN: r31756
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/toplev.c | 12 |
2 files changed, 11 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8af9597..24755ec 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-02-02 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> + + * toplev.c (rest_of_compilation): Run rebuild_jump_labels after + split_all_insns to recreate REG_LABEL notes for flow2 pass. + 2000-02-01 Richard Henderson <rth@cygnus.com> * i386.c (general_no_elim_operand): New. diff --git a/gcc/toplev.c b/gcc/toplev.c index 136d966..f858fd9 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -3379,12 +3379,6 @@ rest_of_compilation (decl) if (optimize > 0) reload_cse_regs (insns); - /* Register allocation and reloading may have turned an indirect jump into - a direct jump. If so, we must rebuild the JUMP_LABEL fields of - jumping instructions. */ - if (rebuild_label_notes_after_reload) - TIMEVAR (jump_time, rebuild_jump_labels (insns)); - /* If optimizing and we are performing instruction scheduling after reload, then go ahead and split insns now since we are about to recompute flow information anyway. @@ -3394,6 +3388,12 @@ rest_of_compilation (decl) if (optimize > 0 && flag_schedule_insns_after_reload) split_all_insns (0); + /* Register allocation and reloading may have turned an indirect jump into + a direct jump. If so, we must rebuild the JUMP_LABEL fields of + jumping instructions. */ + if (rebuild_label_notes_after_reload) + TIMEVAR (jump_time, rebuild_jump_labels (insns)); + if (global_reg_dump) { TIMEVAR (dump_time, dump_global_regs (rtl_dump_file)); |