OSDN Git Service

71af928f3b69df82ff43c716bf1d83f30e6c383f
[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 /* This describes the machine the compiler is hosted on.  */
23 #define HOST_BITS_PER_CHAR 8
24 #define HOST_BITS_PER_SHORT 16
25 #define HOST_BITS_PER_INT 32
26 #define HOST_BITS_PER_LONG 32
27 #define HOST_BITS_PER_LONGLONG 64
28
29 #if !defined(MIPSEL) && !defined(__MIPSEL__)
30 #define HOST_WORDS_BIG_ENDIAN
31 #endif
32
33 /* A code distinguishing the floating point format of the host
34    machine.  There are three defined values: IEEE_FLOAT_FORMAT,
35    VAX_FLOAT_FORMAT, and UNKNOWN_FLOAT_FORMAT.  */
36
37 #define HOST_FLOAT_FORMAT IEEE_FLOAT_FORMAT
38
39 #ifndef __GNUC__
40 /* The MIPS compiler gets it wrong, and treats enumerated bitfields
41    as signed quantities, making it impossible to use an 8-bit enum
42    for compiling GNU C++.  */
43 #define ONLY_INT_FIELDS 1
44 #endif
45
46 #ifndef MIPS_OVERRIDE_ALLOCA
47 #ifndef __GNUC__
48 #define USE_C_ALLOCA
49
50 #ifdef __STDC__
51 extern void * alloca ();
52 #else
53 extern char * alloca ();
54 #endif
55
56 #endif
57 #endif /* not MIPS_OVERRIDE_ALLOCA */