summaryrefslogtreecommitdiff
path: root/gcc/reorg.c
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2009-01-06 22:00:18 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2009-01-06 22:00:18 +0000
commit2061be83a91df76bb72c2646666ebabda67d91c4 (patch)
treede3a6bbab91f28cd79f61ff34a9520334026fd03 /gcc/reorg.c
parent6b80674361ae3ce4d8570d6af14237eaac135938 (diff)
downloadgcc-2061be83a91df76bb72c2646666ebabda67d91c4.tar.gz
gcc/
* function.h (rtl_data): Add a dbr_scheduled_p field. * reorg.c (dbr_schedule): Set it. (gate_handle_delay_slots): Check it. * config/mips/mips.c (mips_base_delayed_branch): Delete. (mips_reorg): Check flag_delayed_branch instead of mips_base_delayed_branch. (mips_override_options): Don't set mips_base_delayed_branch or flag_delayed_branch. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@143136 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/reorg.c')
-rw-r--r--gcc/reorg.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/reorg.c b/gcc/reorg.c
index 97570e858dd..fd6a58e02eb 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -4038,6 +4038,7 @@ dbr_schedule (rtx first)
}
#endif
+ crtl->dbr_scheduled_p = true;
}
#endif /* DELAY_SLOTS */
@@ -4045,7 +4046,7 @@ static bool
gate_handle_delay_slots (void)
{
#ifdef DELAY_SLOTS
- return flag_delayed_branch;
+ return flag_delayed_branch && !crtl->dbr_scheduled_p;
#else
return 0;
#endif