This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Purge powerpcle-*-solaris2* configurations


During a previous discussion it was mentioned that the
powerpcle-*-solaris2* target is dead and should be removed, since it
complicates code all over config/rs6000.  This patch does that.

config/rs6000/sol-c[in].asm remain, since they are used by the NetBSD
port and renaming files is icky.

I've built cc1 of an i386-linux -> powerpc-eabisim cross compiler with
this patch applied.  I will be doing a complete simulator test run
with this patch plus one more (correct structure return behavior in
ABI_V4, with backward compatibility toggles) later tonight.  The
changes to RETURN_IN_MEMORY/DEFAULT_PCC_STRUCT_RETURN in this patch
should not affect code generation at all.

zw

	* config.gcc: Delete powerpcle-*-solaris2* stanza.
	* config/rs6000/eabi.asm, config/rs6000/rs6000.c,
	config/rs6000/rs6000.h, config/rs6000/rs6000.md,
	config/rs6000/sol-ci.asm, config/rs6000/sol-cn.asm,
	config/rs6000/sysv4.h, config/rs6000/t-ppccomm,
	config/rs6000/t-ppcos: Expunge all references to Solaris.

	* config/rs6000/sol-c0.c, config/rs6000/sol2.h: Delete.

	* config/rs6000/rs6000.md: Replace '%$' with '$' in all output templates.
	* config/rs6000/rs6000.h: Define DEFAULT_PCC_STRUCT_RETURN to 0,
	and change RETURN_IN_MEMORY to just check AGGREGATE_TYPE_P.

===================================================================
Index: config.gcc
--- config.gcc	2001/11/18 00:14:52	1.115
+++ config.gcc	2001/11/20 01:18:55
@@ -2747,12 +2747,6 @@ powerpcle-*-eabi*)
 	tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
 	extra_headers=ppc-asm.h
 	;;
-powerpcle-*-solaris2*)
-	tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
-	xm_defines=POSIX
-	tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
-	extra_headers=ppc-asm.h
-	;;
 rs6000-ibm-aix3.[01]*)
 	xm_defines=POSIX
 	tm_file="${tm_file} rs6000/aix.h rs6000/aix31.h rs6000/xcoff.h"
===================================================================
Index: config/rs6000/eabi.asm
--- config/rs6000/eabi.asm	2001/11/15 05:21:06	1.8
+++ config/rs6000/eabi.asm	2001/11/20 01:18:55
@@ -131,8 +131,7 @@
 FUNC_START(__eabi)
 
 /* Eliminate -mrelocatable code if not -mrelocatable, so that this file can
-   be assembled with other assemblers than GAS, such as the Solaris PowerPC
-   assembler.  */
+   be assembled with other assemblers than GAS.  */
 
 #ifndef _RELOCATABLE
 	addis	10,0,.Linit_p@ha		/* init flag */
===================================================================
Index: config/rs6000/rs6000.c
--- config/rs6000/rs6000.c	2001/11/16 01:06:37	1.236
+++ config/rs6000/rs6000.c	2001/11/20 01:18:57
@@ -1019,7 +1019,7 @@ easy_fp_constant (op, mode)
     return 1;
 
   /* If we are using V.4 style PIC, consider all constants to be hard.  */
-  if (flag_pic && (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS))
+  if (flag_pic && DEFAULT_ABI == ABI_V4)
     return 0;
 
 #ifdef TARGET_RELOCATABLE
@@ -1446,7 +1446,7 @@ input_operand (op, mode)
 
   /* V.4 allows SYMBOL_REFs and CONSTs that are in the small data region
      to be valid.  */
-  if ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+  if (DEFAULT_ABI == ABI_V4
       && (GET_CODE (op) == SYMBOL_REF || GET_CODE (op) == CONST)
       && small_data_operand (op, Pmode))
     return 1;
@@ -1467,7 +1467,7 @@ small_data_operand (op, mode)
   if (rs6000_sdata == SDATA_NONE || rs6000_sdata == SDATA_DATA)
     return 0;
 
-  if (DEFAULT_ABI != ABI_V4 && DEFAULT_ABI != ABI_SOLARIS)
+  if (DEFAULT_ABI != ABI_V4)
     return 0;
 
   if (GET_CODE (op) == SYMBOL_REF)
@@ -1956,7 +1956,7 @@ rs6000_emit_move (dest, source, mode)
       /* Use default pattern for address of ELF small data */
       if (TARGET_ELF
 	  && mode == Pmode
-	  && (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+	  && DEFAULT_ABI == ABI_V4
 	  && (GET_CODE (operands[1]) == SYMBOL_REF 
 	      || GET_CODE (operands[1]) == CONST)
 	  && small_data_operand (operands[1], mode))
@@ -1965,7 +1965,7 @@ rs6000_emit_move (dest, source, mode)
 	  return;
 	}
 
