diff options
author | Jakub Jelinek <jakub@redhat.com> | 2009-01-28 17:05:41 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2009-01-28 17:05:41 +0100 |
commit | c7789bfb8c6f12d57f24952a4ac3c0ae935db61b (patch) | |
tree | 42d7b3132654ac4bebb78e905e803a7d5675ccc9 /gcc/reorg.c | |
parent | de081cfd3b88d197c6c3e545c6d55581140c7c21 (diff) | |
download | gcc-c7789bfb8c6f12d57f24952a4ac3c0ae935db61b.zip gcc-c7789bfb8c6f12d57f24952a4ac3c0ae935db61b.tar.gz gcc-c7789bfb8c6f12d57f24952a4ac3c0ae935db61b.tar.bz2 |
re PR rtl-optimization/38740 (Incorrect delayed branch optimization)
PR rtl-optimization/38740
* reorg.c (gate_handle_delay_slots): Avoid dbr scheduling
if !optimize.
* config/mips/mips.c (mips_reorg): Likewise.
From-SVN: r143733
Diffstat (limited to 'gcc/reorg.c')
-rw-r--r-- | gcc/reorg.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/reorg.c b/gcc/reorg.c index fd6a58e..8b3219a 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -4046,7 +4046,8 @@ static bool gate_handle_delay_slots (void) { #ifdef DELAY_SLOTS - return flag_delayed_branch && !crtl->dbr_scheduled_p; + /* At -O0 dataflow info isn't updated after RA. */ + return optimize > 0 && flag_delayed_branch && !crtl->dbr_scheduled_p; #else return 0; #endif |