|
|
1.1 root 1: /* Definitions for Intel 386 running system V with gnu tools
2: Copyright (C) 1988 Free Software Foundation, Inc.
3:
4: This file is part of GNU CC.
5:
6: GNU CC is distributed in the hope that it will be useful,
7: but WITHOUT ANY WARRANTY. No author or distributor
8: accepts responsibility to anyone for the consequences of using it
9: or for whether it serves any particular purpose or works at all,
10: unless he says so in writing. Refer to the GNU CC General Public
11: License for full details.
12:
13: Everyone is granted permission to copy, modify and redistribute
14: GNU CC, but only under the conditions described in the
15: GNU CC General Public License. A copy of this license is
16: supposed to have been given to you along with GNU CC so you
17: can know your rights and responsibilities. It should be in a
18: file named COPYING. Among other things, the copyright notice
19: and this notice must be preserved on all copies. */
20:
21:
22: #include "tm-i386.h"
23: /* Use the bsd assembler syntax. */
24: /* we need to do this because gas is really a bsd style assembler,
25: * and so doesn't work well this these att-isms:
26: *
27: * ASM_OUTPUT_SKIP is .set .,.+N, which isn't implemented in gas
28: * ASM_OUTPUT_LOCAL is done with .set .,.+N, but that can't be
29: * used to define bss static space
30: * ASM_OUTPUT_ALIGN's arg is N instead of log(N) for att
31: *
32: * Next is the question of whether to uses underscores. RMS didn't
33: * like this idea at first, but since it is now obvious that we
34: * need this separate tm file for use with gas, at least to get
35: * dbx debugging info, I think we should also switch to underscores.
36: * We can keep tm-i386v for real att style output, and the few
37: * people who want both form will have to compile twice.
38: */
39:
40: #include "tm-bsd386.h"
41:
42: /* these come from tm-bsd386.h, but are specific to sequent */
43: #undef DBX_NO_XREFS
44: #undef DBX_CONTIN_LENGTH
45:
46: /* By default, target has a 80387. */
47:
48: #define TARGET_DEFAULT 1
49:
50: /* Specify predefined symbols in preprocessor. */
51:
52: #define CPP_PREDEFINES "-Dunix -Di386"
53:
54: /* Allow #ident and #sccs in preprocessor. */
55:
56: #define IDENT_DIRECTIVE
57: #define SCCS_DIRECTIVE
58:
59: /* We do not want to output SDB debugging information. */
60:
61: #undef SDB_DEBUGGING_INFO
62:
63: /* We want to output DBX debugging information. */
64:
65: #define DBX_DEBUGGING_INFO
66:
67: /* Implicit library calls should use memcpy, not bcopy, etc. */
68:
69: #define TARGET_MEM_FUNCTIONS
70:
71:
72: /* Machines that use the AT&T assembler syntax
73: also return floating point values in an FP register. */
74: /* Define how to find the value returned by a function.
75: VALTYPE is the data type of the value (as a tree).
76: If the precise function being called is known, FUNC is its FUNCTION_DECL;
77: otherwise, FUNC is 0. */
78:
79: #define VALUE_REGNO(MODE) \
80: (((MODE)==SFmode || (MODE)==DFmode) ? FIRST_FLOAT_REG : 0)
81:
82: /* 1 if N is a possible register number for a function value. */
83:
84: #define FUNCTION_VALUE_REGNO_P(N) ((N) == 0 || (N)== FIRST_FLOAT_REG)
85:
86: #undef ASM_FILE_START
87: #define ASM_FILE_START(FILE) \
88: fprintf (FILE, "\t.file\t\"%s\"\n", dump_base_name);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.