-      if ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+      if (DEFAULT_ABI == ABI_V4
 	  && mode == Pmode && mode == SImode
 	  && flag_pic == 1 && got_operand (operands[1], mode))
 	{
@@ -2229,8 +2229,7 @@ function_arg_boundary (mode, type)
      enum machine_mode mode;
      tree type ATTRIBUTE_UNUSED;
 {
-  if ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
-      && (mode == DImode || mode == DFmode))
+  if (DEFAULT_ABI == ABI_V4 && (mode == DImode || mode == DFmode))
     return 64;
   else if (TARGET_ALTIVEC_ABI && ALTIVEC_VECTOR_MODE (mode))
     return 128;
@@ -2258,7 +2257,7 @@ function_arg_advance (cum, mode, type, n
       else
 	cum->words += RS6000_ARG_SIZE (mode, type);
     }
-  else if (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+  else if (DEFAULT_ABI == ABI_V4)
     {
       if (TARGET_HARD_FLOAT
 	  && (mode == SFmode || mode == DFmode))
@@ -2372,7 +2371,7 @@ function_arg (cum, mode, type, named)
      or compiler generated library calls.  */
   if (mode == VOIDmode)
     {
-      if ((abi == ABI_V4 || abi == ABI_SOLARIS)
+      if (abi == ABI_V4
 	  && TARGET_HARD_FLOAT
 	  && cum->nargs_prototype < 0
 	  && type && (cum->prototype || TARGET_NO_PROTOTYPE))
@@ -2393,7 +2392,7 @@ function_arg (cum, mode, type, named)
       else
 	return NULL;
     }
-  else if (abi == ABI_V4 || abi == ABI_SOLARIS)
+  else if (abi == ABI_V4)
     {
       if (TARGET_HARD_FLOAT
 	  && (mode == SFmode || mode == DFmode))
@@ -2485,7 +2484,7 @@ function_arg_partial_nregs (cum, mode, t
      tree type;
      int named ATTRIBUTE_UNUSED;
 {
-  if (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+  if (DEFAULT_ABI == ABI_V4)
     return 0;
 
   if (USE_FP_FOR_ARG_P (*cum, mode, type)
@@ -2523,7 +2522,7 @@ function_arg_pass_by_reference (cum, mod
      tree type;
      int named ATTRIBUTE_UNUSED;
 {
-  if ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+  if (DEFAULT_ABI == ABI_V4
       && ((type && AGGREGATE_TYPE_P (type))
 	  || mode == TFmode))
     {
@@ -2577,7 +2576,7 @@ setup_incoming_varargs (cum, mode, type,
   if (stdarg_p)
     function_arg_advance (&next_cum, mode, type, 1);
 
-  if (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+  if (DEFAULT_ABI == ABI_V4)
     {
       /* Indicate to allocate space on the stack for varargs save area.  */
       /* ??? Does this really have to be located at a magic spot on the
@@ -2618,7 +2617,7 @@ setup_incoming_varargs (cum, mode, type,
     }
 
   /* Save FP registers if needed.  */
-  if ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+  if (DEFAULT_ABI == ABI_V4
       && TARGET_HARD_FLOAT && ! no_rtl
       && next_cum.fregno <= FP_ARG_V4_MAX_REG)
     {
@@ -2657,7 +2656,7 @@ rs6000_build_va_list ()
 
   /* For AIX, prefer 'char *' because that's what the system
      header files like.  */
-  if (DEFAULT_ABI != ABI_V4 && DEFAULT_ABI != ABI_SOLARIS)
+  if (DEFAULT_ABI != ABI_V4)
     return build_pointer_type (char_type_node);
 
   record = make_lang_type (RECORD_TYPE);
@@ -2703,7 +2702,7 @@ rs6000_va_start (stdarg_p, valist, nexta
   tree gpr, fpr, ovf, sav, t;
 
   /* Only SVR4 needs something special.  */
-  if (DEFAULT_ABI != ABI_V4 && DEFAULT_ABI != ABI_SOLARIS)
+  if (DEFAULT_ABI != ABI_V4)
     {
       std_expand_builtin_va_start (stdarg_p, valist, nextarg);
       return;
@@ -2778,7 +2777,7 @@ rs6000_va_arg (valist, type)
      structures which are the same size as integer types are passed
      right-aligned, as if they were in fact integers.  This only
      matters for structures of size 1 or 2, or 4 when TARGET_64BIT.  */
-  if (DEFAULT_ABI != ABI_V4 && DEFAULT_ABI != ABI_SOLARIS)
+  if (DEFAULT_ABI != ABI_V4)
     {
       HOST_WIDE_INT align, rounded_size;
       enum machine_mode mode;
@@ -4668,12 +4667,6 @@ print_operand (file, x, code)
       asm_fprintf (file, RS6000_CALL_GLUE);
       return;
 
-    case '$':
-      /* Write out either a '.' or '$' for the current location, depending
-	 on whether this is Solaris or not.  */
-      putc ((DEFAULT_ABI == ABI_SOLARIS) ? '.' : '$', file);
-      return;
-
       /* %a is output_address.  */
 
     case 'A':
@@ -5123,13 +5116,7 @@ print_operand (file, x, code)
 	output_operand_lossage ("invalid %%v value");
       else
 	{
-	  int value = (INT_LOWPART (x) >> 16) & 0xffff;
-
-	  /* Solaris assembler doesn't like lis 0,0x8000 */
-	  if (DEFAULT_ABI == ABI_SOLARIS && (value & 0x8000) != 0)
-	    fprintf (file, "%d", value | (~0 << 16));
-	  else
-	    fprintf (file, "0x%x", value);
+	  fprintf (file, "0x%x", (INT_LOWPART (x) >> 16) & 0xffff);
 	  return;
 	}
 
@@ -5268,7 +5255,6 @@ print_operand (file, x, code)
 
 	    case ABI_V4:
 	    case ABI_AIX_NODESC:
-	    case ABI_SOLARIS:
 	    case ABI_DARWIN:
 	      break;
 	    }
@@ -5849,10 +5835,8 @@ first_reg_to_save ()
     if (regs_ever_live[first_reg] 
 	&& (! call_used_regs[first_reg]
 	    || (first_reg == PIC_OFFSET_TABLE_REGNUM
-		&& (((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
-		     && flag_pic == 1)
-		    || (DEFAULT_ABI == ABI_DARWIN
-			&& flag_pic)))))
+		&& ((DEFAULT_ABI == ABI_V4 && flag_pic == 1)
+		    || (DEFAULT_ABI == ABI_DARWIN && flag_pic)))))
       break;
 
   if (profile_flag)
@@ -6029,10 +6013,8 @@ rs6000_stack_info ()
   /* Assume that we will have to save PIC_OFFSET_TABLE_REGNUM, 
      even if it currently looks like we won't.  */
   if (((TARGET_TOC && TARGET_MINIMAL_TOC)
-       || (flag_pic == 1
-	   && (abi == ABI_V4 || abi == ABI_SOLARIS))
-       || (flag_pic &&
-	   abi == ABI_DARWIN))
+       || (flag_pic == 1 && abi == ABI_V4)
+       || (flag_pic && abi == ABI_DARWIN))
       && info_ptr->first_gp_reg_save > PIC_OFFSET_TABLE_REGNUM)
     info_ptr->gp_size = reg_size * (32 - PIC_OFFSET_TABLE_REGNUM);
   else
@@ -6054,7 +6036,6 @@ rs6000_stack_info ()
       || (info_ptr->first_fp_reg_save != 64
 	  && !FP_SAVE_INLINE (info_ptr->first_fp_reg_save))
       || (abi == ABI_V4 && current_function_calls_alloca)
-      || (abi == ABI_SOLARIS && current_function_calls_alloca)
       || (DEFAULT_ABI == ABI_DARWIN
 	  && flag_pic
 	  && current_function_uses_pic_offset_table)
@@ -6070,7 +6051,7 @@ rs6000_stack_info ()
       || regs_ever_live[CR4_REGNO])
     {
       info_ptr->cr_save_p = 1;
-      if (abi == ABI_V4 || abi == ABI_SOLARIS)
+      if (abi == ABI_V4)
 	info_ptr->cr_size = reg_size;
     }
 
@@ -6121,7 +6102,6 @@ rs6000_stack_info ()
       break;
 
     case ABI_V4:
-    case ABI_SOLARIS:
       info_ptr->fp_save_offset   = - info_ptr->fp_size;
       info_ptr->gp_save_offset   = info_ptr->fp_save_offset - info_ptr->gp_size;
       info_ptr->cr_save_offset   = info_ptr->gp_save_offset - info_ptr->cr_size;
@@ -6155,7 +6135,7 @@ rs6000_stack_info ()
   if (info_ptr->calls_p)
     info_ptr->push_p = 1;
 
-  else if (abi == ABI_V4 || abi == ABI_SOLARIS)
+  else if (abi == ABI_V4)
     info_ptr->push_p = (total_raw_size > info_ptr->fixed_size
 			|| info_ptr->calls_p);
 
@@ -6202,11 +6182,10 @@ debug_stack_info (info)
     {
     default:		 abi_string = "Unknown";	break;
     case ABI_NONE:	 abi_string = "NONE";		break;
-    case ABI_AIX:	 abi_string = "AIX";		break;
+    case ABI_AIX:
     case ABI_AIX_NODESC: abi_string = "AIX";		break;
     case ABI_DARWIN:	 abi_string = "Darwin";		break;
     case ABI_V4:	 abi_string = "V.4";		break;
-    case ABI_SOLARIS:	 abi_string = "Solaris";	break;
     }
 
   fprintf (stderr, "\tABI                 = %5s\n", abi_string);
@@ -6362,8 +6341,7 @@ rs6000_emit_load_toc_table (fromprolog)
 
   if (TARGET_ELF && DEFAULT_ABI != ABI_AIX)
     {
-      if ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS) 
-	  && flag_pic == 1)
+      if (DEFAULT_ABI == ABI_V4 && flag_pic == 1)
 	{
 	  rtx temp = (fromprolog 
 		      ? gen_rtx_REG (Pmode, LINK_REGISTER_REGNUM)
@@ -6669,7 +6647,7 @@ rs6000_emit_allocate_stack (size, copy_r
 	}
       else if (GET_CODE (stack_limit_rtx) == SYMBOL_REF
 	       && TARGET_32BIT
-	       && (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS))
+	       && DEFAULT_ABI == ABI_V4)
 	{
 	  rtx toload = gen_rtx_CONST (VOIDmode,
 				      gen_rtx_PLUS (Pmode, 
@@ -6828,7 +6806,7 @@ rs6000_emit_prologue ()
 			|| FP_SAVE_INLINE (info->first_fp_reg_save));
 
   /* For V.4, update stack before we do any saving and set back pointer.  */
-  if (info->push_p && (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS))
+  if (info->push_p && DEFAULT_ABI == ABI_V4)
     {
       if (info->total_size < 32767)
 	sp_offset = info->total_size;
@@ -6946,10 +6924,8 @@ rs6000_emit_prologue ()
 	if ((regs_ever_live[info->first_gp_reg_save+i] 
 	     && ! call_used_regs[info->first_gp_reg_save+i])
 	    || (i+info->first_gp_reg_save == PIC_OFFSET_TABLE_REGNUM
-		&& (((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
-		     && flag_pic == 1)
-		    || (DEFAULT_ABI == ABI_DARWIN
-			&& flag_pic))))
+		&& ((DEFAULT_ABI == ABI_V4 && flag_pic == 1)
+		    || (DEFAULT_ABI == ABI_DARWIN && flag_pic))))
 	  {
 	    rtx addr, reg, mem;
 	    reg = gen_rtx_REG (reg_mode, info->first_gp_reg_save + i);
@@ -7038,7 +7014,7 @@ rs6000_emit_prologue ()
 
   /* Update stack and set back pointer unless this is V.4, 
      for which it was done previously.  */
-  if (info->push_p && DEFAULT_ABI != ABI_V4 && DEFAULT_ABI != ABI_SOLARIS)
+  if (info->push_p && DEFAULT_ABI != ABI_V4)
     rs6000_emit_allocate_stack (info->total_size, FALSE);
 
   /* Set frame pointer, if needed.  */
@@ -7051,8 +7027,8 @@ rs6000_emit_prologue ()
 
   /* If we are using PIC_OFFSET_TABLE_REGNUM, we need to set it up.  */
   if ((TARGET_TOC && TARGET_MINIMAL_TOC && get_pool_size () != 0)
-      || ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS) 
-	  && flag_pic == 1 && regs_ever_live[PIC_OFFSET_TABLE_REGNUM]))
+      || (DEFAULT_ABI == ABI_V4 && flag_pic == 1
+	  && regs_ever_live[PIC_OFFSET_TABLE_REGNUM]))
   {
     /* If emit_load_toc_table will use the link register, we need to save
        it.  We use R11 for this purpose because emit_load_toc_table
@@ -7182,7 +7158,7 @@ rs6000_emit_epilogue (sibcall)
     {
       /* Under V.4, don't reset the stack pointer until after we're done
 	 loading the saved registers.  */
-      if (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+      if (DEFAULT_ABI == ABI_V4)
 	frame_reg_rtx = gen_rtx_REG (Pmode, 11);
 
       emit_move_insn (frame_reg_rtx,
@@ -7191,7 +7167,7 @@ rs6000_emit_epilogue (sibcall)
     }
   else if (info->push_p)
     {
-      if (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+      if (DEFAULT_ABI == ABI_V4)
 	sp_offset = info->total_size;
       else
 	{
@@ -7283,10 +7259,8 @@ rs6000_emit_epilogue (sibcall)
       if ((regs_ever_live[info->first_gp_reg_save+i] 
 	   && ! call_used_regs[info->first_gp_reg_save+i])
 	  || (i+info->first_gp_reg_save == PIC_OFFSET_TABLE_REGNUM
-	      && (((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
-		   && flag_pic == 1)
-		  || (DEFAULT_ABI == ABI_DARWIN
-		      && flag_pic))))
+	      && ((DEFAULT_ABI == ABI_V4 && flag_pic == 1)
+		  || (DEFAULT_ABI == ABI_DARWIN && flag_pic))))
 	{
 	  rtx addr = gen_rtx_PLUS (Pmode, frame_reg_rtx, 
 				   GEN_INT (info->gp_save_offset 
@@ -7374,7 +7348,7 @@ rs6000_emit_epilogue (sibcall)
      (which may not have any obvious dependency on the stack).  This
      doesn't hurt performance, because there is no scheduling that can
      be done after this point.  */
-  if (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+  if (DEFAULT_ABI == ABI_V4)
     {
       if (frame_reg_rtx != sp_reg_rtx)
 	  rs6000_emit_stack_tie ();
@@ -7796,7 +7770,6 @@ output_mi_thunk (file, thunk_fndecl, del
 
     case ABI_V4:
     case ABI_AIX_NODESC:
-    case ABI_SOLARIS:
       prefix = "";
       break;
     }
@@ -7859,7 +7832,6 @@ output_mi_thunk (file, thunk_fndecl, del
 	  break;
 
 	case ABI_AIX_NODESC:
-	case ABI_SOLARIS:
 	case ABI_V4:
 	  fprintf (file, "\tb %s", prefix);
 	  assemble_name (file, fname);
@@ -8521,7 +8493,6 @@ output_function_profiler (file, labelno)
       abort ();
 
     case ABI_V4:
-    case ABI_SOLARIS:
     case ABI_AIX_NODESC:
       fprintf (file, "\tmflr %s\n", reg_names[0]);
       if (flag_pic == 1)
@@ -8716,7 +8687,6 @@ rs6000_trampoline_size ()
       break;
 
     case ABI_V4:
-    case ABI_SOLARIS:
     case ABI_AIX_NODESC:
       ret = (TARGET_32BIT) ? 40 : 48;
       break;
@@ -8764,7 +8734,6 @@ rs6000_initialize_trampoline (addr, fnad
 
     /* Under V.4/eabi, call __trampoline_setup to do the real work.  */
     case ABI_V4:
-    case ABI_SOLARIS:
     case ABI_AIX_NODESC:
       emit_library_call (gen_rtx_SYMBOL_REF (SImode, "__trampoline_setup"),
 			 FALSE, VOIDmode, 4,
@@ -9009,7 +8978,7 @@ rs6000_encode_section_info (decl)
 	}
     }
   else if (rs6000_sdata != SDATA_NONE
-	   && (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+	   && DEFAULT_ABI == ABI_V4
 	   && TREE_CODE (decl) == VAR_DECL)
     {
       int size = int_size_in_bytes (TREE_TYPE (decl));
@@ -9440,9 +9409,6 @@ rs6000_elf_section_type_flags (decl, nam
 
   if (TARGET_RELOCATABLE)
     flags |= SECTION_WRITE;
-
-  /* Solaris doesn't like @nobits, and gas can handle .sbss without it.  */
-  flags &= ~SECTION_BSS;
 
   return flags;
 }
===================================================================
Index: config/rs6000/rs6000.h
--- config/rs6000/rs6000.h	2001/11/17 21:17:53	1.138
+++ config/rs6000/rs6000.h	2001/11/20 01:18:58
@@ -440,7 +440,7 @@ extern struct rs6000_cpu_select rs6000_s
 
 /* Debug support */
 extern const char *rs6000_debug_name;	/* Name for -mdebug-xxxx option */
-extern const char *rs6000_abi_string;	/* for -mabi={sysv,darwin,solaris,eabi,aix,altivec} */
+extern const char *rs6000_abi_string;	/* for -mabi={sysv,darwin,eabi,aix,altivec} */
 extern int rs6000_debug_stack;		/* debug stack applications */
 extern int rs6000_debug_arg;		/* debug argument handling */
 
@@ -915,8 +915,7 @@ extern int rs6000_debug_arg;		/* debug a
   if (TARGET_SOFT_FLOAT)						\
     for (i = 32; i < 64; i++)						\
       fixed_regs[i] = call_used_regs[i] = 1; 				\
-  if ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)		\
-      && flag_pic == 1)							\
+  if (DEFAULT_ABI == ABI_V4 && flag_pic == 1)				\
     fixed_regs[PIC_OFFSET_TABLE_REGNUM]					\
       = call_used_regs[PIC_OFFSET_TABLE_REGNUM] = 1;			\
   if (DEFAULT_ABI == ABI_DARWIN && flag_pic)				\
@@ -1164,7 +1163,7 @@ enum reg_class
    : (C) == 'R' ? LEGITIMATE_CONSTANT_POOL_ADDRESS_P (OP)		\
    : (C) == 'S' ? mask64_operand (OP, VOIDmode)				\
    : (C) == 'T' ? mask_operand (OP, VOIDmode)				\
-   : (C) == 'U' ? ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS) \
+   : (C) == 'U' ? (DEFAULT_ABI == ABI_V4				\
 		   && small_data_operand (OP, GET_MODE (OP)))		\
    : 0)
 
@@ -1237,9 +1236,9 @@ enum reg_class
 enum rs6000_abi {
   ABI_NONE,
   ABI_AIX,			/* IBM's AIX */
-  ABI_AIX_NODESC,		/* AIX calling sequence minus function descriptors */
+  ABI_AIX_NODESC,		/* AIX calling sequence minus
+				   function descriptors */
   ABI_V4,			/* System V.4/eabi */
-  ABI_SOLARIS,			/* Solaris */
   ABI_DARWIN			/* Apple's Darwin (OS X kernel) */
 };
 
@@ -1412,13 +1411,15 @@ typedef struct rs6000_stack {
 /* The definition of this macro implies that there are cases where
    a scalar value cannot be returned in registers.
 
-   For the RS/6000, any structure or union type is returned in memory, except for
-   Solaris, which returns structures <= 8 bytes in registers.  */
+   For the RS/6000, any structure or union type is returned in memory.
+   (FIXME: Except for V.4, where those <= 8 bytes are returned in
+   registers.  Can't change this without breaking compatibility.)  */
 
-#define RETURN_IN_MEMORY(TYPE)						\
-  (TYPE_MODE (TYPE) == BLKmode						\
-   && (DEFAULT_ABI != ABI_SOLARIS || int_size_in_bytes (TYPE) > 8))
+#define RETURN_IN_MEMORY(TYPE) AGGREGATE_TYPE_P (TYPE)
 
+/* Let RETURN_IN_MEMORY control what happens.  */
+#define DEFAULT_PCC_STRUCT_RETURN 0
+
 /* Mode of stack savearea.
    FUNCTION is VOIDmode because calling convention maintains SP.
    BLOCK needs Pmode for SP.
@@ -1704,8 +1705,7 @@ typedef struct rs6000_args
  ((DEFAULT_ABI == ABI_AIX						\
    || DEFAULT_ABI == ABI_DARWIN						\
    || DEFAULT_ABI == ABI_AIX_NODESC)	? (TARGET_32BIT ? 8 : 16) :	\
-  (DEFAULT_ABI == ABI_V4						\
-   || DEFAULT_ABI == ABI_SOLARIS)	? (TARGET_32BIT ? 4 : 8) :	\
+  (DEFAULT_ABI == ABI_V4)		? (TARGET_32BIT ? 4 : 8) :	\
   (internal_error ("RETURN_ADDRESS_OFFSET not supported"), 0))
 
 /* The current return address is in link register (65).  The return address
@@ -1887,7 +1887,7 @@ typedef struct rs6000_args
   && CONSTANT_POOL_EXPR_P (XEXP (X, 1)))
 
 #define LEGITIMATE_SMALL_DATA_P(MODE, X)				\
-  ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)		\
+  (DEFAULT_ABI == ABI_V4						\
    && !flag_pic && !TARGET_TOC						\
    && (GET_CODE (X) == SYMBOL_REF || GET_CODE (X) == CONST)		\
    && small_data_operand (X, MODE))
===================================================================
Index: config/rs6000/rs6000.md
--- config/rs6000/rs6000.md	2001/11/17 01:19:06	1.133
+++ config/rs6000/rs6000.md	2001/11/20 01:18:59
@@ -7385,7 +7385,7 @@
   [(set (match_operand:SI 0 "gpc_reg_operand" "")
 	(unspec:SI [(match_operand:SI 1 "got_operand" "")
 		    (match_dup 2)] 8))]
-  "(DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS) && flag_pic == 1"
+  "DEFAULT_ABI == ABI_V4 && flag_pic == 1"
   "
 {
   if (GET_CODE (operands[1]) == CONST)
@@ -7411,7 +7411,7 @@
   [(set (match_operand:SI 0 "gpc_reg_operand" "=r")
 	(unspec:SI [(match_operand:SI 1 "got_no_const_operand" "")
 		    (match_operand:SI 2 "gpc_reg_operand" "b")] 8))]
-  "(DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS) && flag_pic == 1"
+  "DEFAULT_ABI == ABI_V4 && flag_pic == 1"
   "{l|lwz} %0,%a1@got(%2)"
   [(set_attr "type" "load")])
 
@@ -7421,7 +7421,7 @@
   [(set (match_operand:SI 0 "gpc_reg_operand" "")
 	(unspec:SI [(match_operand:SI 1 "got_no_const_operand" "")
 		    (match_operand:SI 2 "memory_operand" "")] 8))]
-  "(DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)
+  "DEFAULT_ABI == ABI_V4
     && flag_pic == 1
     && (reload_in_progress || reload_completed)"
   [(set (match_dup 0) (match_dup 2))
@@ -9111,8 +9111,7 @@
 (define_insn "load_toc_v4_pic_si"
   [(set (match_operand:SI 0 "register_operand" "=l")
 	(unspec:SI [(const_int 0)] 7))]
-  "(DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS) && flag_pic == 1
-   && TARGET_32BIT"
+  "DEFAULT_ABI == ABI_V4 && flag_pic == 1 && TARGET_32BIT"
   "bl _GLOBAL_OFFSET_TABLE_@local-4"
   [(set_attr "type" "branch")
    (set_attr "length" "4")])
@@ -9165,7 +9164,7 @@
 
 (define_expand "builtin_setjmp_receiver"
   [(use (label_ref (match_operand 0 "" "")))]
-  "((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS) && flag_pic == 1)
+  "(DEFAULT_ABI == ABI_V4 && flag_pic == 1)
    || (TARGET_TOC && TARGET_MINIMAL_TOC)"
   "
 {
@@ -9296,8 +9295,7 @@
 
       if (DEFAULT_ABI == ABI_V4
           || DEFAULT_ABI == ABI_AIX_NODESC
-	  || DEFAULT_ABI == ABI_DARWIN
-	  || DEFAULT_ABI == ABI_SOLARIS)
+	  || DEFAULT_ABI == ABI_DARWIN)
 	operands[0] = force_reg (Pmode, operands[0]);
 
       else if (DEFAULT_ABI == ABI_AIX)
@@ -9345,8 +9343,7 @@
 
       if (DEFAULT_ABI == ABI_V4
 	  || DEFAULT_ABI == ABI_AIX_NODESC
-	  || DEFAULT_ABI == ABI_DARWIN
-	  || DEFAULT_ABI == ABI_SOLARIS)
+	  || DEFAULT_ABI == ABI_DARWIN)
 	operands[0] = force_reg (Pmode, operands[0]);
 
       else if (DEFAULT_ABI == ABI_AIX)
@@ -9578,8 +9575,7 @@
    (clobber (match_scratch:SI 3 "=l,l,l,l"))]
   "DEFAULT_ABI == ABI_AIX_NODESC
    || DEFAULT_ABI == ABI_V4
-   || DEFAULT_ABI == ABI_DARWIN
-   || DEFAULT_ABI == ABI_SOLARIS"
+   || DEFAULT_ABI == ABI_DARWIN"
   "*
 {
   if (INTVAL (operands[2]) & CALL_V4_SET_FP_ARGS)
@@ -9611,8 +9607,7 @@
    (clobber (match_scratch:SI 4 "=l,l,l,l"))]
   "DEFAULT_ABI == ABI_AIX_NODESC
    || DEFAULT_ABI == ABI_V4
-   || DEFAULT_ABI == ABI_DARWIN
-   || DEFAULT_ABI == ABI_SOLARIS"
+   || DEFAULT_ABI == ABI_DARWIN"
   "*
 {
   if (INTVAL (operands[3]) & CALL_V4_SET_FP_ARGS)
@@ -12733,7 +12728,7 @@
   else if (get_attr_length (insn) == 4)
     return \"{bdn|bdnz} %l0\";
   else
-    return \"bdz %$+8\;b %l0\";
+    return \"bdz $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12757,7 +12752,7 @@
   else if (get_attr_length (insn) == 4)
     return \"bdz %l0\";
   else
-    return \"{bdn|bdnz} %$+8\;b %l0\";
+    return \"{bdn|bdnz} $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12781,7 +12776,7 @@
   else if (get_attr_length (insn) == 4)
     return \"{bdn|bdnz} %l0\";
   else
-    return \"bdz %$+8\;b %l0\";
+    return \"bdz $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12805,7 +12800,7 @@
   else if (get_attr_length (insn) == 4)
     return \"bdz %l0\";
   else
-    return \"{bdn|bdnz} %$+8\;b %l0\";
+    return \"{bdn|bdnz} $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12831,7 +12826,7 @@
   else if (get_attr_length (insn) == 4)
     return \"{bdn|bdnz} %l0\";
   else
-    return \"bdz %$+8\;b %l0\";
+    return \"bdz $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12855,7 +12850,7 @@
   else if (get_attr_length (insn) == 4)
     return \"bdz %l0\";
   else
-    return \"{bdn|bdnz} %$+8\;b %l0\";
+    return \"{bdn|bdnz} $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12879,7 +12874,7 @@
   else if (get_attr_length (insn) == 4)
     return \"{bdn|bdnz} %l0\";
   else
-    return \"bdz %$+8\;b %l0\";
+    return \"bdz $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12903,7 +12898,7 @@
   else if (get_attr_length (insn) == 4)
     return \"bdz %l0\";
   else
-    return \"{bdn|bdnz} %$+8\;b %l0\";
+    return \"{bdn|bdnz} $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12929,7 +12924,7 @@
   else if (get_attr_length (insn) == 4)
     return \"bdz %l0\";
   else
-    return \"{bdn|bdnz} %$+8\;b %l0\";
+    return \"{bdn|bdnz} $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12953,7 +12948,7 @@
   else if (get_attr_length (insn) == 4)
     return \"{bdn|bdnz} %l0\";
   else
-    return \"bdz %$+8\;b %l0\";
+    return \"bdz $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -12977,7 +12972,7 @@
   else if (get_attr_length (insn) == 4)
     return \"bdz %l0\";
   else
-    return \"{bdn|bdnz} %$+8\;b %l0\";
+    return \"{bdn|bdnz} $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
@@ -13001,7 +12996,7 @@
   else if (get_attr_length (insn) == 4)
     return \"{bdn|bdnz} %l0\";
   else
-    return \"bdz %$+8\;b %l0\";
+    return \"bdz $+8\;b %l0\";
 }"
   [(set_attr "type" "branch")
    (set_attr "length" "*,12,16")])
===================================================================
Index: config/rs6000/sol-c0.c
--- config/rs6000/sol-c0.c	Mon Nov 19 17:19:03 2001
+++ config/rs6000/sol-c0.c	Tue May  5 13:32:27 1998
@@ -1,123 +0,0 @@
-/* Solaris PowerPC startfile.  */
-/* Copyright (C) 1996, 2000 Free Software Foundation, Inc.
-
-This file is part of GNU CC.
-
-GNU CC 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.
-
-In addition to the permissions in the GNU General Public License, the
-Free Software Foundation gives you unlimited permission to link the
-compiled version of this file into combinations with other programs,
-and to distribute those combinations without any restriction coming
-from the use of this file.  (The General Public License restrictions
-do apply in other respects; for example, they cover modification of
-the file, and distribution when not linked into a combine
-executable.)
-
-GNU CC 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 GNU CC; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
-
-extern char **_environ;
-
-extern int atexit (void (*__func) (void));
-extern void __init (void) __attribute__ ((__longcall__));
-extern void __fini (void) __attribute__ ((__longcall__));
-extern void _start(int argc, char *argv[], char *envp[], void *auxp, 
-		   void (*termfunc)(void));
-extern void exit(int);
-extern int main (int argc, char *argv[], char *envp[], void *auxp);
-
-typedef void (*func_ptr) (void);
-int (*__atexit)(func_ptr) = atexit;
-
-/* Exception handling */
-struct ex_shared1 {
-  void	*prev;
-  void	*next;
-  char	*text_start;
-  char	*range_start;
-  char	*text_end;
-  char	*range_end;
-};
-
-struct ex_shared {
-  void (*ex_register) (struct ex_shared1 *);
-  void (*ex_deregister) (struct ex_shared1 *);
-  struct ex_shared1 shared_info;
-};
-
-extern char _ex_text0[], _ex_text1[];
-extern char _ex_range0[], _ex_range1[];
-extern void _ex_register (struct ex_shared1 *);
-extern void _ex_deregister (struct ex_shared1 *);
-extern char _SDA_BASE_[];
-extern char _SDA2_BASE_[];
-
-struct ex_shared shared __attribute__((section(".ex_shared"))) = {
-  _ex_register,
-  _ex_deregister,
-  {
-    (void *)0,
-    (void *)0,
-    _ex_text0,
-    _ex_range0,
-    _ex_text1,
-    _ex_range1
-  }
-};
-
-static void
-deregister (void)
-{
-  (* shared.ex_deregister) (&shared.shared_info);
-}
-
-/* Start function.  */
-void
-_start(int argc, char *argv[], char *envp[], void *auxp, 
-       void (*termfunc)(void))
-{
-  int ret;
-  int dummy = 0;
-
-#if 0
-  /* Disable this for now, it causes an impossible reload.  */
-  /* Load up r13/r2 before we do anything else.  */
-  __asm__ volatile ("mr %%r13,%0;mr %%r2,%1" : "=r" (dummy) : "r" (&_SDA_BASE_[0]), "r" (&_SDA2_BASE_[0]), "r" (dummy));
-#endif
-
-  _environ = envp + dummy;
-
-  /* Register loader termination function (the || dummy is to make sure the above asm
-     is not optimized away).  */
-  if (termfunc)
-    atexit (termfunc);
-
-  /* Register exception handler if needed */
-  if (shared.ex_register)
-    (* shared.ex_register) (&shared.shared_info);
-
-  if (shared.ex_deregister)
-    atexit (deregister);
-
-  /* Call any global constructors and destructors.  */
-  __init ();
-
-  atexit (__fini);
-
-  /* Call the main program now */
-  ret = main (argc, argv, envp, auxp);
-
-  /* Return to the os */
-  exit (ret);
-}
===================================================================
Index: config/rs6000/sol-ci.asm
--- config/rs6000/sol-ci.asm	1998/12/16 21:12:16	1.2
+++ config/rs6000/sol-ci.asm	2001/11/20 01:18:59
@@ -1,4 +1,4 @@
-# crti.s for solaris
+# crti.s for sysv4
 
 #   Copyright (C) 1996 Free Software Foundation, Inc.
 #   Written By Michael Meissner
@@ -61,12 +61,12 @@ __CTOR_LIST__:
 	.type	__DTOR_LIST__,@object
 __DTOR_LIST__:
 
-# Head of __init function used for static constructors in Solaris
+# Head of _init function used for static constructors
 	.section ".init","ax"
 	.align 2
-	.globl __init
-	.type __init,@function
-__init:	stwu	%r1,-16(%r1)
+	.globl _init
+	.type _init,@function
+_init:	stwu	%r1,-16(%r1)
 	mflr	%r0
 	stw	%r31,12(%r1)
 	stw	%r0,16(%r1)
@@ -82,12 +82,12 @@ __init:	stwu	%r1,-16(%r1)
 #	blrl
 #.Lno_reg:
 
-# Head of __fini function used for static destructors in Solaris
+# Head of _fini function used for static destructors
 	.section ".fini","ax"
 	.align 2
-	.globl __fini
-	.type __fini,@function
-__fini:	stwu	%r1,-16(%r1)
+	.globl _fini
+	.type _fini,@function
+_fini:	stwu	%r1,-16(%r1)
 	mflr	%r0
 	stw	%r31,12(%r1)
 	stw	%r0,16(%r1)
===================================================================
Index: config/rs6000/sol-cn.asm
--- config/rs6000/sol-cn.asm	1998/12/16 21:12:17	1.2
+++ config/rs6000/sol-cn.asm	2001/11/20 01:18:59
@@ -1,4 +1,4 @@
-# crtn.s for solaris
+# crtn.s for sysv4
 
 #   Copyright (C) 1996 Free Software Foundation, Inc.
 #   Written By Michael Meissner
@@ -65,7 +65,7 @@ _ex_text1:
 	.globl	_ex_range1
 _ex_range1:
 
-# Tail of __init used for static constructors in Solaris
+# Tail of _init used for static constructors
 	.section ".init","ax"
 	lwz	%r0,16(%r1)
 	lwz	%r31,12(%r1)
@@ -73,7 +73,7 @@ _ex_range1:
 	addi	%r1,%r1,16
 	blr
 
-# Tail of __fini used for static destructors in Solaris
+# Tail of _fini used for static destructors
 	.section ".fini","ax"
 	lwz	%r0,16(%r1)
 	lwz	%r31,12(%r1)
===================================================================
Index: config/rs6000/sol2.h
--- config/rs6000/sol2.h	Mon Nov 19 17:19:03 2001
+++ config/rs6000/sol2.h	Tue May  5 13:32:27 1998
@@ -1,174 +0,0 @@
-/* Definitions of target machine for GNU compiler,
-   for IBM RS/6000 running AIX version 3.1.
-   Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc.
-   Contributed by David Reese (Dave.Reese@East.Sun.COM)
-
-This file is part of GNU CC.
-
-GNU CC 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.
-
-GNU CC 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 GNU CC; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
-
-/* Default ABI to use */
-#undef	RS6000_ABI_NAME
-#define RS6000_ABI_NAME "solaris"
-
-#undef ASM_CPU_SPEC
-#define ASM_CPU_SPEC "-le -s"
-
-#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (MASK_POWERPC | \
-			MASK_NEW_MNEMONICS | \
-			MASK_LITTLE_ENDIAN | \
-			MASK_REGNAMES)
-
-#undef	LIB_DEFAULT_SPEC
-#define LIB_DEFAULT_SPEC "%(lib_solaris)"
-
-#undef	STARTFILE_DEFAULT_SPEC
-#define STARTFILE_DEFAULT_SPEC "%(startfile_solaris)"
-
-#undef	ENDFILE_DEFAULT_SPEC
-#define ENDFILE_DEFAULT_SPEC "%(endfile_solaris)"
-
-#undef	LINK_START_DEFAULT_SPEC
-#define LINK_START_DEFAULT_SPEC "%(link_start_solaris)"
-
-#undef CPP_SPEC
-#define CPP_SPEC "%{posix: -D_POSIX_SOURCE}\
-%(cpp_sysv) %(cpp_endian) %(cpp_cpu) \
-%{mmvme: %(cpp_os_mvme) } \
-%{msim: %(cpp_os_sim) } \
-%{mcall-linux: %(cpp_os_linux) } \
-%{mcall-solaris: %(cpp_os_solaris) } \
-%{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-solaris: %(cpp_os_default) }}}}"
-
-#undef	CPP_OS_DEFAULT_SPEC
-#define	CPP_OS_DEFAULT_SPEC "%(cpp_os_solaris)"
-
-#undef	LINK_OS_DEFAULT_SPEC
-#define	LINK_OS_DEFAULT_SPEC "%(link_os_solaris)"
-
-#undef	CPP_ENDIAN_LITTLE_SPEC
-#define	CPP_ENDIAN_LITTLE_SPEC CPP_ENDIAN_SOLARIS_SPEC
-
-#define	DEFAULT_PCC_STRUCT_RETURN 0
-
-#undef TARGET_VERSION
-#define TARGET_VERSION fprintf (stderr, " (PowerPC Solaris)");
-
-
-/* Macros to check register numbers against specific register classes.  */
-
-#undef	PREFERRED_DEBUGGING_TYPE
-#define	PREFERRED_DEBUGGING_TYPE DBX_DEBUG
-
-
-#if 0
-#undef	ASM_OUTPUT_ALIGNED_LOCAL
-#define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN)		\
-do {									\
-  fprintf ((FILE), "\t%s\t", ".lcomm");					\
-  assemble_name ((FILE), (NAME));					\
-  fprintf ((FILE), ",%u,%u\n", (SIZE), (ALIGN) / BITS_PER_UNIT);	\
-} while (0)
-#endif
-
-/* Like block addresses, stabs line numbers are relative to the
-   current function.  */
-
-/* use .stabd instead of .stabn */
-
-#define	ASM_STABN_OP	"\t.stabd\t"
-
-#undef  ASM_OUTPUT_SOURCE_LINE
-#define ASM_OUTPUT_SOURCE_LINE(file, line)				\
-do									\
-  {									\
-    static int sym_lineno = 1;						\
-    const char *_p;							\
-    fprintf (file, "\t.stabd 68,0,%d,.LM%d-",				\
-	     line, sym_lineno);						\
-    STRIP_NAME_ENCODING (_p, XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0)); \
-    assemble_name (file, _p);						\
-    fprintf (file, "\n.LM%d:\n", sym_lineno);				\
-    sym_lineno += 1;							\
-  }									\
-while (0)
-
-/* This is how to output an assembler line defining a `double' constant.  */
-
-#undef	ASM_OUTPUT_DOUBLE
-#define ASM_OUTPUT_DOUBLE(FILE, VALUE)					\
-  {									\
-    if (REAL_VALUE_ISINF (VALUE)					\
-        || REAL_VALUE_ISNAN (VALUE)					\
-	|| REAL_VALUE_MINUS_ZERO (VALUE))				\
-      {									\
-	long t[2];							\
-	REAL_VALUE_TO_TARGET_DOUBLE ((VALUE), t);			\
-	fprintf (FILE, "\t.long 0x%lx\n\t.long 0x%lx\n",		\
-		t[0] & 0xffffffff, t[1] & 0xffffffff);			\
-      }									\
-    else								\
-      {									\
-	char str[30];							\
-	REAL_VALUE_TO_DECIMAL (VALUE, "%.20e", str);			\
-	fprintf (FILE, "\t.double %s\n", str);				\
-      }									\
-  }
-
-/* This is how to output an assembler line defining a `float' constant.  */
-
-#undef	ASM_OUTPUT_FLOAT
-#define ASM_OUTPUT_FLOAT(FILE, VALUE)					\
-  {									\
-    if (REAL_VALUE_ISINF (VALUE)					\
-        || REAL_VALUE_ISNAN (VALUE)					\
-	|| REAL_VALUE_MINUS_ZERO (VALUE))				\
-      {									\
-	long t;								\
-	REAL_VALUE_TO_TARGET_SINGLE ((VALUE), t);			\
-	fprintf (FILE, "\t.long 0x%lx\n", t & 0xffffffff);		\
-      }									\
-    else								\
-      {									\
-	char str[30];							\
-	REAL_VALUE_TO_DECIMAL ((VALUE), "%.20e", str);			\
-	fprintf (FILE, "\t.float %s\n", str);				\
-      }									\
-  }
-
-
-/* Sun-ppc assembler does not permit '.' in some symbol names.
-   Use 'name_.labelno' instead.  */
-#undef ASM_FORMAT_PRIVATE_NAME
-#define ASM_FORMAT_PRIVATE_NAME(OUTPUT, NAME, LABELNO)	\
-( (OUTPUT) = (char *) alloca (strlen ((NAME)) + 10),	\
-  sprintf ((OUTPUT), "%s_.%d", (NAME), (LABELNO))) 
-
-
-/* Define this macro as a C expression for the initializer of an
-   array of string to tell the driver program which options are
-   defaults for this target and thus do not need to be handled
-   specially when using `MULTILIB_OPTIONS'.
-
-   Do not define this macro if `MULTILIB_OPTIONS' is not defined in
-   the target makefile fragment or if none of the options listed in
-   `MULTILIB_OPTIONS' are set by default.  *Note Target Fragment::.  */
-
-#undef	MULTILIB_DEFAULTS
-#define	MULTILIB_DEFAULTS { "mlittle", "mcall-solaris" }
-
-#define STDC_0_IN_SYSTEM_HEADERS 1
===================================================================
Index: config/rs6000/sysv4.h
--- config/rs6000/sysv4.h	2001/11/07 20:49:41	1.69
+++ config/rs6000/sysv4.h	2001/11/20 01:18:59
@@ -158,7 +158,6 @@ extern int g_switch_set;		/* Whether -G 
   { "emb",		 0,						\
     N_("Set the PPC_EMB bit in the ELF flags header") },		\
   { "vxworks",		 0, N_("no description yet") },			\
-  { "solaris-cclib",	 0, N_("no description yet") },			\
   { "shlib",		 0, N_("no description yet") },			\
   EXTRA_SUBTARGET_SWITCHES						\
   { "newlib",		 0, N_("no description yet") },
@@ -204,8 +203,6 @@ do {									\
     rs6000_current_abi = ABI_V4;					\
   else if (!strcmp (rs6000_abi_name, "netbsd"))				\
     rs6000_current_abi = ABI_V4;					\
-  else if (!strcmp (rs6000_abi_name, "solaris"))			\
-    rs6000_current_abi = ABI_SOLARIS;					\
   else if (!strcmp (rs6000_abi_name, "i960-old"))			\
     {									\
       rs6000_current_abi = ABI_V4;					\
@@ -234,7 +231,7 @@ do {									\
       else								\
 	error ("Bad value for -msdata=%s", rs6000_sdata_name);		\
     }									\
-  else if (DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_SOLARIS)		\
+  else if (DEFAULT_ABI == ABI_V4)					\
     {									\
       rs6000_sdata = SDATA_DATA;					\
       rs6000_sdata_name = "data";					\
@@ -262,8 +259,7 @@ do {									\
 	     rs6000_sdata_name);					\
     }									\
 									\
-  if (rs6000_sdata != SDATA_NONE && DEFAULT_ABI != ABI_V4		\
-      && DEFAULT_ABI != ABI_SOLARIS)					\
+  if (rs6000_sdata != SDATA_NONE && DEFAULT_ABI != ABI_V4)		\
     {									\
       rs6000_sdata = SDATA_NONE;					\
       error ("-msdata=%s and -mcall-%s are incompatible.",		\
@@ -450,10 +446,8 @@ do {									\
 
 #define	SDATA_SECTION_ASM_OP "\t.section\t\".sdata\",\"aw\""
 #define	SDATA2_SECTION_ASM_OP "\t.section\t\".sdata2\",\"a\""
-#define	SBSS_SECTION_ASM_OP \
-  ((DEFAULT_ABI == ABI_SOLARIS) ? "\t.section\t\".sbss\",\"aw\"" : "\t.section\t\".sbss\",\"aw\",@nobits")
+#define	SBSS_SECTION_ASM_OP "\t.section\t\".sbss\",\"aw\",@nobits"
 
-
 /* Besides the usual ELF sections, we need a toc section.  */
 /* Override elfos.h definition.  */
 #undef	EXTRA_SECTIONS
@@ -749,14 +743,6 @@ extern int rs6000_pic_labelno;
   do { fputs ("\t.globl ", FILE);	\
        assemble_name (FILE, NAME); putc ('\n', FILE);} while (0)
 
-/* This is how to allocate empty space in some section.  Use .space
-   instead of .zero because the Solaris PowerPC assembler doesn't
-   like it, and gas accepts either syntax.  */
-
-/* Override elfos.h definition.  */
-#undef	SKIP_ASM_OP
-#define SKIP_ASM_OP	"\t.space\t"
-
 /* This says how to output assembler code to declare an
    uninitialized internal linkage data object.  Under SVR4,
    the linker seems to want the alignment of data objects
@@ -956,7 +942,6 @@ do {						\
 %{memb} %{!memb: %{msdata: -memb} %{msdata=eabi: -memb}} \
 %{mlittle} %{mlittle-endian} %{mbig} %{mbig-endian} \
 %{!mlittle: %{!mlittle-endian: %{!mbig: %{!mbig-endian: \
-    %{mcall-solaris: -mlittle -msolaris} \
     %{mcall-i960-old: -mlittle} \
     %{mcall-linux: -mbig} \
     %{mcall-netbsd: -mbig} }}}}"
@@ -978,20 +963,17 @@ do {						\
 %{mbig: %(cc1_endian_big)} %{!mbig: %{mbig-endian: %(cc1_endian_big)}} \
 %{!mlittle: %{!mlittle-endian: %{!mbig: %{!mbig-endian: \
     %{mcall-aixdesc: -mbig %(cc1_endian_big) } \
-    %{mcall-solaris: -mlittle %(cc1_endian_little) } \
     %{mcall-i960-old: -mlittle %(cc1_endian_little) } \
     %{mcall-linux: -mbig %(cc1_endian_big) } \
     %{mcall-netbsd: -mbig %(cc1_endian_big) } \
-    %{!mcall-aixdesc: %{!mcall-solaris: %{!mcall-i960-old: %{!mcall-linux: %{!mcall-netbsd: \
+    %{!mcall-aixdesc: %{!mcall-i960-old: %{!mcall-linux: %{!mcall-netbsd: \
 	    %(cc1_endian_default) \
-    }}}}} \
+    }}}} \
 }}}} \
-%{mcall-solaris: -mregnames } \
 %{mno-sdata: -msdata=none } \
 %{meabi: %{!mcall-*: -mcall-sysv }} \
 %{!meabi: %{!mno-eabi: \
     %{mrelocatable: -meabi } \
-    %{mcall-solaris: -mno-eabi } \
     %{mcall-i960-old: -meabi } \
     %{mcall-linux: -mno-eabi } \
     %{mcall-netbsd: -mno-eabi }}} \
@@ -1024,8 +1006,8 @@ do {						\
 %{msim: %(link_start_sim) } \
 %{mcall-linux: %(link_start_linux) } \
 %{mcall-netbsd: %(link_start_netbsd) } \
-%{mcall-solaris: %(link_start_solaris) } \
-%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: %{!mcall-solaris: %(link_start_default) }}}}}}}"
+%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: \
+	%(link_start_default) }}}}}}"
 
 #define LINK_START_DEFAULT_SPEC ""
 
@@ -1069,7 +1051,6 @@ do {						\
 %{mlittle: --oformat elf32-powerpcle } %{mlittle-endian: --oformat elf32-powerpcle } \
 %{!mlittle: %{!mlittle-endian: %{!mbig: %{!mbig-endian: \
     %{mcall-i960-old: --oformat elf32-powerpcle} \
-    %{mcall-solaris: --oformat elf32-powerpcle} \
   }}}}"
 
 /* Any specific OS flags.  */
@@ -1080,8 +1061,8 @@ do {						\
 %{msim: %(link_os_sim) } \
 %{mcall-linux: %(link_os_linux) } \
 %{mcall-netbsd: %(link_os_netbsd) } \
-%{mcall-solaris: %(link_os_solaris) } \
-%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: %{!mcall-solaris: %(link_os_default) }}}}}}}"
+%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: \
+	 %(link_os_default) }}}}}}"
 
 #define LINK_OS_DEFAULT_SPEC ""
 
@@ -1117,21 +1098,18 @@ do {						\
 
 #define CPP_ENDIAN_LITTLE_SPEC "-D_LITTLE_ENDIAN -D__LITTLE_ENDIAN__ -Amachine=littleendian"
 
-#define CPP_ENDIAN_SOLARIS_SPEC "-D__LITTLE_ENDIAN__ -Amachine=littleendian"
-
-/* For solaris, don't define _LITTLE_ENDIAN, it conflicts with a header file.  */
 #define	CPP_ENDIAN_SPEC \
 "%{mlittle: %(cpp_endian_little) } \
 %{mlittle-endian: %(cpp_endian_little) } \
 %{mbig: %(cpp_endian_big) } \
 %{mbig-endian: %(cpp_endian_big) } \
 %{!mlittle: %{!mlittle-endian: %{!mbig: %{!mbig-endian: \
-    %{mcall-solaris: %(cpp_endian_solaris) } \
     %{mcall-linux: %(cpp_endian_big) } \
     %{mcall-netbsd: %(cpp_endian_big) } \
     %{mcall-i960-old: %(cpp_endian_little) } \
     %{mcall-aixdesc:  %(cpp_endian_big) } \
-    %{!mcall-solaris: %{!mcall-linux: %{!mcall-netbsd: %{!mcall-aixdesc: %(cpp_endian_default) }}}}}}}}"
+    %{!mcall-linux: %{!mcall-netbsd: %{!mcall-aixdesc: \
+	%(cpp_endian_default) }}}}}}}"
 
 #define	CPP_ENDIAN_DEFAULT_SPEC "%(cpp_endian_big)"
 
@@ -1144,8 +1122,8 @@ do {						\
 %{msim: %(cpp_os_sim) } \
 %{mcall-linux: %(cpp_os_linux) } \
 %{mcall-netbsd: %(cpp_os_netbsd) } \
-%{mcall-solaris: %(cpp_os_solaris) } \
-%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: %{!mcall-solaris: %(cpp_os_default) }}}}}}}"
+%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: \
+	%(cpp_os_default) }}}}}}"
 
 #define	CPP_OS_DEFAULT_SPEC ""
 
