OSDN Git Service

* xm-interix.h, xm-lynx.h, alpha/xm-vms.h, convex/xm-convex.h,
[pf3gnuchains/gcc-fork.git] / gcc / config / mips / xm-mips.h
1 /* Configuration for GNU C-compiler for MIPS Rx000 family
2    Copyright (C) 1989, 1990, 1991, 1993, 1997, 2001
3    Free Software Foundation, Inc.
4
5 This file is part of GNU CC.
6
7 GNU CC is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
11
12 GNU CC is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with GNU CC; see the file COPYING.  If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA.  */
21
22
23 /* #defines that need visibility everywhere.  */
24 #define FALSE 0
25 #define TRUE 1
26
27 /* This describes the machine the compiler is hosted on.  */
28 #define HOST_BITS_PER_CHAR 8
29 #define HOST_BITS_PER_SHORT 16
30 #define HOST_BITS_PER_INT 32
31 #define HOST_BITS_PER_LONG 32
32 #define HOST_BITS_PER_LONGLONG 64
33
34 #if !defined(MIPSEL) && !defined(__MIPSEL__)
35 #define HOST_WORDS_BIG_ENDIAN
36 #endif
37
38 /* A code distinguishing the floating point format of the host
39    machine.  There are three defined values: IEEE_FLOAT_FORMAT,
40    VAX_FLOAT_FORMAT, and UNKNOWN_FLOAT_FORMAT.  */
41
42 #define HOST_FLOAT_FORMAT IEEE_FLOAT_FORMAT
43
44 /* target machine dependencies.
45    tm.h is a symbolic link to the actual target specific file.   */
46 #include "tm.h"
47
48 /* Arguments to use with `exit'.  */
49 #define SUCCESS_EXIT_CODE 0
50 #define FATAL_EXIT_CODE 33
51
52 #ifndef __GNUC__
53 /* The MIPS compiler gets it wrong, and treats enumerated bitfields
54    as signed quantities, making it impossible to use an 8-bit enum
55    for compiling GNU C++.  */
56 #define ONLY_INT_FIELDS 1
57 #endif
58
59 #ifndef MIPS_OVERRIDE_ALLOCA
60 #ifndef __GNUC__
61 #define USE_C_ALLOCA
62
63 #ifdef __STDC__
64 extern void * alloca ();
65 #else
66 extern char * alloca ();
67 #endif
68
69 #endif
70 #endif /* not MIPS_OVERRIDE_ALLOCA */