loop.c (check_dbra_loop): Return if more than one condition is present to control the loop.
* loop.c (check_dbra_loop) : Return if more than one condition is present to control the loop. From-SVN: r35096
This commit is contained in:
parent
2d3483dca0
commit
947851b2c3
2 changed files with 16 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
|||
2000-07-17 Chandrakala Chavva <cchavva@cygnus.com>
|
||||
|
||||
* loop.c (check_dbra_loop) : Return if more than one condition is
|
||||
present to control the loop.
|
||||
|
||||
Mon Jul 17 08:26:35 2000 Clinton Popetz <cpopetz@cygnus.com>
|
||||
|
||||
* mips.c (mips_expand_prologue): Don't calculate the last
|
||||
|
|
11
gcc/loop.c
11
gcc/loop.c
|
@ -7795,6 +7795,17 @@ check_dbra_loop (loop, insn_count)
|
|||
else
|
||||
return 0;
|
||||
|
||||
{
|
||||
/* If more than one condition is present to control the loop, then
|
||||
do not procceed as this function does not know how to rewrite loop
|
||||
tests with more than one condition. */
|
||||
|
||||
rtx jump1;
|
||||
if ((jump1 = prev_nonnote_insn (jump)) != loop_continue)
|
||||
if (GET_CODE (jump1) == JUMP_INSN))
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Check all of the bivs to see if the compare uses one of them.
|
||||
Skip biv's set more than once because we can't guarantee that
|
||||
it will be zero on the last iteration. Also skip if the biv is
|
||||
|
|
Loading…
Add table
Reference in a new issue