@@ -1158,8 +1136,8 @@ do {						\
 %{msim: %(startfile_sim) } \
 %{mcall-linux: %(startfile_linux) } \
 %{mcall-netbsd: %(startfile_netbsd) } \
-%{mcall-solaris: %(startfile_solaris) } \
-%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: %{!mcall-solaris: %(startfile_default) }}}}}}}"
+%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: \
+	%(startfile_default) }}}}}}"
 
 #define	STARTFILE_DEFAULT_SPEC ""
 
@@ -1172,8 +1150,8 @@ do {						\
 %{msim: %(lib_sim) } \
 %{mcall-linux: %(lib_linux) } \
 %{mcall-netbsd: %(lib_netbsd) } \
-%{mcall-solaris: %(lib_solaris) } \
-%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: %{!mcall-solaris: %(lib_default) }}}}}}}"
+%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: \
+	%(lib_default) }}}}}}"
 
 #define LIB_DEFAULT_SPEC ""
 
@@ -1186,9 +1164,9 @@ do {						\
 %{msim: %(endfile_sim)} \
 %{mcall-linux: %(endfile_linux) } \
 %{mcall-netbsd: %(endfile_netbsd) } \
-%{mcall-solaris: %(endfile_solaris)} \
 %{mvxworks: %(endfile_vxworks) } \
-%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: %{!mcall-netbsd: %{!mcall-solaris: %{!mvxworks: %(endfile_default) }}}}}}}}"
+%{!mads: %{!myellowknife: %{!mmvme: %{!msim: %{!mcall-linux: \
+	%{!mcall-netbsd: %{!mvxworks: %(endfile_default) }}}}}}}"
 
 #define	ENDFILE_DEFAULT_SPEC ""
 
