head	1.13;
access;
symbols
	gcc-2_8_1-990325:1.13
	gcc-2_8_1-990319:1.13
	gcc-2_8_1-990302:1.13
	gcc_2_8_1-990302:1.13
	gcc_2_8_1-990222:1.13
	gcc-2_8_1-990109:1.13
	gcc-2_8_1-981210:1.13
	gcc-2_8_1-981208:1.13
	gcc-2_8_1-980929:1.13
	gcc_2_8_1-980929:1.13
	gcc-2_8_1-980928:1.13
	gcc-2_8_1-980813:1.13
	gcc-2_8_1-980811:1.13
	gcc-2_8_1-980718:1.13
	gcc-2_8_1-980705:1.13
	gcc-2_8_1-980627:1.13
	gcc-2_8_1-980609:1.13
	gcc-2_8_1-980608:1.13
	gcc-2_8_1-980529:1.13
	gcc-2_8_1-980525:1.13
	gcc-2_8_1-980513:1.13
	gcc-2_8_1-980502:1.13
	gcc-2_8_1-980402:1.13
	gcc-2_8_1-980426:1.13
	gcc-2_8_1-980419:1.13
	gcc-2_8_1-980413:1.13
	gcc-2_8_1-980412:1.13
	gcc-2_8_1-980407:1.13
	gcc-2_8_1-980401:1.13
	gcc_2_8_1-980315:1.13
	gcc-2_8_1-RELEASE:1.13;
locks; strict;
comment	@ * @;


1.13
date	97.11.17.13.49.59;	author kenner;	state Exp;
branches;
next	1.12;

1.12
date	97.03.04.21.43.13;	author coxs;	state Exp;
branches;
next	1.11;

1.11
date	96.12.11.13.58.51;	author kenner;	state Exp;
branches;
next	1.10;

1.10
date	96.09.27.16.01.16;	author coxs;	state Exp;
branches;
next	1.9;

1.9
date	95.05.29.16.39.54;	author kenner;	state Exp;
branches;
next	1.8;

1.8
date	95.02.21.23.09.28;	author kenner;	state Exp;
branches;
next	1.7;

1.7
date	95.01.13.22.54.35;	author kenner;	state Exp;
branches;
next	1.6;

1.6
date	93.10.20.05.09.41;	author rms;	state Exp;
branches;
next	1.5;

1.5
date	93.10.20.05.05.30;	author rms;	state Exp;
branches;
next	1.4;

1.4
date	93.09.22.13.28.01;	author rms;	state Exp;
branches;
next	1.3;

1.3
date	93.05.18.19.26.27;	author rms;	state Exp;
branches;
next	1.2;

1.2
date	92.12.01.08.49.19;	author jrv;	state Exp;
branches;
next	1.1;

1.1
date	92.07.04.16.35.11;	author rms;	state Exp;
branches;
next	;


desc
@/* Assembler-independent definitions for an Intel 386 running
@


1.13
log
@(DWARF2_UNWIND_INFO): Define as 0.
@
text
@/* Assembler-independent definitions for an Intel 386 running
   Interactive Unix System V. Specifically, this is for recent versions
   that support POSIX.  */

/* Use crt1.o, not crt0.o, as a startup file, and crtn.o as a closing file. */
#undef STARTFILE_SPEC
#define STARTFILE_SPEC \
  "%{!shlib:%{posix:%{pg:mcrtp1.o%s}%{!pg:%{p:mcrtp1.o%s}%{!p:crtp1.o%s}}}\
   %{Xp:%{pg:mcrtp1.o%s}%{!pg:%{p:mcrtp1.o%s}%{!p:crtp1.o%s}}}\
   %{!posix:%{!Xp:%{pg:mcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}\
   %{p:-L/lib/libp} %{pg:-L/lib/libp}}}}\
   %{shlib:%{Xp:crtp1.o%s}%{posix:crtp1.o%s}%{!posix:%{!Xp:crt1.o%s}}}\
   crtbegin.o%s"
  
#define ENDFILE_SPEC "crtend.o%s crtn.o%s"

/* Library spec */
#undef LIB_SPEC
#define LIB_SPEC "%{shlib:-lc_s} %{posix:-lcposix} %{Xp:-lcposix} -lc -lg"

#undef CPP_SPEC
#define CPP_SPEC "%(cpp_cpu) %[cpp_cpu] %{posix:-D_POSIX_SOURCE} %{Xp:-D_POSIX_SOURCE}"

/* ISC 2.2 uses `char' for `wchar_t'.  */
#undef WCHAR_TYPE
#define WCHAR_TYPE "char"

#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE BITS_PER_UNIT

#if 0
/* This is apparently not true: ISC versions up to 3.0, at least, use
   the standard calling sequence in which the called function pops the
   extra arg.  */
