aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1992-07-04 16:35:11 +0000
committerRichard Stallman <rms@gnu.org>1992-07-04 16:35:11 +0000
commit2416cbcd8b559c89ce1a664a14583b8006b58347 (patch)
treec111a81303ebeb69da18fec865b2858c0862edd7 /gcc
parent1b53b61af0a93c6623526d73aefa74214cdb6cf7 (diff)
downloadgcc-2416cbcd8b559c89ce1a664a14583b8006b58347.zip
gcc-2416cbcd8b559c89ce1a664a14583b8006b58347.tar.gz
gcc-2416cbcd8b559c89ce1a664a14583b8006b58347.tar.bz2
entered into RCS
From-SVN: r1422
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/i386/isc.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/gcc/config/i386/isc.h b/gcc/config/i386/isc.h
new file mode 100644
index 0000000..f88c693
--- /dev/null
+++ b/gcc/config/i386/isc.h
@@ -0,0 +1,46 @@
+/* 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}}}\
+ %{!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"
+
+#define ENDFILE_SPEC "crtend.o%s crtn.o%s"
+
+/* Library spec */
+#undef LIB_SPEC
+#define LIB_SPEC "%{posix:-lcposix} %{shlib:-lc_s} -lc -lg"
+
+/* 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(FUNTYPE,SIZE) \
+ (TREE_CODE (FUNTYPE) == 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 (FUNTYPE)) ? GET_MODE_SIZE (Pmode) : 0) */
+#endif
+
+/* Handle #pragma pack and #pragma weak. */
+#define HANDLE_SYSV_PRAGMA