@@ -1307,48 +1285,6 @@ ncrtn.o%s"
 #define CPP_OS_NETBSD_SPEC "\
 -D__powerpc__ -D__NetBSD__ -D__ELF__ -D__KPRINTF_ATTRIBUTE__"
 
-/* Solaris support.  */
-/* For Solaris, Gcc automatically adds in one of the files
-   /usr/ccs/lib/values-Xc.o, /usr/ccs/lib/values-Xa.o, or
-   /usr/ccs/lib/values-Xt.o for each final link step (depending upon the other
-   gcc options selected, such as -traditional and -ansi).  These files each
-   contain one (initialized) copy of a special variable called `_lib_version'.
-   Each one of these files has `_lib_version' initialized to a different (enum)
-   value.  The SVR4 library routines query the value of `_lib_version' at run
-   to decide how they should behave.  Specifically, they decide (based upon the
-   value of `_lib_version') if they will act in a strictly ANSI conforming
-   manner or not.  */
-
-#define LIB_SOLARIS_SPEC "\
-%{mnewlib: --start-group -lsolaris -lc --end-group } \
-%{!mnewlib: \
-    %{ansi:values-Xc.o%s} \
-    %{!ansi: \
-	%{traditional:values-Xt.o%s} \
-	%{!traditional:values-Xa.o%s}} \
-	%{compat-bsd:-lucb -lsocket -lnsl -lelf -laio} \
-    %{solaris-cclib: /opt/SUNWspro/SC4.0/lib/libabi.a} \
-    %{!shared: %{!symbolic: -lc }}}"
-
-#define	STARTFILE_SOLARIS_SPEC "\
-%{!msolaris-cclib: scrti.o%s scrt0.o%s} \
-%{msolaris-cclib: /opt/SUNWspro/SC4.0/lib/crti.o%s /opt/SUNWspro/SC4.0/lib/crt1.o%s} \
-%{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}"
-
-#define	ENDFILE_SOLARIS_SPEC "\
-%{!shared:crtend.o%s} %{shared:crtendS.o%s} \
-%{!msolaris-cclib: scrtn.o%s} \
-%{msolaris-cclib: /opt/SUNWspro/SC4.0/lib/crtn.o%s}"
-
-#define LINK_START_SOLARIS_SPEC ""
-
-#define LINK_OS_SOLARIS_SPEC ""
-
-#define CPP_OS_SOLARIS_SPEC "-D__ppc -D__sun__=1 -D__unix__ -D__svr4__  -D__SVR4__ \
-%{!undef:%{!ansi:%{!std=*:-Dsun=1 -Dunix -DSVR4 -D__EXTENSIONS__} \
-               %{std=gnu*:-Dsun=1 -Dunix -DSVR4 -D__EXTENSIONS__}}} \
--Amachine=prep"
-
 /* VxWorks support.  */
 /* VxWorks does all the library stuff itself.  */
 #define LIB_VXWORKS_SPEC ""
