|
|
1.1 root 1: /* tm-next.h: Definitions for Next as target machine for GNU C compiler. */
2:
3: #include "tm-m68k.h"
4:
5: /* See tm-m68k.h. 7 means 68020/030 with 68881/882. */
6:
7: #define TARGET_DEFAULT 7
8:
9: /* These compiler options take an argument. */
10:
11: #define WORD_SWITCH_TAKES_ARG(STR) \
12: (!strcmp (STR, "Ttext") || !strcmp (STR, "Tdata"))
13:
14: /* Names to predefine in the preprocessor for this target machine. */
15:
16: #define CPP_PREDEFINES "-Dmc68000 -DNeXT -Dunix -D__MACH__"
17:
18: /* Machine dependent ccp options. */
19:
20: #define CPP_SPEC "%{bsd:-D__STRICT_BSD__}"
21:
22: /* Machine dependent ld options. */
23:
24: #define LINK_SPEC "${Z} %{M} %{Mach} %{segcreate*} %{seglinkedit}"
25:
26: /* Machine dependent libraries. */
27:
28: #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lsys_p}%{pg:-lsys_p}"
29:
30: /* We specify crt0.o as -lcrt0.o so that ld will search the library path. */
31: #define STARTFILE_SPEC \
32: "%{pg:-lgcrt0.o}%{!pg:%{p:-lmcrt0.o}%{!p:-lcrt0.o}}"
33:
34: /* Every structure or union's size must be a multiple of 2 bytes. */
35:
36: #define STRUCTURE_SIZE_BOUNDARY 16
37:
38: /* We want C++ style comments to be supported for Objective-C */
39:
40: #define CPLUSPLUS
41:
42: /* Why not? */
43:
44: #define DOLLARS_IN_IDENTIFIERS 1
45:
46: #if 0 /* These pertain to code changes that are not present in 1.36. */
47:
48: /* Allow Mach -MD and -MMD make depend switches. */
49:
50: #define MACH_MAKE_DEPEND
51:
52: /* These options take an argument. Note that we don't support -Ttext or -Tdata. */
53:
54: #define WORD_SWITCH_TAKES_ARG(STR) (!strcmp (STR, "MD") || !strcmp (STR,
55: "MMD"))
56:
57: #endif /* 0 */
58:
59: /* Allow #sscs (but don't do anything). */
60:
61: #define SCCS_DIRECTIVE
62:
63: /* We use Dbx symbol format. */
64:
65: #define DBX_DEBUGGING_INFO
66:
67: /* This is how to output an assembler line defining a `double' constant. */
68:
69: #undef ASM_OUTPUT_DOUBLE
70: #define ASM_OUTPUT_DOUBLE(FILE,VALUE) \
71: (isinf ((VALUE)) \
72: ? fprintf (FILE, "\t.double 0r%s99e999\n", ((VALUE) > 0 ? "" : "-")) \
73: : fprintf (FILE, "\t.double 0r%.20e\n", (VALUE)))
74:
75: /* This is how to output an assembler line defining a `float' constant. */
76:
77: #undef ASM_OUTPUT_FLOAT
78: #define ASM_OUTPUT_FLOAT(FILE,VALUE) \
79: (isinf ((VALUE)) \
80: ? fprintf (FILE, "\t.single 0r%s99e999\n", ((VALUE) > 0 ? "" : "-")) \
81: : fprintf (FILE, "\t.single 0r%.20e\n", (VALUE)))
82:
83: #undef ASM_OUTPUT_FLOAT_OPERAND
84: #define ASM_OUTPUT_FLOAT_OPERAND(FILE,VALUE) \
85: (isinf ((VALUE)) \
86: ? fprintf (FILE, "#0r%s99e999", ((VALUE) > 0 ? "" : "-")) \
87: : fprintf (FILE, "#0r%.9g", (VALUE)))
88:
89: #undef ASM_OUTPUT_DOUBLE_OPERAND
90: #define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE) \
91: (isinf ((VALUE)) \
92: ? fprintf (FILE, "#0r%s99e999", ((VALUE) > 0 ? "" : "-")) \
93: : fprintf (FILE, "#0r%.20g", (VALUE)))
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.