mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-02-10 21:10:10 +08:00
bfin.md (doloop_end): FAIL if counter reg isn't SImode.
* config/bfin/bfin.md (doloop_end): FAIL if counter reg isn't SImode. From-SVN: r122371
This commit is contained in:
parent
daa07a06ce
commit
9b02a95e80
@ -1,3 +1,7 @@
|
||||
2007-02-27 Bernd Schmidt <bernd.schmidt@analog.com>
|
||||
|
||||
* config/bfin/bfin.md (doloop_end): FAIL if counter reg isn't SImode.
|
||||
|
||||
2007-02-27 Andreas Schwab <schwab@suse.de>
|
||||
|
||||
* Makefile.in (TEXI_GCCINSTALL_FILES): Add gcc-common.texi.
|
||||
|
@ -1640,10 +1640,12 @@
|
||||
(clobber (match_scratch:SI 5 ""))])]
|
||||
""
|
||||
{
|
||||
/* The loop optimizer doesn't check the predicates... */
|
||||
if (GET_MODE (operands[0]) != SImode)
|
||||
FAIL;
|
||||
/* Due to limitations in the hardware (an initial loop count of 0
|
||||
does not loop 2^32 times) we must avoid to generate a hardware
|
||||
loops when we cannot rule out this case. */
|
||||
|
||||
if (!flag_unsafe_loop_optimizations
|
||||
&& (unsigned HOST_WIDE_INT) INTVAL (operands[2]) >= 0xFFFFFFFF)
|
||||
FAIL;
|
||||
|
Loading…
Reference in New Issue
Block a user