@@ -1403,7 +1339,6 @@ ncrtn.o%s"
   { "lib_sim",			LIB_SIM_SPEC },				\
   { "lib_linux",		LIB_LINUX_SPEC },			\
   { "lib_netbsd",		LIB_NETBSD_SPEC },			\
-  { "lib_solaris",		LIB_SOLARIS_SPEC },			\
   { "lib_vxworks",		LIB_VXWORKS_SPEC },			\
   { "lib_default",		LIB_DEFAULT_SPEC },			\
   { "startfile_ads",		STARTFILE_ADS_SPEC },			\
@@ -1412,7 +1347,6 @@ ncrtn.o%s"
   { "startfile_sim",		STARTFILE_SIM_SPEC },			\
   { "startfile_linux",		STARTFILE_LINUX_SPEC },			\
   { "startfile_netbsd",		STARTFILE_NETBSD_SPEC },		\
-  { "startfile_solaris",	STARTFILE_SOLARIS_SPEC },		\
   { "startfile_vxworks",	STARTFILE_VXWORKS_SPEC },		\
   { "startfile_default",	STARTFILE_DEFAULT_SPEC },		\
   { "endfile_ads",		ENDFILE_ADS_SPEC },			\
@@ -1421,7 +1355,6 @@ ncrtn.o%s"
   { "endfile_sim",		ENDFILE_SIM_SPEC },			\
   { "endfile_linux",		ENDFILE_LINUX_SPEC },			\
   { "endfile_netbsd",		ENDFILE_NETBSD_SPEC },			\
