config.gcc: Remove sparc-tti-*.
authorJames A. Morrison <ja2morri@uwaterloo.ca>
Fri, 26 Mar 2004 11:13:48 +0000 (11:13 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Fri, 26 Mar 2004 11:13:48 +0000 (11:13 +0000)
* config.gcc: Remove sparc-tti-*.
* config/sparc/pbd.h: Delete.

* config/sparc/sol2.h: Remove note about Sun OS 4.x.
* config/sparc/aout.h: Likewise.

* config/sparc/sparc.h: Remove if 0'd code.
* config/sparc/sparc.md (call): Remove if 0'd code.
(call_value): Likewise.
(nonlocal_goto): Likewise.
(unimp_insn): Delete.

From-SVN: r79980

gcc/ChangeLog
gcc/config.gcc
gcc/config/sparc/aout.h
gcc/config/sparc/pbd.h [deleted file]
gcc/config/sparc/sol2.h
gcc/config/sparc/sparc.h
gcc/config/sparc/sparc.md

index c56fb86c02bc7f81287cea0e0dde397e73556de5..b41b630fa8c18801b202c52054bc04445af7f4bb 100644 (file)
@@ -1,3 +1,17 @@
+2004-03-26  James A. Morrison  <ja2morri@uwaterloo.ca>
+
+       * config.gcc: Remove sparc-tti-*.
+       * config/sparc/pbd.h: Delete.
+
+       * config/sparc/sol2.h: Remove note about Sun OS 4.x.
+       * config/sparc/aout.h: Likewise.
+
+       * config/sparc/sparc.h: Remove if 0'd code.
+       * config/sparc/sparc.md (call): Remove if 0'd code.
+       (call_value): Likewise.
+       (nonlocal_goto): Likewise.
+       (unimp_insn): Delete.
+
 2004-03-25  Roger Sayle  <roger@eyesopen.com>
 
        * fold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like
index 8d7f0d04d207dbe7e6618cb311b5c0f70d4b8d44..9be962c21112000eb67ca1c279a594c8639a08ee 100644 (file)
@@ -1784,10 +1784,6 @@ sh-*-*)
        tm_file="${tm_file} dbxcoff.h sh/coff.h"
        use_fixproto=yes
        ;;
-sparc-tti-*)
-       tm_file="${tm_file} sparc/pbd.h"
-       use_fixproto=yes
-       ;;
 sparc-*-netbsdelf*)
        tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
        ;;
