|
|
1.1 root 1: /* Assembler-independent definitions for an Intel 386 running
2: Interactive Unix System V. Specifically, this is for recent versions
3: that support POSIX. */
4:
5: /* Use crt1.o, not crt0.o, as a startup file, and crtn.o as a closing file. */
6: #undef STARTFILE_SPEC
7: #define STARTFILE_SPEC \
8: "%{!shlib:%{posix:%{pg:mcrtp1.o%s}%{!pg:%{p:mcrtp1.o%s}%{!p:crtp1.o%s}}}\
9: %{!posix:%{pg:mcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}\
10: %{p:-L/lib/libp} %{pg:-L/lib/libp}}}\
11: %{shlib:%{posix:crtp1.o%s}%{!posix:crt1.o%s}} crtbegin.o%s"
12:
13: #define ENDFILE_SPEC "crtend.o%s crtn.o%s"
14:
15: /* Library spec */
16: #undef LIB_SPEC
17: #define LIB_SPEC "%{shlib:-lc_s} %{posix:-lcposix} -lc -lg"
18:
19: /* ISC 2.2 uses `char' for `wchar_t'. */
20: #undef WCHAR_TYPE
21: #define WCHAR_TYPE "char"
22:
23: #undef WCHAR_TYPE_SIZE
24: #define WCHAR_TYPE_SIZE BITS_PER_UNIT
25:
26: #if 0
27: /* This is apparently not true: ISC versions up to 3.0, at least, use
28: the standard calling sequence in which the called function pops the
29: extra arg. */
30: /* caller has to pop the extra argument passed to functions that return
31: structures. */
32:
33: #undef RETURN_POPS_ARGS
34: #define RETURN_POPS_ARGS(FUNTYPE,SIZE) \
35: (TREE_CODE (FUNTYPE) == IDENTIFIER_NODE ? 0 \
36: : (TARGET_RTD \
37: && (TYPE_ARG_TYPES (FUNTYPE) == 0 \
38: || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \
39: == void_type_node))) ? (SIZE) \
40: : 0)
41: /* On other 386 systems, the last line looks like this:
42: : (aggregate_value_p (TREE_TYPE (FUNTYPE))) ? GET_MODE_SIZE (Pmode) : 0) */
43: #endif
44:
45: /* Handle #pragma pack and #pragma weak. */
46: #define HANDLE_SYSV_PRAGMA
47:
48: /* By default, target has a 80387, uses IEEE compatible arithmetic,
49: and returns float values in the 387, ie,
50: (TARGET_80387 | TARGET_FLOAT_RETURNS_IN_80387)
51:
52: ISC's software emulation of a 387 fails to handle the `fucomp'
53: opcode. fucomp is only used when generating IEEE compliant code.
54: So don't make TARGET_IEEE_FP default for ISC. */
55:
56: #undef TARGET_DEFAULT
57: #define TARGET_DEFAULT 0201
58:
59: /* The ISC 2.0.2 software FPU emulator apparently can't handle
60: 80-bit XFmode insns, so don't generate them. */
61: #undef LONG_DOUBLE_TYPE_SIZE
62: #define LONG_DOUBLE_TYPE_SIZE 64
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.