-  { "endfile_solaris",		ENDFILE_SOLARIS_SPEC },			\
   { "endfile_vxworks",		ENDFILE_VXWORKS_SPEC },			\
   { "endfile_default",		ENDFILE_DEFAULT_SPEC },			\
   { "link_path",		LINK_PATH_SPEC },			\
@@ -1434,7 +1367,6 @@ ncrtn.o%s"
   { "link_start_sim",		LINK_START_SIM_SPEC },			\
   { "link_start_linux",		LINK_START_LINUX_SPEC },		\
   { "link_start_netbsd",	LINK_START_NETBSD_SPEC },		\
-  { "link_start_solaris",	LINK_START_SOLARIS_SPEC },		\
   { "link_start_vxworks",	LINK_START_VXWORKS_SPEC },		\
   { "link_start_default",	LINK_START_DEFAULT_SPEC },		\
   { "link_os",			LINK_OS_SPEC },				\
@@ -1444,7 +1376,6 @@ ncrtn.o%s"
   { "link_os_sim",		LINK_OS_SIM_SPEC },			\
   { "link_os_linux",		LINK_OS_LINUX_SPEC },			\
   { "link_os_netbsd",		LINK_OS_NETBSD_SPEC },			\
-  { "link_os_solaris",		LINK_OS_SOLARIS_SPEC },			\
   { "link_os_vxworks",		LINK_OS_VXWORKS_SPEC },			\
   { "link_os_default",		LINK_OS_DEFAULT_SPEC },			\
   { "cc1_endian_big",		CC1_ENDIAN_BIG_SPEC },			\
