]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
m68k.c: Remove code protected by CRDS.
authorAndreas Schwab <schwab@suse.de>
Sat, 5 Jul 2003 07:33:06 +0000 (07:33 +0000)
committerAndreas Schwab <schwab@gcc.gnu.org>
Sat, 5 Jul 2003 07:33:06 +0000 (07:33 +0000)
* config/m68k/m68k.c: Remove code protected by CRDS.
* config/m68k/m68k.md: Likewise.

From-SVN: r68962

gcc/ChangeLog
gcc/config/m68k/m68k.c
gcc/config/m68k/m68k.md

index 6dd0c8779dbd43ba8fbdbed345b4080bcbf5085e..00c5a07e643562eccbea01151966dd9dce913154 100644 (file)
@@ -1,3 +1,8 @@
+2003-07-05  Andreas Schwab  <schwab@suse.de>
+
+       * config/m68k/m68k.c: Remove code protected by CRDS.
+       * config/m68k/m68k.md: Likewise.
+
 2003-07-05  Neil Booth  <neil@daikokuya.co.uk>
 
        PR driver/11417
index 40d141cb6f7f62b3bfc540c3a26eaeeab88de341..5bab7fceaec07c1fac9e7080bbda1720fb008cd6 100644 (file)
@@ -256,69 +256,6 @@ m68k_save_reg (regno)
 /* Note that the order of the bit mask for fmovem is the opposite
    of the order for movem!  */
 
-#ifdef CRDS
-
-static void
-m68k_output_function_prologue (stream, size)
-     FILE *stream;
-     HOST_WIDE_INT size;
-{
-  register int regno;
-  register int mask = 0;
-  HOST_WIDE_INT fsize = ((size) + 3) & -4;
-
-  /* unos stack probe */
-  if (fsize > 30000)
-    {
-      fprintf (stream, "\tmovel sp,a0\n");
-      fprintf (stream, "\taddl $-" HOST_WIDE_INT_PRINT_DEC ",a0\n",
-              2048 + fsize);
-      fprintf (stream, "\ttstb (a0)\n");
-    }
-  else
-    fprintf (stream, "\ttstb -" HOST_WIDE_INT_PRINT_DEC "(sp)\n",
-            2048 + fsize);
-
-  if (frame_pointer_needed)
-    {
-      if (TARGET_68020 || fsize < 0x8000)
-       fprintf (stream, "\tlink a6,$" HOST_WIDE_INT_PRINT_DEC "\n", -fsize);
-      else
-       fprintf (stream,
-                "\tlink a6,$0\n\tsubl $" HOST_WIDE_INT_PRINT_DEC ",sp\n",
-                fsize);
-    }
-  else if (fsize)
-    {
-      /* Adding negative number is faster on the 68040.  */
-      if (fsize + 4 < 0x8000)
-       fprintf (stream, "\tadd.w $" HOST_WIDE_INT_PRINT_DEC ",sp\n",
-                - (fsize + 4));
-      else
-       fprintf (stream, "\tadd.l $" HOST_WIDE_INT_PRINT_DEC ",sp\n",
-                - (fsize + 4));
-    }
-
-  for (regno = 16; regno < 24; regno++)
-    if (m68k_save_reg (regno))
-      mask |= 1 << (regno - 16);
-
-  if ((mask & 0xff) != 0)
-    fprintf (stream, "\tfmovem $0x%x,-(sp)\n", mask & 0xff);
-
-  mask = 0;
-  for (regno = 0; regno < 16; regno++)
-    if (m68k_save_reg (regno))
-      mask |= 1 << (15 - regno);
-
-  if (exact_log2 (mask) >= 0)
-    fprintf (stream, "\tmovel %s,-(sp)\n", reg_names[15 - exact_log2 (mask)]);
-  else if (mask)
-    fprintf (stream, "\tmovem $0x%x,-(sp)\n", mask);
-}
-
-#else  /* !CRDS */
-
 static void
 m68k_output_function_prologue (stream, size)
      FILE *stream;
@@ -643,7 +580,6 @@ m68k_output_function_prologue (stream, size)
 #endif
     }
 }
-#endif   /* !CRDS  */
 \f
 /* Return true if this function's epilogue can be output as RTL.  */
 
@@ -670,108 +606,6 @@ use_return_insn ()
    This is mandatory because of alloca; we also take advantage of it to
    omit stack adjustments before returning.  */
 