index 0a02f777b85e4fca4f371a87b937249a46961dea..5c5e6226888863e4a85ff70a133818ec5790e3ff 100644 (file)
@@ -48,10 +48,7 @@ do {                                                                 \
 #define DATA_SECTION_ASM_OP "\t.data"
 
 /* This is how to output a note to DBX telling it the line number
-   to which the following sequence of instructions corresponds.
-
-   This is needed for SunOS 4.0, and should not hurt for 3.2
-   versions either.  */
+   to which the following sequence of instructions corresponds.  */
 #define ASM_OUTPUT_SOURCE_LINE(file, line, counter)    \
   fprintf (file, ".stabn 68,0,%d,LM%d\nLM%d:\n",       \
           line, counter, counter)
diff --git a/gcc/config/sparc/pbd.h b/gcc/config/sparc/pbd.h
deleted file mode 100644 (file)
index 650ad68..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-/* Definitions of target machine for GNU compiler, Citicorp/TTI Unicom PBD
-   version (using GAS and COFF (encapsulated is unacceptable) )
-   Copyright (C) 1990, 1996, 2000, 2004 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GCC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
-
-/* Target OS builtins.  */
-#define TARGET_OS_CPP_BUILTINS()               \
-  do                                           \
-    {                                          \
-       builtin_define_std ("unix");            \
-       builtin_define_std ("UnicomPBD");       \
-       builtin_assert ("system=unix");         \
-    }                                          \
-  while (0)
-
-/* We want DBX format for use with gdb under COFF.  */
-
-#define DBX_DEBUGGING_INFO 1
-
-/* Generate calls to memcpy, memcmp and memset.  */
-
-#define TARGET_MEM_FUNCTIONS
-
-/* we use /lib/libp/lib*  when profiling */
-
-#undef LIB_SPEC
-#define LIB_SPEC "%{p:-L/usr/lib/libp} %{pg:-L/usr/lib/libp} -lc"
-
-
-/* Use crt1.o as a startup file and crtn.o as a closing file.  */
-/*
- * The loader directive file gcc.ifile defines how to merge the constructor 
- * sections into the data section.  Also, since gas only puts out those 
- * sections in response to N_SETT stabs, and does not (yet) have a 
- * ".sections" directive, gcc.ifile also defines the list symbols 
- * __DTOR_LIST__ and __CTOR_LIST__.
- * 
- * Finally, we must explicitly specify the file from libgcc.a that defines
- * exit(), otherwise if the user specifies (for example) "-lc_s" on the 
- * command line, the wrong exit() will be used and global destructors will 
- * not get called .
- */
-
-#define STARTFILE_SPEC \
-"%{!r: gcc.ifile%s} %{pg:gcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}} \
-%{!r:_exit.o%s}"
-
-#define ENDFILE_SPEC "crtn.o%s"
-
-/* LINK_SPEC is needed only for SunOS 4.  */
-
-#undef LINK_SPEC
-
-/* Although the gas we use can create .ctor and .dtor sections from N_SETT
-   stabs, it does not support section directives, so we need to have the loader
-   define the lists.
-   */
-#define CTOR_LISTS_DEFINED_EXTERNALLY
-
-/* similar to default, but allows for the table defined by ld with gcc.ifile. 
-   nptrs is always 0.  So we need to instead check that __DTOR_LIST__[1] != 0.
-   The old check is left in so that the same macro can be used if and when  
-   a future version of gas does support section directives.  */
-
-#define DO_GLOBAL_DTORS_BODY {int nptrs = *(int *)__DTOR_LIST__; int i; \
-  if (nptrs == -1 || (__DTOR_LIST__[0] == 0 && __DTOR_LIST__[1] != 0))  \
-    for (nptrs = 0; __DTOR_LIST__[nptrs + 1] != 0; nptrs++);           \
-  for (i = nptrs; i >= 1; i--)                                         \
-    __DTOR_LIST__[i] (); }
-
-/* 
- * Here is an example gcc.ifile.  I've tested it on PBD sparc
- * systems. The NEXT(0x200000) works on just about all 386 and m68k systems, 
- * but can be reduced to any power of 2 that is >= NBPS (0x40000 on a pbd).
-
-   SECTIONS {
-       .text BIND(0x41000200) BLOCK (0x200) : 
-               { *(.init) *(.text) vfork = fork; *(.fini) }
-
-       GROUP BIND( NEXT(0x200000) + ADDR(.text) + SIZEOF(.text)):
-       {      .data : { __CTOR_LIST__ = . ; . += 4; *(.ctor) . += 4 ;
-                        __DTOR_LIST__ = . ; . += 4; *(.dtor) . += 4 ; }
-              .bss : { }
-       }
-  }
- */
-
-/* The prefix to add to user-visible assembler symbols.  */
-
-#undef USER_LABEL_PREFIX
-#define USER_LABEL_PREFIX ""
-
-/* fixes: */
-/*
- *  Internal labels are prefixed with a period.
- */
-
-#undef  LOCAL_LABEL_PREFIX
-#define LOCAL_LABEL_PREFIX  "."
-
-/* This is how to store into the string LABEL
-   the symbol_ref name of an internal numbered label where
-   PREFIX is the class of label and NUM is the number within the class.
-   This is suitable for output with `assemble_name'.  */
-
-#undef ASM_GENERATE_INTERNAL_LABEL
-#define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM)                   \
-        sprintf (LABEL, "*.%s%ld", PREFIX, (long)(NUM))
-
-/* This is how to output an element of a case-vector that is relative.  */
-
-#undef  ASM_OUTPUT_ADDR_DIFF_ELT
-#define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL)  \
-  fprintf (FILE, "\t.word .L%d-.L%d\n", VALUE, REL)
-
-/* This is how to output an element of a case-vector that is absolute.
-   (The 68000 does not use such vectors,
-   but we must define this macro anyway.)  */
-
-#undef ASM_OUTPUT_ADDR_VEC_ELT
-#define ASM_OUTPUT_ADDR_VEC_ELT(FILE, VALUE)  \
-  fprintf (FILE, "\t.word .L%d\n", VALUE)
-
-/* This is needed for SunOS 4.0, and should not hurt for 3.2
-   versions either.  */
-#undef ASM_OUTPUT_SOURCE_LINE
-#define ASM_OUTPUT_SOURCE_LINE(file, line, counter)    \
-  fprintf (file, ".stabn 68,0,%d,.LM%d\n.LM%d:\n",     \
-          line, counter, counter)
index 717a5a69a030a90d1473b1d538b0a35b24e57859..fcfc75976859aa52dac07c8d7c9370df30839ec2 100644 (file)
@@ -130,8 +130,6 @@ Boston, MA 02111-1307, USA.  */
 #undef SUPPORTS_INIT_PRIORITY
 #define SUPPORTS_INIT_PRIORITY 0
 \f
-/* ??? This does not work in SunOS 4.x, so it is not enabled in sparc.h.
-   Instead, it is enabled here, because it does work under Solaris.  */
 /* Define for support of TFmode long double.
    SPARC ABI says that long double is 4 words.  */
 #define LONG_DOUBLE_TYPE_SIZE 128