@@ -1452,7 +1383,6 @@ ncrtn.o%s"
   { "cc1_endian_default",	CC1_ENDIAN_DEFAULT_SPEC },		\
   { "cpp_endian_big",		CPP_ENDIAN_BIG_SPEC },			\
   { "cpp_endian_little",	CPP_ENDIAN_LITTLE_SPEC },		\
-  { "cpp_endian_solaris",	CPP_ENDIAN_SOLARIS_SPEC },		\
   { "cpp_float_default",	CPP_FLOAT_DEFAULT_SPEC },		\
   { "cpp_longdouble_default",	CPP_LONGDOUBLE_DEFAULT_SPEC },		\
   { "cpp_os_ads",		CPP_OS_ADS_SPEC },			\
@@ -1461,7 +1391,6 @@ ncrtn.o%s"
   { "cpp_os_sim",		CPP_OS_SIM_SPEC },			\
   { "cpp_os_linux",		CPP_OS_LINUX_SPEC },			\
   { "cpp_os_netbsd",		CPP_OS_NETBSD_SPEC },			\
-  { "cpp_os_solaris",		CPP_OS_SOLARIS_SPEC },			\
   { "cpp_os_vxworks",		CPP_OS_VXWORKS_SPEC },			\
   { "cpp_os_default",		CPP_OS_DEFAULT_SPEC },
 
