* unroll.c (copy_loop_body): Don't treat a REG like a PLUS.
From-SVN: r31016
This commit is contained in:
parent
0cc6d0ac18
commit
3f0aabf20a
@ -1,3 +1,7 @@
|
|||||||
|
Sat Dec 18 18:30:20 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
|
||||||
|
|
||||||
|
* unroll.c (copy_loop_body): Don't treat a REG like a PLUS.
|
||||||
|
|
||||||
1999-12-18 10:42 -0800 Zack Weinberg <zack@wolery.cumb.org>
|
1999-12-18 10:42 -0800 Zack Weinberg <zack@wolery.cumb.org>
|
||||||
|
|
||||||
* objc/objc-parse.c: Regenerate. This file must be rebuilt
|
* objc/objc-parse.c: Regenerate. This file must be rebuilt
|
||||||
|
@ -1812,12 +1812,15 @@ copy_loop_body (copy_start, copy_end, map, exit_label, last_iteration,
|
|||||||
value = plus_constant (tv->dest_reg,
|
value = plus_constant (tv->dest_reg,
|
||||||
tv->const_adjust);
|
tv->const_adjust);
|
||||||
|
|
||||||
|
if (GET_CODE (value) == PLUS)
|
||||||
|
{
|
||||||
/* The constant could be too large for an add
|
/* The constant could be too large for an add
|
||||||
immediate, so can't directly emit an insn
|
immediate, so can't directly emit an insn
|
||||||
here. */
|
here. */
|
||||||
emit_unrolled_add (dest_reg, XEXP (value, 0),
|
emit_unrolled_add (dest_reg, XEXP (value, 0),
|
||||||
XEXP (value, 1));
|
XEXP (value, 1));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Reset the giv to be just the register again, in case
|
/* Reset the giv to be just the register again, in case
|
||||||
it is used after the set we have just emitted.
|
it is used after the set we have just emitted.
|
||||||
|
Loading…
Reference in New Issue
Block a user