Initial revision
[bpt/emacs.git] / src / m / celerity.h
1 /* machine description file for Celerity.
2 Copyright (C) 1985, 1986 Free Software Foundation, Inc.
3
4 This file is part of GNU Emacs.
5
6 GNU Emacs 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 1, or (at your option)
9 any later version.
10
11 GNU Emacs 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.
15
16 You should have received a copy of the GNU General Public License
17 along with GNU Emacs; see the file COPYING. If not, write to
18 the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
19
20
21 /* The following line tells the configuration script what sort of
22 operating system this machine is likely to run.
23 USUAL-OPSYS="bsd4-2" */
24
25 /* The following three symbols give information on
26 the size of various data types. */
27
28 #define SHORTBITS 16 /* Number of bits in a short */
29
30 #define INTBITS 32 /* Number of bits in an int */
31
32 #define LONGBITS 32 /* Number of bits in a long */
33
34 /* Define BIG_ENDIAN iff lowest-numbered byte in a word
35 is the most significant byte. */
36
37 #define BIG_ENDIAN
38
39 /* XINT must explicitly sign extend */
40
41 #define EXPLICIT_SIGN_EXTEND
42
43 /* Define how to take a char and sign-extend into an int.
44 On machines where char is signed, this is a no-op. */
45
46 #define SIGN_EXTEND_CHAR(c) (c)
47
48 /* celerity preprocessor defines "accel", however the following is clearer */
49 #define celerity
50
51 /* #define NO_UNION_TYPE would be preferable,
52 but it does not work, and the reason is not yet known. */
53
54 #define NO_UNION_TYPE
55
56 /* Data type of load average, as read out of kmem. */
57
58 #define LOAD_AVE_TYPE double
59
60 /* Convert that into an integer that is 100 for a load average of 1.0 */
61
62 #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0))
63
64 /* A machine-specific loader switch is needed. */
65
66 #define LD_SWITCH_MACHINE -k100000
67
68 /* alloca is provided by the system. */
69
70 #define HAVE_ALLOCA
71
72 /* (short) negative-int doesn't sign-extend correctly */
73 #define SHORT_CAST_BUG