h8300.c (h8300_adjust_insn_length): Avoid trying to recognize USE, CLOBBER or SEQUENCE insns.
* h8300.c (h8300_adjust_insn_length): Avoid trying to recognize USE, CLOBBER or SEQUENCE insns. * unroll.c (unroll_loop): For HAVE_cc0 machines, adjust copy_end_luid to account for the uncopied insn that sets cc0 at the end of the loop. From-SVN: r26283
This commit is contained in:
parent
a45f333130
commit
47cf37f924
3 changed files with 20 additions and 0 deletions
|
@ -13,6 +13,12 @@ Tue Apr 6 17:49:49 1999 Philip Blundell <pb@nexus.co.uk>
|
|||
|
||||
Wed Apr 7 14:07:34 1999 Jeffrey A Law (law@cygnus.com)
|
||||
|
||||
* h8300.c (h8300_adjust_insn_length): Avoid trying to recognize
|
||||
USE, CLOBBER or SEQUENCE insns.
|
||||
|
||||
* unroll.c (unroll_loop): For HAVE_cc0 machines, adjust copy_end_luid
|
||||
to account for the uncopied insn that sets cc0 at the end of the loop.
|
||||
|
||||
* unroll.c (copy_loop_body): Always ensure at least two insns
|
||||
are in the copied loop.
|
||||
|
||||
|
|
|
@ -3033,6 +3033,12 @@ h8300_adjust_insn_length (insn, length)
|
|||
{
|
||||
rtx pat;
|
||||
|
||||
/* We must filter these ou before calling get_attr_adjust_length. */
|
||||
if (GET_CODE (PATTERN (insn)) == USE
|
||||
|| GET_CODE (PATTERN (insn)) == CLOBBER
|
||||
|| GET_CODE (PATTERN (insn)) == SEQUENCE)
|
||||
return 0;
|
||||
|
||||
if (get_attr_adjust_length (insn) == ADJUST_LENGTH_NO)
|
||||
return 0;
|
||||
|
||||
|
|
|
@ -790,6 +790,14 @@ unroll_loop (loop_end, insn_count, loop_start, end_insert_before,
|
|||
since it will also be used outside the loop. */
|
||||
if (GET_CODE (copy_end) == JUMP_INSN)
|
||||
copy_end_luid--;
|
||||
|
||||
/* If we have a target that uses cc0, then we also must not duplicate
|
||||
the insn that sets cc0 before the jump insn. */
|
||||
#ifdef HAVE_cc0
|
||||
if (GET_CODE (copy_end) == JUMP_INSN)
|
||||
copy_end_luid--;
|
||||
#endif
|
||||
|
||||
/* If copy_start points to the NOTE that starts the loop, then we must
|
||||
use the next luid, because invariant pseudo-regs moved out of the loop
|
||||
have their lifetimes modified to start here, but they are not safe
|
||||
|
|
Loading…
Add table
Reference in a new issue