-#ifdef CRDS
-
-static void
-m68k_output_function_epilogue (stream, size)
-     FILE *stream;
-     HOST_WIDE_INT size;
-{
-  register int regno;
-  register int mask, fmask;
-  register int nregs;
-  HOST_WIDE_INT offset, foffset;
-  HOST_WIDE_INT fsize = ((size) + 3) & -4;
-  int big = 0;
-
-  nregs = 0;  fmask = 0;
-  for (regno = 16; regno < 24; regno++)
-    if (m68k_save_reg (regno))
-      {
-       nregs++;
-       fmask |= 1 << (23 - regno);
-      }
-
-  foffset = nregs * 12;
-  nregs = 0;  mask = 0;
-
-  for (regno = 0; regno < 16; regno++)
-    if (m68k_save_reg (regno))
-      {
-       nregs++;
-       mask |= 1 << regno;
-      }
-
-  offset = foffset + nregs * 4;
-  if (offset + fsize >= 0x8000
-      && frame_pointer_needed
-      && (mask || fmask))
-    {
-      fprintf (stream, "\tmovel $" HOST_WIDE_INT_PRINT_DEC ",a0\n", -fsize);
-      fsize = 0, big = 1;
-    }
-
-  if (exact_log2 (mask) >= 0)
-    {
-      if (big)
-       fprintf (stream, "\tmovel -" HOST_WIDE_INT_PRINT_DEC "(a6,a0.l),%s\n",
-                offset + fsize, reg_names[exact_log2 (mask)]);
-      else if (! frame_pointer_needed)
-       fprintf (stream, "\tmovel (sp)+,%s\n",
-                reg_names[exact_log2 (mask)]);
-      else
-       fprintf (stream, "\tmovel -" HOST_WIDE_INT_PRINT_DEC "(a6),%s\n",
-                offset + fsize, reg_names[exact_log2 (mask)]);
-    }
-  else if (mask)
-    {
-      if (big)
-       fprintf (stream,
-                "\tmovem -" HOST_WIDE_INT_PRINT_DEC "(a6,a0.l),$0x%x\n",
-                offset + fsize, mask);
-      else if (! frame_pointer_needed)
-       fprintf (stream, "\tmovem (sp)+,$0x%x\n", mask);
-      else
-       fprintf (stream, "\tmovem -" HOST_WIDE_INT_PRINT_DEC "(a6),$0x%x\n",
-                offset + fsize, mask);
-    }
-
-  if (fmask)
-    {
-      if (big)
-       fprintf (stream,
-                "\tfmovem -" HOST_WIDE_INT_PRINT_DEC "(a6,a0.l),$0x%x\n",
-                foffset + fsize, fmask);
-      else if (! frame_pointer_needed)
-       fprintf (stream, "\tfmovem (sp)+,$0x%x\n", fmask);
-      else
-       fprintf (stream, "\tfmovem -" HOST_WIDE_INT_PRINT_DEC "(a6),$0x%x\n",
-                foffset + fsize, fmask);
-    }
-
-  if (frame_pointer_needed)
-    fprintf (stream, "\tunlk a6\n");
-  else if (fsize)
-    {
-      if (fsize + 4 < 0x8000)
-       fprintf (stream, "\tadd.w $" HOST_WIDE_INT_PRINT_DEC ",sp\n",
-                fsize + 4);
-      else
-       fprintf (stream, "\tadd.l $" HOST_WIDE_INT_PRINT_DEC ",sp\n",
-                fsize + 4);
-    }
-
-  if (current_function_calls_eh_return)
-    fprintf (stream, "\tadd.l a0,sp\n");
-
-  if (current_function_pops_args)
-    fprintf (stream, "\trtd $%d\n", current_function_pops_args);
-  else
-    fprintf (stream, "\trts\n");
-}
-
-#else  /* !CRDS */
-
 static void
 m68k_output_function_epilogue (stream, size)
      FILE *stream;
@@ -1045,7 +879,6 @@ m68k_output_function_epilogue (stream, size)
   else
     fprintf (stream, "\trts\n");
 }
-#endif   /* !CRDS  */
 \f
 /* Similar to general_operand, but exclude stack_pointer_rtx.  */
 
