+2000-10-12 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (output_movhi, output_movsisf): Fix loading
+ constants 1 and 2 to NO_LD_REGS.
+
2000-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Makefile.in (c-parse.c, tradcif.c): Create atomically.
return AS1 (inc,%0 ; reg_was_0);
}
- *l = 2;
- return (AS1 (clr,%0) CR_TAB
- AS1 (inc,%0));
+ *l = 3;
+ return (AS1 (clr,%A0) CR_TAB
+ AS1 (clr,%B0) CR_TAB
+ AS1 (inc,%A0));
}
else if (src == const2_rtx)
{
AS1 (inc,%0));
}
- *l = 3;
- return (AS1 (clr,%0) CR_TAB
- AS1 (inc,%0) CR_TAB
- AS1 (inc,%0));
+ *l = 4;
+ return (AS1 (clr,%A0) CR_TAB
+ AS1 (clr,%B0) CR_TAB
+ AS1 (inc,%A0) CR_TAB
+ AS1 (inc,%A0));
}
else if (src == constm1_rtx)
{
*l = 1;
return AS1 (inc,%A0 ; reg_was_0);
}
-
- *l = 4;
- return (AS1 (clr,%D0) CR_TAB
+ if (AVR_ENHANCED)
+ {
+ *l = 4;
+ return (AS1 (clr,%A0) CR_TAB
+ AS1 (clr,%B0) CR_TAB
+ AS2 (movw,%C0,%A0) CR_TAB
+ AS1 (inc,%A0));
+ }
+ *l = 5;
+ return (AS1 (clr,%A0) CR_TAB
AS1 (clr,%B0) CR_TAB
AS1 (clr,%C0) CR_TAB
+ AS1 (clr,%D0) CR_TAB
AS1 (inc,%A0));
}
else if (src == const2_rtx)