Mercurial > emacs
annotate src/m/intel386.h @ 101387:b19b16732fb0
(mark_stack): Use "flushw" instead of "ta 3" assembly call for
Sparc64.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Fri, 23 Jan 2009 04:38:18 +0000 |
parents | e038c1a8307c |
children | 35885da5174e |
rev | line source |
---|---|
525 | 1 /* Machine description file for intel 386. |
94714
7e5b32f86a4c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
92360
diff
changeset
|
2 Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, |
100951 | 3 2008, 2009 Free Software Foundation, Inc. |
456 | 4 |
5 This file is part of GNU Emacs. | |
6 | |
94714
7e5b32f86a4c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
92360
diff
changeset
|
7 GNU Emacs is free software: you can redistribute it and/or modify |
456 | 8 it under the terms of the GNU General Public License as published by |
94714
7e5b32f86a4c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
92360
diff
changeset
|
9 the Free Software Foundation, either version 3 of the License, or |
7e5b32f86a4c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
92360
diff
changeset
|
10 (at your option) any later version. |
456 | 11 |
12 GNU Emacs 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 | |
94714
7e5b32f86a4c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
92360
diff
changeset
|
18 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ |
456 | 19 |
20 | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48433
diff
changeset
|
21 /* The following line tells the configuration script what sort of |
456 | 22 operating system this machine is likely to run. |
23 USUAL-OPSYS="note" | |
24 | |
25 NOTE-START | |
87595
4c6c79916238
* configure.in: Remove references to unsupported systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
78499
diff
changeset
|
26 Intel 386 (-machine=intel386) |
456 | 27 |
28 The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3, | |
87595
4c6c79916238
* configure.in: Remove references to unsupported systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
78499
diff
changeset
|
29 isc2-2, 386-ix, and linux. |
456 | 30 |
31 18.58 should support a wide variety of operating systems. | |
2922
7fa859245bd4
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
2677
diff
changeset
|
32 Use linux for Linux. |
7fa859245bd4
Some more changes from Michael K. Johnson for Linux.
Jim Blandy <jimb@redhat.com>
parents:
2677
diff
changeset
|
33 It isn't clear what to do on an SCO system. |
456 | 34 |
35 NOTE-END */ | |
36 | |
78499 | 37 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word |
9095
23f72b18b420
(WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents:
8892
diff
changeset
|
38 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
|
39 |
23f72b18b420
(WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents:
8892
diff
changeset
|
40 #undef WORDS_BIG_ENDIAN |
23f72b18b420
(WORDS_BIG_ENDIAN): define or undef appropriately, superseding BIG_ENDIAN.
Karl Heuer <kwzh@gnu.org>
parents:
8892
diff
changeset
|
41 |
456 | 42 /* Define NO_ARG_ARRAY if you cannot take the address of the first of a |
43 * group of arguments and treat it as an array of the arguments. */ | |
44 | |
45 /* #define NO_ARG_ARRAY */ | |
46 | |
47 /* crt0.c, if it is used, should use the i386-bsd style of entry. | |
48 with no extra dummy args. On USG and XENIX, | |
49 NO_REMAP says this isn't used. */ | |
50 | |
51 #define CRT0_DUMMIES bogus_fp, | |
52 | |
96738
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
53 #ifdef SOLARIS2 |
7873
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
54 /* Data type of load average, as read out of kmem. */ |
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
55 #define LOAD_AVE_TYPE long |
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
56 |
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
57 /* Convert that into an integer that is 100 for a load average of 1.0 */ |
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
58 /* This is totally uncalibrated. */ |
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
59 #define LOAD_AVE_CVT(x) ((int) (((double) (x)) * 100.0 / FSCALE)) |
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
60 |
12445
74e5ebf071fb
[SOLARIS] (LIBS_MACHINE): Move this out of the SOLARIS2_4 conditional.
Richard M. Stallman <rms@gnu.org>
parents:
12224
diff
changeset
|
61 /* J.W.Hawtin@lut.ac.uk say Solaris 2.4 as well as Solaris 2.1 on X86 |
17686
a2708b339766
(LIBS_MACHINE): Add -lelf.
Richard M. Stallman <rms@gnu.org>
parents:
16220
diff
changeset
|
62 requires -lkvm as well. |
a2708b339766
(LIBS_MACHINE): Add -lelf.
Richard M. Stallman <rms@gnu.org>
parents:
16220
diff
changeset
|
63 And handa@etl.gov.jp says that -lkvm needs -llelf, at least on 2.5. */ |
a2708b339766
(LIBS_MACHINE): Add -lelf.
Richard M. Stallman <rms@gnu.org>
parents:
16220
diff
changeset
|
64 #define LIBS_MACHINE -lkvm -lelf |
96738
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
65 |
8507
daeb611442e9
(LIBS_MACHINE): If SOLARIS2_4, don't define this.
Richard M. Stallman <rms@gnu.org>
parents:
8452
diff
changeset
|
66 /* configure thinks solaris X86 has gethostname, but it does not work, |
daeb611442e9
(LIBS_MACHINE): If SOLARIS2_4, don't define this.
Richard M. Stallman <rms@gnu.org>
parents:
8452
diff
changeset
|
67 so undefine it. */ |
7873
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
68 #undef HAVE_GETHOSTNAME |
96738
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
69 |
7874 | 70 #else /* not SOLARIS2 */ |
71 #ifdef USG5_4 /* Older USG systems do not support the load average. */ | |
96738
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
72 /* Data type of load average, as read out of kmem. */ |
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
73 |
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
74 #define LOAD_AVE_TYPE long |
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
75 |
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
76 /* Convert that into an integer that is 100 for a load average of 1.0 */ |
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
77 /* This is totally uncalibrated. */ |
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
78 |
ef171d1fe0fc
Undo reactoring from previous change.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96721
diff
changeset
|
79 #define LOAD_AVE_CVT(x) ((int) (((double) (x)) * 100.0 / FSCALE)) |
7874 | 80 #define FSCALE 256.0 |
96836
64fbd5632a28
* m/intel386.h (NO_REMAP): Do no define for USG, not used.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96739
diff
changeset
|
81 #endif /* USG5_4 */ |
7874 | 82 #endif /* not SOLARIS2 */ |
7873
09fd0024f046
Add conditional for SOLARIS2.
Richard M. Stallman <rms@gnu.org>
parents:
3699
diff
changeset
|
83 |
456 | 84 #ifdef USG |
85 #define TEXT_START 0 | |
7930 | 86 #endif /* USG */ |
456 | 87 |
8198
0ddce8628575
[MSDOS]: #define NO_REMAP.
Richard M. Stallman <rms@gnu.org>
parents:
7930
diff
changeset
|
88 #ifdef MSDOS |
0ddce8628575
[MSDOS]: #define NO_REMAP.
Richard M. Stallman <rms@gnu.org>
parents:
7930
diff
changeset
|
89 #define NO_REMAP |
0ddce8628575
[MSDOS]: #define NO_REMAP.
Richard M. Stallman <rms@gnu.org>
parents:
7930
diff
changeset
|
90 #endif |
9819
bb44f0c88ec2
[WINDOWSNT]: (VIRT_ADDR_VARIES, DATA_END, DATA_START, HAVE_ALLOCA): Defined.
Karl Heuer <kwzh@gnu.org>
parents:
9095
diff
changeset
|
91 |
bb44f0c88ec2
[WINDOWSNT]: (VIRT_ADDR_VARIES, DATA_END, DATA_START, HAVE_ALLOCA): Defined.
Karl Heuer <kwzh@gnu.org>
parents:
9095
diff
changeset
|
92 #ifdef WINDOWSNT |
bb44f0c88ec2
[WINDOWSNT]: (VIRT_ADDR_VARIES, DATA_END, DATA_START, HAVE_ALLOCA): Defined.
Karl Heuer <kwzh@gnu.org>
parents:
9095
diff
changeset
|
93 #define VIRT_ADDR_VARIES |
bb44f0c88ec2
[WINDOWSNT]: (VIRT_ADDR_VARIES, DATA_END, DATA_START, HAVE_ALLOCA): Defined.
Karl Heuer <kwzh@gnu.org>
parents:
9095
diff
changeset
|
94 #define DATA_START get_data_start () |
11382
f0d9f468dd05
(NO_ARG_ARRAY) [WINDOWSNT]: Defined.
Karl Heuer <kwzh@gnu.org>
parents:
11121
diff
changeset
|
95 #define NO_ARG_ARRAY |
9819
bb44f0c88ec2
[WINDOWSNT]: (VIRT_ADDR_VARIES, DATA_END, DATA_START, HAVE_ALLOCA): Defined.
Karl Heuer <kwzh@gnu.org>
parents:
9095
diff
changeset
|
96 #endif |
12828
f270ad11be9c
[linux] (ULIMIT_BREAK_VALUE, SEGMENT_MASK): Moved from linux.h.
Richard M. Stallman <rms@gnu.org>
parents:
12548
diff
changeset
|
97 |
96739
77c53729bbb6
* m/m68k.h (linux): Use GNU_LINUX instead.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96738
diff
changeset
|
98 #ifdef GNU_LINUX |
12828
f270ad11be9c
[linux] (ULIMIT_BREAK_VALUE, SEGMENT_MASK): Moved from linux.h.
Richard M. Stallman <rms@gnu.org>
parents:
12548
diff
changeset
|
99 /* libc-linux/sysdeps/linux/i386/ulimit.c says that due to shared library, */ |
f270ad11be9c
[linux] (ULIMIT_BREAK_VALUE, SEGMENT_MASK): Moved from linux.h.
Richard M. Stallman <rms@gnu.org>
parents:
12548
diff
changeset
|
100 /* we cannot get the maximum address for brk */ |
f270ad11be9c
[linux] (ULIMIT_BREAK_VALUE, SEGMENT_MASK): Moved from linux.h.
Richard M. Stallman <rms@gnu.org>
parents:
12548
diff
changeset
|
101 #define ULIMIT_BREAK_VALUE (32*1024*1024) |
f270ad11be9c
[linux] (ULIMIT_BREAK_VALUE, SEGMENT_MASK): Moved from linux.h.
Richard M. Stallman <rms@gnu.org>
parents:
12548
diff
changeset
|
102 |
f270ad11be9c
[linux] (ULIMIT_BREAK_VALUE, SEGMENT_MASK): Moved from linux.h.
Richard M. Stallman <rms@gnu.org>
parents:
12548
diff
changeset
|
103 #define SEGMENT_MASK ((SEGMENT_SIZE)-1) |
f270ad11be9c
[linux] (ULIMIT_BREAK_VALUE, SEGMENT_MASK): Moved from linux.h.
Richard M. Stallman <rms@gnu.org>
parents:
12548
diff
changeset
|
104 #endif |
52401 | 105 |
97266
80acedef7417
cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
97043
diff
changeset
|
106 #if defined (DARWIN_OS) |
80231
f2fca97b0671
[MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79755
diff
changeset
|
107 #ifdef _LP64 |
f2fca97b0671
[MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79755
diff
changeset
|
108 /* For Intel Mac, with CC='gcc -arch x86_64'. */ |
f2fca97b0671
[MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79755
diff
changeset
|
109 #define NO_ARG_ARRAY |
f2fca97b0671
[MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79755
diff
changeset
|
110 #endif |
f2fca97b0671
[MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79755
diff
changeset
|
111 #endif |
f2fca97b0671
[MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79755
diff
changeset
|
112 |
52401 | 113 /* arch-tag: 746338f0-cb7b-4f49-a98c-cb50817cf2ec |
114 (do not change this comment) */ |