diff options
author | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-07-05 08:01:48 +0000 |
---|---|---|
committer | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-07-05 08:01:48 +0000 |
commit | 4177c6958b02d95648295cd7951815b54a627ab5 (patch) | |
tree | f95b1bc19179206a2e7d46a7587619466659f205 /gcc/modulo-sched.c | |
parent | 32e17df0dc70dc48200952ff07b25cc4eff73f06 (diff) | |
download | gcc-4177c6958b02d95648295cd7951815b54a627ab5.tar.gz |
gcc/
* target-insns.def (doloop_begin, doloop_end): New targetm
instruction patterns.
* loop-init.c: Include target.h.
(pass_loop2::gate): Use the new targetm patterns instead of
HAVE_*/gen_* interface.
(pass_rtl_doloop::gate): Likewise.
(pass_rtl_doloop::execute): Remove preprocessor condition.
* hw-doloop.c: Build unconditionally.
* loop-doloop.c: Likewise.
(doloop_optimize): Use the new targetm patterns instead of
HAVE_*/gen_* interface.
(doloop_modify): Likewise. Change type of doloop_seq to rtx_insn *.
* modulo-sched.c (doloop_register_get): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225431 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/modulo-sched.c')
-rw-r--r-- | gcc/modulo-sched.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/modulo-sched.c b/gcc/modulo-sched.c index 60b39f81d18..193fb07aefd 100644 --- a/gcc/modulo-sched.c +++ b/gcc/modulo-sched.c @@ -362,15 +362,17 @@ ps_num_consecutive_stages (partial_schedule_ptr ps, int id) more than one occurrence in the loop besides the control part or the do-loop pattern is not of the form we expect. */ static rtx -doloop_register_get (rtx_insn *head ATTRIBUTE_UNUSED, rtx_insn *tail ATTRIBUTE_UNUSED) +doloop_register_get (rtx_insn *head, rtx_insn *tail) { -#ifdef HAVE_doloop_end rtx reg, condition; rtx_insn *insn, *first_insn_not_to_check; if (!JUMP_P (tail)) return NULL_RTX; + if (!targetm.code_for_doloop_end) + return NULL_RTX; + /* TODO: Free SMS's dependence on doloop_condition_get. */ condition = doloop_condition_get (tail); if (! condition) @@ -406,9 +408,6 @@ doloop_register_get (rtx_insn *head ATTRIBUTE_UNUSED, rtx_insn *tail ATTRIBUTE_U } return reg; -#else - return NULL_RTX; -#endif } /* Check if COUNT_REG is set to a constant in the PRE_HEADER block, so |