/* caller has to pop the extra argument passed to functions that return
   structures. */

#undef RETURN_POPS_ARGS
#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE)   \
  ((FUNDECL) && TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0	\
   : (TARGET_RTD						\
      && (TYPE_ARG_TYPES (FUNTYPE) == 0				\
	  || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE)))	\
	      == void_type_node))) ? (SIZE)			\
   : 0)
/* On other 386 systems, the last line looks like this:
   : (aggregate_value_p (TREE_TYPE (FUNTYPE))) ? GET_MODE_SIZE (Pmode) : 0)  */
#endif

/* Handle #pragma pack and #pragma weak.  */
#define HANDLE_SYSV_PRAGMA

/* By default, target has a 80387, uses IEEE compatible arithmetic,
   and returns float values in the 387, ie,
   (TARGET_80387 | TARGET_FLOAT_RETURNS_IN_80387)

   ISC's software emulation of a 387 fails to handle the `fucomp'
   opcode.  fucomp is only used when generating IEEE compliant code.
   So don't make TARGET_IEEE_FP default for ISC. */

#undef TARGET_DEFAULT
#define TARGET_DEFAULT 0201

/* The ISC 2.0.2 software FPU emulator apparently can't handle
   80-bit XFmode insns, so don't generate them.  */
#undef LONG_DOUBLE_TYPE_SIZE
#define LONG_DOUBLE_TYPE_SIZE 64

/* The ISC assembler does not like a .file directive with a name
   longer than 14 characters.  Truncating it will not permit
   debugging to work properly, but at least we won't get an error
   message.  */

#undef ASM_FILE_START
#define ASM_FILE_START(FILE)                     \
  do {                                           \
   char c;                                       \
   int max = 0;                                  \
   char *string = dump_base_name;                \
                                                 \
    fputs ("\t.file\t\"", FILE);				 \
                                                 \
    while ((c = *string++) != 0 && max++ < 14) { \
       if (c == '\"' || c == '\\')               \
         putc ('\\', FILE);                      \
       putc (c, FILE);                           \
    }                                            \
    fputs ("\"\n", FILE);                        \
  } while (0)

/* Work around assembler forward label references generated in exception
   handling code. */
#define DWARF2_UNWIND_INFO 0
@


1.12
log
@Make sure FUNDECL is non-nil before we try to use it.
@
text
@d90 4
@


1.11
log
@(obsolete RETURN_POPS_ARGS): Test first argument for IDENTIFIER_NODE.
@
text
@d40 1
a40 1
  (TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0			\
@


1.10
log
@(CPP_SPEC): Use %[cpp_cpu].
@
text
@d40 1
a40 1
  (TREE_CODE (FUNTYPE) == IDENTIFIER_NODE ? 0			\
@


1.9
log
@({STARTFILE,LIB,CPP}_SPEC): Handle -Xp like -posix.
@
text
@d22 1
a22 1
#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{Xp:-D_POSIX_SOURCE}"
@


1.8
log
@Added arg to RETURN_POPS_ARGS.
@
text
@d9 5
a13 3
   %{!posix:%{pg:mcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}\
   %{p:-L/lib/libp} %{pg:-L/lib/libp}}}\
   %{shlib:%{posix:crtp1.o%s}%{!posix:crt1.o%s}} crtbegin.o%s"
d19 4
a22 1
#define LIB_SPEC "%{shlib:-lc_s} %{posix:-lcposix} -lc -lg"
@


1.7
log
@(ASM_FILE_START): New macro.
@
text
@d34 1
a34 1
#define RETURN_POPS_ARGS(FUNTYPE,SIZE)   \
@


1.6
log
@Fix previous change.
@
text
@d63 22
@


1.5
log
@(LONG_DOUBLE_TYPE_SIZE): Define as 64 bits
due to FP emulator bugs in the target kernel.
@
text
@a58 2
/* Define for XFmode extended real floating point support.
   This will automatically cause REAL_ARITHMETIC to be defined.  */
d62 1
a62 1
#define LONG_DOUBLE_TYPE_SIZE 6
@


1.4
log
@(INIT_CUMULATIVE_ARGS): Pass just the return value type to aggregate_value_p.
@
text
@d58 7
@


1.3
log
@(LIB_SPEC): Handle -posix before -shlib.
@
text
@d42 1
a42 1
   : (aggregate_value_p (FUNTYPE)) ? GET_MODE_SIZE (Pmode) : 0)  */
@


1.2
log
@(TARGET_DEFAULT): New macro - don't make TARGET_IEEE_FP default for ISC.
@
text
@d17 1
a17 1
#define LIB_SPEC "%{posix:-lcposix} %{shlib:-lc_s} -lc -lg"
@


1.1
log
@entered into RCS
@
text
@d47 11
@
