diff options
author | Simon Dardis <simon.dardis@imgtec.com> | 2015-10-26 16:29:31 +0000 |
---|---|---|
committer | Simon Dardis <dardiss@gcc.gnu.org> | 2015-10-26 16:29:31 +0000 |
commit | f52a73a48ee7123e3db494c6b0ac72d0d4359ad9 (patch) | |
tree | 9552e1a0126429b27a97fae3c461dbb105d3be55 /gcc/reorg.c | |
parent | bdeb752cf843f95086d96ca7f8908c99a6c81750 (diff) | |
download | gcc-f52a73a48ee7123e3db494c6b0ac72d0d4359ad9.zip gcc-f52a73a48ee7123e3db494c6b0ac72d0d4359ad9.tar.gz gcc-f52a73a48ee7123e3db494c6b0ac72d0d4359ad9.tar.bz2 |
target.def (TARGET_NO_SPECULATION_IN_DELAY_SLOTS_P): New hook.
gcc/
* target.def (TARGET_NO_SPECULATION_IN_DELAY_SLOTS_P): New hook.
* doc/tm.texi.in (TARGET_NO_SPECULATION_IN_DELAY_SLOTS_P): Document.
* doc/tm.texi: Regenerated.
* reorg.c (dbr_schedule): Use new hook.
* config/mips/mips.c (mips_no_speculation_in_delay_slots_p): New.
testsuite/
* gcc.target/mips/ds-schedule-1.c: New.
* gcc.target/mips/ds-schedule-2.c: New.
From-SVN: r229383
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 47b938b..ccd0d71 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -3726,7 +3726,8 @@ dbr_schedule (rtx_insn *first) { fill_simple_delay_slots (1); fill_simple_delay_slots (0); - fill_eager_delay_slots (); + if (!targetm.no_speculation_in_delay_slots_p ()) + fill_eager_delay_slots (); relax_delay_slots (first); } |