===================================================================
Index: config/rs6000/t-ppccomm
--- config/rs6000/t-ppccomm	2001/08/01 19:25:17	1.11
+++ config/rs6000/t-ppccomm	2001/11/20 01:18:59
@@ -40,12 +40,10 @@ INSTALL_LIBGCC = install-multilib
 EXTRA_MULTILIB_PARTS = crtbegin$(objext) crtend$(objext) \
   crtbeginS$(objext) crtendS$(objext) \
   ecrti$(objext) ecrtn$(objext) \
-  scrt0$(objext) scrti$(objext) scrtn$(objext) \
   ncrti$(objext) ncrtn$(objext)
 
-# We build {e,s}crti.o, {e,s}crtn.o, and {s,n}crt0.o which serve to
-# add begin and end labels to all of the special sections used when we
-# link using gcc.
+# We build {e,n}crti.o and {e,n}crtn.o, which serve to add begin and
+# end labels to all of the special sections used when we link using gcc.
 
 # Assemble startup files.
 ecrti.S: $(srcdir)/config/rs6000/eabi-ci.asm
@@ -55,22 +53,11 @@ ecrtn.S: $(srcdir)/config/rs6000/eabi-cn
 	cat $(srcdir)/config/rs6000/eabi-cn.asm >ecrtn.S
 
 ncrti.S: $(srcdir)/config/rs6000/sol-ci.asm
-	sed -e 's/__init/_init/' -e 's/__fini/_fini/' \
-		$(srcdir)/config/rs6000/sol-ci.asm >ncrti.S
+	cat $(srcdir)/config/rs6000/sol-ci.asm >ncrti.S
 
 ncrtn.S: $(srcdir)/config/rs6000/sol-cn.asm
-	sed -e 's/__init/_init/' -e 's/__fini/_fini/' \
-		$(srcdir)/config/rs6000/sol-cn.asm >ncrtn.S
+	cat $(srcdir)/config/rs6000/sol-cn.asm >ncrtn.S
 
-scrti.S: $(srcdir)/config/rs6000/sol-ci.asm
-	cat $(srcdir)/config/rs6000/sol-ci.asm >scrti.S
-
-scrtn.S: $(srcdir)/config/rs6000/sol-cn.asm
-	cat $(srcdir)/config/rs6000/sol-cn.asm >scrtn.S
-
-scrt0.c: $(srcdir)/config/rs6000/sol-c0.c
-	cat $(srcdir)/config/rs6000/sol-c0.c >scrt0.c
-
 # Build multiple copies of ?crt{i,n}.o, one for each target switch.
 $(T)ecrti$(objext): ecrti.S
 	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -c ecrti.S -o $(T)ecrti$(objext)
@@ -83,15 +70,6 @@ $(T)ncrti$(objext): ncrti.S
 
 $(T)ncrtn$(objext): ncrtn.S
 	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -c ncrtn.S -o $(T)ncrtn$(objext)
-
-$(T)scrti$(objext): scrti.S
-	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -c scrti.S -o $(T)scrti$(objext)
-
-$(T)scrtn$(objext): scrtn.S
-	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -c scrtn.S -o $(T)scrtn$(objext)
-
-$(T)scrt0$(objext): scrt0.c
-	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -c scrt0.c -o $(T)scrt0$(objext)
 
 # It is important that crtbegin.o, etc., aren't surprised by stuff in .sdata.
 CRTSTUFF_T_CFLAGS = -msdata=none
===================================================================
Index: config/rs6000/t-ppcos
--- config/rs6000/t-ppcos	2000/04/05 01:22:36	1.3
+++ config/rs6000/t-ppcos	2001/11/20 01:18:59
@@ -1,4 +1,4 @@
-# Multilibs for a powerpc hosted ELF target (linux, SVR4, solaris)
+# Multilibs for a powerpc hosted ELF target (linux, SVR4)
 
 MULTILIB_OPTIONS	= msoft-float
 MULTILIB_DIRNAMES	= nof


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]