(expand_block_move): Don't do any block moves where we clobber fixed
numbers of registers, instead move just 1-8 bytes at a time.
From-SVN: r9884
then don't generate more than 8 loads. */
if (TARGET_STRING)
{
- if (bytes > 64)
+ if (bytes > 4*8)
return 0;
}
else if (!STRICT_ALIGNMENT)
{
for ( ; bytes > 0; bytes -= move_bytes)
{
+#if 0
+ /* XXX Don't move so many bytes right now, it causes the compiler to not bootstrap */
if (bytes > 24 /* move up to 32 bytes at a time */
&& !fixed_regs[5]
&& !fixed_regs[6]
GEN_INT (move_bytes),
align_rtx));
}
- else if (bytes > 4 && !TARGET_64BIT)
+ else
+#endif
+ if (bytes > 4 && !TARGET_64BIT)
{ /* move up to 8 bytes at a time */
move_bytes = (bytes > 8) ? 8 : bytes;
emit_insn (gen_movstrsi_2reg (dest_reg,