1 /* Definitions for Intel 386 running SunOS 4.0.
2 Copyright (C) 1988, 1995 Free Software Foundation, Inc.
4 This file is part of GNU CC.
6 GNU CC is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
11 GNU CC is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GNU CC; see the file COPYING. If not, write to
18 the Free Software Foundation, 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
22 #include "i386/i386.h"
24 /* Use the Sun assembler syntax. */
26 #include "i386/sun386.h"
28 /* Use crt0.o as a startup file. */
30 #define STARTFILE_SPEC \
31 "%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}"
33 #define LIB_SPEC "%{g:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p} \
35 /* That last item is just to prevent a spurious error. */
39 "%{!nostdlib:%{!r*:%{!e*:-e _start}}} -dc -dp %{static:-Bstatic}"
41 /* Extra switches to give the assembler. */
43 #define ASM_SPEC "%{R} -i386 %{keep-local-as-symbols:-L}"
45 /* Specify predefined symbols in preprocessor. */
47 #define CPP_PREDEFINES "-Dunix -Di386 -Dsun386 -Dsun -Asystem(unix) -Asystem(bsd) -Acpu(i386) -Amachine(i386)"
49 /* Allow #sccs in preprocessor. */
51 #define SCCS_DIRECTIVE
53 /* Output #ident as a .ident. */
55 #define ASM_OUTPUT_IDENT(FILE, NAME) fprintf (FILE, "\t.ident \"%s\"\n", NAME);
57 /* We don't want to output SDB debugging information. */
59 #undef SDB_DEBUGGING_INFO
61 /* We want to output DBX debugging information. */
63 #define DBX_DEBUGGING_INFO
65 /* Implicit library calls should use memcpy, not bcopy, etc. */
67 #define TARGET_MEM_FUNCTIONS
69 /* Force structure alignment to the type used for a bitfield. */
71 #define PCC_BITFIELD_TYPE_MATTERS 1
73 /* This is partly guess. */
75 #undef DBX_REGISTER_NUMBER
76 #define DBX_REGISTER_NUMBER(n) \
77 ((n) == 0 ? 11 : (n) == 1 ? 9 : (n) == 2 ? 10 : (n) == 3 ? 8 \
78 : (n) == 4 ? 5 : (n) == 5 ? 4 : (n) == 6 ? 6 : (n))
80 /* Every debugger symbol must be in the text section.
81 Otherwise the assembler or the linker screws up. */
83 #define DEBUG_SYMS_TEXT