|
|
1.1 root 1: /* Definitions for Intel 386 running Interactive Unix System V.
2: Specifically, this is for recent versions that support POSIX;
3: for version 2.0.2, use configuration option i386-sysv instead. */
4:
5: /* Mostly it's like AT&T Unix System V. */
6:
7: #include "i386v.h"
8:
1.1.1.2 ! root 9: /* Use crt1.o, not crt0.o, as a startup file, and crtn.o as a closing file. */
1.1 root 10: #undef STARTFILE_SPEC
11: #define STARTFILE_SPEC \
1.1.1.2 ! root 12: "%{!shlib:%{posix:%{pg:mcrtp1.o%s}%{!pg:%{p:mcrtp1.o%s}%{!p:crtp1.o%s}}}\
! 13: %{!posix:%{pg:mcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}\
1.1 root 14: %{p:-L/lib/libp} %{pg:-L/lib/libp}}}\
1.1.1.2 ! root 15: %{shlib:%{posix:crtp1.o%s}%{!posix:crt1.o%s}} crtbegin.o%s"
! 16:
! 17: #define ENDFILE_SPEC "crtend.o%s crtn.o%s"
1.1 root 18:
19: /* Library spec */
20: #undef LIB_SPEC
1.1.1.2 ! root 21: #define LIB_SPEC "%{posix:-lcposix} %{shlib:-lc_s} -lc -lg"
1.1 root 22:
1.1.1.2 ! root 23: #if 0
! 24: /* This is apparently not true: ISC versions up to 3.0,at least, use
! 25: the standard calling sequence in which the called function pops the
! 26: extra arg. */
1.1 root 27: /* caller has to pop the extra argument passed to functions that return
28: structures. */
29:
30: #undef RETURN_POPS_ARGS
31: #define RETURN_POPS_ARGS(FUNTYPE,SIZE) \
32: (TREE_CODE (FUNTYPE) == IDENTIFIER_NODE ? 0 \
33: : (TARGET_RTD \
34: && (TYPE_ARG_TYPES (FUNTYPE) == 0 \
35: || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \
36: == void_type_node))) ? (SIZE) \
37: : 0)
38: /* On other 386 systems, the last line looks like this:
39: : (aggregate_value_p (FUNTYPE)) ? GET_MODE_SIZE (Pmode) : 0) */
1.1.1.2 ! root 40: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.