mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-02-19 23:50:21 +08:00
200x-xx-xx Julian Brown <julian@codesourcery.com>
gcc/ 200x-xx-xx Julian Brown <julian@codesourcery.com> * config/m68k/m68k.h (TUNE_68040_60): New macro. * config/m68k/m68k.c (standard_68881_constant_p): Use it. * config/m68k/m68k.md: Likewise. From-SVN: r120707
This commit is contained in:
parent
fe95f2f799
commit
9cf106c865
@ -1,3 +1,9 @@
|
||||
2007-01-12 Julian Brown <julian@codesourcery.com>
|
||||
|
||||
* config/m68k/m68k.h (TUNE_68040_60): New macro.
|
||||
* config/m68k/m68k.c (standard_68881_constant_p): Use it.
|
||||
* config/m68k/m68k.md: Likewise.
|
||||
|
||||
2007-01-12 Julian Brown <julian@codesourcery.com>
|
||||
Richard Sandiford <richard@codesourcery.com>
|
||||
|
||||
|
@ -2789,7 +2789,7 @@ standard_68881_constant_p (rtx x)
|
||||
|
||||
/* fmovecr must be emulated on the 68040 and 68060, so it shouldn't be
|
||||
used at all on those chips. */
|
||||
if (TUNE_68040 || TUNE_68060)
|
||||
if (TUNE_68040_60)
|
||||
return 0;
|
||||
|
||||
if (! inited_68881_table)
|
||||
|
@ -130,6 +130,7 @@ Boston, MA 02110-1301, USA. */
|
||||
#define TUNE_68030 TARGET_68030
|
||||
#define TUNE_68040 TARGET_68040
|
||||
#define TUNE_68060 TARGET_68060
|
||||
#define TUNE_68040_60 (TUNE_68040 || TUNE_68060)
|
||||
#define TUNE_CFV2 TARGET_5200
|
||||
|
||||
#define OVERRIDE_OPTIONS override_options()
|
||||
|
@ -618,10 +618,10 @@
|
||||
if (ADDRESS_REG_P (operands[0]))
|
||||
{
|
||||
/* On the '040, 'subl an,an' takes 2 clocks while lea takes only 1 */
|
||||
if (!TUNE_68040 && !TUNE_68060)
|
||||
return "sub%.l %0,%0";
|
||||
else
|
||||
if (TUNE_68040_60)
|
||||
return MOTOROLA ? "lea 0.w,%0" : "lea 0:w,%0";
|
||||
else
|
||||
return "sub%.l %0,%0";
|
||||
}
|
||||
/* moveq is faster on the 68000. */
|
||||
if (DATA_REG_P (operands[0]) && TUNE_68000_10)
|
||||
@ -846,10 +846,10 @@
|
||||
if (ADDRESS_REG_P (operands[0]))
|
||||
{
|
||||
/* On the '040, 'subl an,an' takes 2 clocks while lea takes only 1 */
|
||||
if (!TUNE_68040 && !TUNE_68060)
|
||||
return "sub%.l %0,%0";
|
||||
else
|
||||
if (TUNE_68040_60)
|
||||
return MOTOROLA ? "lea 0.w,%0" : "lea 0:w,%0";
|
||||
else
|
||||
return "sub%.l %0,%0";
|
||||
}
|
||||
/* moveq is faster on the 68000. */
|
||||
if (DATA_REG_P (operands[0]) && TUNE_68000_10)
|
||||
@ -2869,7 +2869,7 @@
|
||||
"TARGET_68881"
|
||||
{
|
||||
if (GET_CODE (operands[2]) == CONST_DOUBLE
|
||||
&& floating_exact_log2 (operands[2]) && !TUNE_68040 && !TUNE_68060)
|
||||
&& floating_exact_log2 (operands[2]) && !TUNE_68040_60)
|
||||
{
|
||||
int i = floating_exact_log2 (operands[2]);
|
||||
operands[2] = GEN_INT (i);
|
||||
|
Loading…
Reference in New Issue
Block a user