annotate src/m/alliant-2800.h @ 61403:008bb0675c5b

(readevalloop): Add args START and END as region in current buffer to read. Callers changed. When specified, narrow to this region only when reading, not during eval. Track next point to read from during eval. Also restore point to "real" buffer position before eval. (Feval_region): Don't save excursion and restriction here, and don't narrow to region. Just pass region to readevalloop. Note: Point is now preserved even when PRINTFLAG is nil.
author Kim F. Storm <storm@cua.dk>
date Fri, 08 Apr 2005 23:33:28 +0000
parents 695cf19ef79e
children 23a17af379b1 375f2633d815
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
523
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1 /* alliant-2800.h - Alliant FX/2800 machine running Concentrix 2800.
44601
4be8406ebef9 Don't define HAVE_ALLOCA, C_ALLOCA and STACK_DIRECTION, now set by autoconf.
Andreas Schwab <schwab@suse.de>
parents: 14186
diff changeset
2 Copyright (C) 1990, 2002 Free Software Foundation, Inc.
523
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
4 This file is part of GNU Emacs.
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
5
3700
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
6 GNU Emacs is free software; you can redistribute it and/or modify
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
7 it under the terms of the GNU General Public License as published by
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
8 the Free Software Foundation; either version 2, or (at your option)
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
9 any later version.
523
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
10
3700
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
11 GNU Emacs is distributed in the hope that it will be useful,
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
14 GNU General Public License for more details.
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
15
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
diff changeset
16 You should have received a copy of the GNU General Public License
d76398601a0b Update GPL references - version 2
Jim Blandy <jimb@redhat.com>
parents: 750
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. */
523
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
20
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
21
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 44601
diff changeset
22 /* The following line tells the configuration script what sort of
523
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
23 operating system this machine is likely to run.
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
24 USUAL-OPSYS="bsd4-3" */
aa0674056f59 Initial revision
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
523
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
31 /* Define NO_ARG_ARRAY if you cannot take the address of the first of a
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
32 * group of arguments and treat it as an array of the arguments. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
33
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
34 #define NO_ARG_ARRAY
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
35
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
36 /* Define WORD_MACHINE if addresses and such have
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
37 * to be corrected before they can be used as byte counts. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
38
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
39 #undef WORD_MACHINE
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
40
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
41 /* Now define a symbol for the cpu type, if your compiler
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
42 does not define it automatically:
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
43 vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
44 are the ones defined so far. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
45
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
46 #define ALLIANT
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
47 #define ALLIANT_2800
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
48 #define sun /* Use X support for Sun keyboard stuff. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
49 #define C_OPTIMIZE_SWITCH -Og /* No concurrent code allowed here. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
50
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
51 /* Use type int rather than a union, to represent Lisp_Object */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
52 /* This is desirable for most machines. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
53
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
54 #define NO_UNION_TYPE
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
55
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
56 /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
10362
f145d62266f6 (VALBITS, GCTYPEBITS): Deleted; default is better.
Karl Heuer <kwzh@gnu.org>
parents: 9095
diff changeset
57 the bit field into an int. In other words, if bit fields
523
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
58 are always unsigned.
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
59
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
60 If you use NO_UNION_TYPE, this flag does not matter. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
61 /* On Alliants, bitfields are unsigned. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
62
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
63 #define EXPLICIT_SIGN_EXTEND
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
64
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
65 /* Concentrix uses a different kernel symbol for load average. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
66
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
67 #undef LDAV_SYMBOL /* Undo definition in s-bsd4-2.h */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
68 #define LDAV_SYMBOL "_Loadavg"
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
69
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
70 /* Data type of load average, as read out of kmem. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
71
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
72 #define LOAD_AVE_TYPE long
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
73
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
74 /* Convert that into an integer that is 100 for a load average of 1.0 */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
75
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
76 #define LOAD_AVE_CVT(x) (x * 100 / LOADAVG_SCALE)
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
77
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
78 /* include <sys/param.h> for the definition of LOADAVG_SCALE, and also
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
79 LOADAVG_SIZE, the number of items in the Loadavg array. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
80
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
81 /* Define CANNOT_DUMP on machines where unexec does not work.
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
82 Then the function dump-emacs will not be defined
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
83 and temacs will do (load "loadup") automatically unless told otherwise. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
84
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
85 /* #define CANNOT_DUMP */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
86 #define UNEXEC unexfx2800.o
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
87 #define LIBS_MACHINE -lalliant
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
88
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
89 /* Define VIRT_ADDR_VARIES if the virtual addresses of
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
90 pure and impure space as loaded can vary, and even their
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
91 relative order cannot be relied on.
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
92
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
93 Otherwise Emacs assumes that text space precedes data space,
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
94 numerically. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
95
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
96 #undef VIRT_ADDR_VARIES
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
97
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
98 /* Define NO_REMAP if memory segmentation makes it not work well
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
99 to change the boundary between the text section and data section
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
100 when Emacs is dumped. If you define this, the preloaded Lisp
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
101 code will not be sharable; but that's better than failing completely. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
102 /* Actually, Alliant CONCENTRIX does paging "right":
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
103 data pages are copy-on-write, which means that the pure data areas
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
104 are shared automatically and remapping is not necessary. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
105
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
106 #define NO_REMAP
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
107
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
108 /* Alliant needs special crt0.o because system version is not reentrant */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
109
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
110 #define START_FILES crt0.o
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
111
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
112 /* Alliant dependent code for dumping executing image.
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
113 See crt0.c code for alliant. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
114
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
115 #define ADJUST_EXEC_HEADER {\
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
116 extern int _curbrk, _setbrk;\
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
117 _setbrk = _curbrk;\
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
118 hdr.a_bss_addr = bss_start;\
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
119 unexec_text_start = hdr.a_text_addr;}
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
120
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
121 /* POSIX Compatibility */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
122 /* Use System V.4 style getdents/readdir <dirent.h> for 2.2 and up. */
aa0674056f59 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
123 #define SYSV_SYSTEM_DIR
8632
a049d06857ec (USE_NONANSI_DEFUN): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3824
diff changeset
124
a049d06857ec (USE_NONANSI_DEFUN): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3824
diff changeset
125 /* Use the K&R version of the DEFUN macro. */
a049d06857ec (USE_NONANSI_DEFUN): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3824
diff changeset
126 #define USE_NONANSI_DEFUN
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
127
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
128 /* arch-tag: 8ba70b15-d082-40f6-931d-14adfd7f9dbd
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
129 (do not change this comment) */