@@ -1772,27 +1605,27 @@ output_move_const_into_data_reg (operands)
   switch (const_method (operands[1]))
     {
     case MOVQ :
-#if defined (MOTOROLA) && !defined (CRDS)
+#if defined (MOTOROLA)
       return "moveq%.l %1,%0";
 #else
       return "moveq %1,%0";
 #endif
     case NOTB :
       operands[1] = GEN_INT (i ^ 0xff);
-#if defined (MOTOROLA) && !defined (CRDS)
+#if defined (MOTOROLA)
       return "moveq%.l %1,%0\n\tnot%.b %0";
 #else
       return "moveq %1,%0\n\tnot%.b %0";
 #endif  
     case NOTW :
       operands[1] = GEN_INT (i ^ 0xffff);
-#if defined (MOTOROLA) && !defined (CRDS)
+#if defined (MOTOROLA)
       return "moveq%.l %1,%0\n\tnot%.w %0";
 #else
       return "moveq %1,%0\n\tnot%.w %0";
 #endif  
     case NEGW :
-#if defined (MOTOROLA) && !defined (CRDS)
+#if defined (MOTOROLA)
       return "moveq%.l %#-128,%0\n\tneg%.w %0";
 #else
       return "moveq %#-128,%0\n\tneg%.w %0";
@@ -1885,7 +1718,7 @@ output_move_himode (operands)
               && INTVAL (operands[1]) < 128
               && INTVAL (operands[1]) >= -128)
        {
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
          return "moveq%.l %1,%0";
 #else
          return "moveq %1,%0";
@@ -1989,7 +1822,7 @@ output_move_qimode (operands)
       && INTVAL (operands[1]) < 128
       && INTVAL (operands[1]) >= -128)
     {
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
       return "moveq%.l %1,%0";
 #else
       return "moveq %1,%0";
@@ -2795,7 +2628,7 @@ floating_exact_log2 (x)
    '@' for a reference to the top word on the stack:
        sp@, (sp) or (%sp) depending on the style of syntax.
    '#' for an immediate operand prefix (# in MIT and Motorola syntax
-       but & in SGS syntax, $ in CRDS/UNOS syntax).
+       but & in SGS syntax).
    '!' for the cc register (used in an `and to cc' insn).
    '$' for the letter `s' in an op code, but only on the 68040.
    '&' for the letter `d' in an op code, but only on the 68040.
@@ -2819,7 +2652,7 @@ print_operand (file, op, letter)
 {
   if (letter == '.')
     {
-#if defined (MOTOROLA) && !defined (CRDS)
+#if defined (MOTOROLA)
       fprintf (file, ".");
 #endif
     }
index ffaea3b2340fc216878b57f31451514a5590a194..7d29741b8eb7d516775bde381a64585f13fa8365 100644 (file)
     }
   /* moveq is faster on the 68000.  */
   if (DATA_REG_P (operands[0]) && (!TARGET_68020 && !TARGET_5200))
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
     return \"moveq%.l %#0,%0\";
 #else
     return \"moveq %#0,%0\";
       /* moveq is faster on the 68000.  */
       if (DATA_REG_P (operands[0]) && !(TARGET_68020 || TARGET_5200))
        {
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
          return \"moveq%.l %#0,%0\";
 #else
          return \"moveq %#0,%0\";
   ""
   "*
 {
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
   return \"muls%.w %2,%0\";
 #else
   return \"muls %2,%0\";
   ""
   "*
 {
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
   return \"muls%.w %2,%0\";
 #else
   return \"muls %2,%0\";
   "INTVAL (operands[2]) >= -0x8000 && INTVAL (operands[2]) <= 0x7fff"
   "*
 {
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
   return \"muls%.w %2,%0\";
 #else
   return \"muls %2,%0\";
   ""
   "*
 {
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
   return \"mulu%.w %2,%0\";
 #else
   return \"mulu %2,%0\";
   "INTVAL (operands[2]) >= 0 && INTVAL (operands[2]) <= 0xffff"
   "*
 {
-#if defined(MOTOROLA) && !defined(CRDS)
+#if defined(MOTOROLA)
   return \"mulu%.w %2,%0\";
 #else
   return \"mulu %2,%0\";
   if (TARGET_5200)
     {
       if (ADDRESS_REG_P (operands[0]))
-       {
-#ifdef CRDS
-         return \"jmp 2(pc,%0.l)\";
-#else
-         return \"jmp 2(%%pc,%0.l)\";
-#endif  /* end !CRDS */
-       }
+       return \"jmp 2(%%pc,%0.l)\";
       else
-       {
-#ifdef CRDS
-         return \"ext%.l %0\;jmp 2(pc,%0.l)\";
-#else
-         return \"extl %0\;jmp 2(%%pc,%0.l)\";
-#endif  /* end !CRDS */
-       }
+       return \"extl %0\;jmp 2(%%pc,%0.l)\";
     }
   else
-    {
-#ifdef CRDS
-      return \"jmp 2(pc,%0.w)\";
-#else
-      return \"jmp 2(%%pc,%0.w)\";
-#endif  /* end !CRDS */
-    }
+    return \"jmp 2(%%pc,%0.w)\";
 #endif
 #else /* not SGS */
   if (TARGET_5200)