annotate src/m/i860.h @ 16945:d6cd00b2e214

(isnan): Define even if LISP_FLOAT_TYPE is not defined, since fmod might need it. (fmod): Ensure that the magnitude of the result does not exceed that of the divisor, and that the sign of the result does not disagree with that of the dividend. This does not yield a particularly accurate result, but at least it will be in the range promised by fmod.
author Paul Eggert <eggert@twinsun.com>
date Tue, 28 Jan 1997 04:51:45 +0000
parents ee40177f6c68
children 4be8406ebef9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3699
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1 /* machine description file for i860.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2 Copyright (C) 1985, 1986 Free Software Foundation, Inc.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
4 This file is part of GNU Emacs.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
5
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
6 GNU Emacs is free software; you can redistribute it and/or modify
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
7 it under the terms of the GNU General Public License as published by
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
8 the Free Software Foundation; either version 2, or (at your option)
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
9 any later version.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
10
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
11 GNU Emacs is distributed in the hope that it will be useful,
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
14 GNU General Public License for more details.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
15
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
16 You should have received a copy of the GNU General Public License
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
17 along with GNU Emacs; see the file COPYING. If not, write to
14186
ee40177f6c68 Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents: 13374
diff changeset
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
ee40177f6c68 Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents: 13374
diff changeset
19 Boston, MA 02111-1307, USA. */
3699
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
20
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
21
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
22 /* The following line tells the configuration script what sort of
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
23 operating system this machine is likely to run.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
24 USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
25
9095
23f72b18b420 (WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents: 8892
diff changeset
26 /* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
23f72b18b420 (WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents: 8892
diff changeset
27 is the most significant byte. */
23f72b18b420 (WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents: 8892
diff changeset
28
23f72b18b420 (WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents: 8892
diff changeset
29 #undef WORDS_BIG_ENDIAN
23f72b18b420 (WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents: 8892
diff changeset
30
3699
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
31 /* Define NO_ARG_ARRAY if you cannot take the address of the first of a
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
32 * group of arguments and treat it as an array of the arguments. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
33
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
34 #define NO_ARG_ARRAY
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
35
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
36 /* Define WORD_MACHINE if addresses and such have
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
37 * to be corrected before they can be used as byte counts. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
38
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
39 /* #define WORD_MACHINE */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
40
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
41 /* Now define a symbol for the cpu type, if your compiler
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
42 does not define it automatically:
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
43 Ones defined so far include vax, m68000, ns16000, pyramid,
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
44 orion, tahoe, APOLLO and many others */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
45
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
46 #define INTEL860
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
47
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
48 /* Use type int rather than a union, to represent Lisp_Object */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
49 /* This is desirable for most machines. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
50
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
51 #define NO_UNION_TYPE
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
52
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
53 /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
54 the 24-bit bit field into an int. In other words, if bit fields
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
55 are always unsigned.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
56
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
57 If you use NO_UNION_TYPE, this flag does not matter. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
58
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
59 #define EXPLICIT_SIGN_EXTEND
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
60
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
61 /* Data type of load average, as read out of kmem. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
62
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
63 #define LOAD_AVE_TYPE long
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
64
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
65 /* Convert that into an integer that is 100 for a load average of 1.0 */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
66
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
67 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
68
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
69 /* Define CANNOT_DUMP on machines where unexec does not work.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
70 Then the function dump-emacs will not be defined
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
71 and temacs will do (load "loadup") automatically unless told otherwise. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
72
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
73 /* #define CANNOT_DUMP */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
74
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
75 /* Define VIRT_ADDR_VARIES if the virtual addresses of
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
76 pure and impure space as loaded can vary, and even their
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
77 relative order cannot be relied on.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
78
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
79 Otherwise Emacs assumes that text space precedes data space,
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
80 numerically. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
81
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
82 /* #define VIRT_ADDR_VARIES */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
83
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
84 /* Define C_ALLOCA if this machine does not support a true alloca
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
85 and the one written in C should be used instead.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
86 Define HAVE_ALLOCA to say that the system provides a properly
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
87 working alloca function and it should be used.
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
88 Define neither one if an assembler-language alloca
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
89 in the file alloca.s should be used. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
90
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
91 #define C_ALLOCA
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
92 /* #define HAVE_ALLOCA */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
93
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
94 /* Define NO_REMAP if memory segmentation makes it not work well
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
95 to change the boundary between the text section and data section
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
96 when Emacs is dumped. If you define this, the preloaded Lisp
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
97 code will not be sharable; but that's better than failing completely. */
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
98
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
99 #define NO_REMAP
8495
27305753852c [USG5_4] (SVR4): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
100
27305753852c [USG5_4] (SVR4): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
101 /* The X11 include files for i860-sysv4 need the macro SVR4 defined.
27305753852c [USG5_4] (SVR4): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
102 --Kaveh Ghazi (ghazi@noc.rutgers.edu) 8/9/94. */
27305753852c [USG5_4] (SVR4): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
103 #ifdef USG5_4
27305753852c [USG5_4] (SVR4): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
104 #ifndef SVR4
27305753852c [USG5_4] (SVR4): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
105 #define SVR4
27305753852c [USG5_4] (SVR4): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
106 #endif
27305753852c [USG5_4] (SVR4): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
107 #endif