index 44776c751397dcc611d144bee91f788b696defee..768525be312b5ebf85468ac338925e53a6282cab 100644 (file)
@@ -699,14 +699,9 @@ extern struct sparc_cpu_select sparc_select[];
 #define LONG_LONG_TYPE_SIZE    64
 #define FLOAT_TYPE_SIZE                32
 #define DOUBLE_TYPE_SIZE       64
-
-#if 0
-/* ??? This does not work in SunOS 4.x, so it is not enabled here.
-   Instead, it is enabled in sol2.h, because it does work under Solaris.  */
-/* Define for support of TFmode long double.
-   SPARC ABI says that long double is 4 words.  */
-#define LONG_DOUBLE_TYPE_SIZE 128
-#endif
+/* LONG_DOUBLE_TYPE_SIZE is defined per OS even though the
+   SPARC ABI says that it is 128-bit wide.  */
+/* #define LONG_DOUBLE_TYPE_SIZE       128 */
 
 /* Width in bits of a pointer.
    See also the macro `Pmode' defined below.  */
index f0e69b173589ad458e2b6ad3a34b3851081241ce..2c388f99c8a7207fd85ede4f7827f511015172b7 100644 (file)
   "jmp\t%a0%#"
   [(set_attr "type" "uncond_branch")])
 
-;; This pattern recognizes the "instruction" that appears in 
-;; a function call that wants a structure value, 
-;; to inform the called function if compiled with Sun CC.
-;(define_insn "*unimp_insn"
-;  [(match_operand:SI 0 "immediate_operand" "")]
-;  "GET_CODE (operands[0]) == CONST_INT && INTVAL (operands[0]) > 0"
-;  "unimp\t%0"
-;  [(set_attr "type" "marker")])
-
 ;;- jump to subroutine
 (define_expand "call"
   ;; Note that this expression is not used for generating RTL.
   ;; operands[3] is struct_value_size_rtx.
   ""
 {
-  rtx fn_rtx, nregs_rtx;
+  rtx fn_rtx;
 
    if (GET_MODE (operands[0]) != FUNCTION_MODE)
     abort ();
 
   fn_rtx = operands[0];
 
-  /* Count the number of parameter registers being used by this call.
-     if that argument is NULL, it means we are using them all, which
-     means 6 on the sparc.  */
-#if 0
-  if (operands[2])
-    nregs_rtx = GEN_INT (REGNO (operands[2]) - 8);
-  else
-    nregs_rtx = GEN_INT (6);
-#else
-  nregs_rtx = const0_rtx;
-#endif
-
   if (! TARGET_ARCH64 && INTVAL (operands[3]) != 0)
     emit_call_insn
       (gen_rtx_PARALLEL
        (VOIDmode,
-       gen_rtvec (3, gen_rtx_CALL (VOIDmode, fn_rtx, nregs_rtx),
+       gen_rtvec (3, gen_rtx_CALL (VOIDmode, fn_rtx, const0_rtx),
                   operands[3],
                   gen_rtx_CLOBBER (VOIDmode, gen_rtx_REG (Pmode, 15)))));
   else
     emit_call_insn
       (gen_rtx_PARALLEL
        (VOIDmode,
-       gen_rtvec (2, gen_rtx_CALL (VOIDmode, fn_rtx, nregs_rtx),
+       gen_rtvec (2, gen_rtx_CALL (VOIDmode, fn_rtx, const0_rtx),
                   gen_rtx_CLOBBER (VOIDmode, gen_rtx_REG (Pmode, 15)))));
 
  finish_call:
-#if 0
-  /* If this call wants a structure value,
-     emit an unimp insn to let the called function know about this.  */
-  if (! TARGET_ARCH64 && INTVAL (operands[3]) > 0)
-    {
-      rtx insn = emit_insn (operands[3]);
-      SCHED_GROUP_P (insn) = 1;
-    }
-#endif
 
   DONE;
 })
   ;; operand 3 is next_arg_register
   ""
 {
-  rtx fn_rtx, nregs_rtx;
+  rtx fn_rtx;
   rtvec vec;
 
   if (GET_MODE (operands[1]) != FUNCTION_MODE)
 
   fn_rtx = operands[1];
 
-#if 0
-  if (operands[3])
-    nregs_rtx = GEN_INT (REGNO (operands[3]) - 8);
-  else
-    nregs_rtx = GEN_INT (6);
-#else
-  nregs_rtx = const0_rtx;
-#endif
-
   vec = gen_rtvec (2,
                   gen_rtx_SET (VOIDmode, operands[0],
-                               gen_rtx_CALL (VOIDmode, fn_rtx, nregs_rtx)),
+                               gen_rtx_CALL (VOIDmode, fn_rtx, const0_rtx)),
                   gen_rtx_CLOBBER (VOIDmode, gen_rtx_REG (Pmode, 15)));
 
   emit_call_insn (gen_rtx_PARALLEL (VOIDmode, vec));