annotate src/m/arm.h @ 771:943eaba38521

[xemacs-hg @ 2002-03-13 08:51:24 by ben] The big ben-mule-21-5 check-in! Various files were added and deleted. See CHANGES-ben-mule. There are still some test suite failures. No crashes, though. Many of the failures have to do with problems in the test suite itself rather than in the actual code. I'll be addressing these in the next day or so -- none of the test suite failures are at all critical. Meanwhile I'll be trying to address the biggest issues -- i.e. build or run failures, which will almost certainly happen on various platforms. All comments should be sent to ben@xemacs.org -- use a Cc: if necessary when sending to mailing lists. There will be pre- and post- tags, something like pre-ben-mule-21-5-merge-in, and post-ben-mule-21-5-merge-in.
author ben
date Wed, 13 Mar 2002 08:54:06 +0000
parents abe6d1db359e
children 4542b72c005e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
321
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
1 /* Machine description file for digital/intel arm/strongarm
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
2 Copyright (C) 1987 Free Software Foundation, Inc.
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
3
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
4 This file is part of GNU Emacs.
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
5
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
6 GNU Emacs is free software; you can redistribute it and/or modify
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
7 it under the terms of the GNU General Public License as published by
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
8 the Free Software Foundation; either version 2, or (at your option)
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
9 any later version.
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
10
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
11 GNU Emacs is distributed in the hope that it will be useful,
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
14 GNU General Public License for more details.
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
15
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
16 You should have received a copy of the GNU General Public License
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
17 along with XEmacs; see the file COPYING. If not, write to
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
19 Boston, MA 02111-1307, USA. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
20
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
21 /* Synched up with: FSF 19.31. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
22
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
23 /* Now define a symbol for the cpu type, if your compiler
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
24 does not define it automatically:
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
25 Ones defined so far include vax, m68000, ns16000, pyramid,
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
26 orion, tahoe, APOLLO and many others */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
27
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
28 #ifndef arm
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
29 #define arm
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
30 #endif
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
31
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
32 /* crt0.c, if it is used, should use the i386-bsd style of entry.
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
33 with no extra dummy args. On USG and XENIX,
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
34 NO_REMAP says this isn't used. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
35
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
36 /* Mly 16-Jan-96 16:38:32: this is part of a prototype -- same bug present in
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
37 other m*.h files */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
38 #define CRT0_DUMMIES int bogus_fp,
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
39
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
40 /* crt0.c should define a symbol `start' and do .globl with a dot. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
41
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
42 #define DOT_GLOBAL_START
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
43
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
44 #ifdef USG5_4 /* Older USG systems do not support the load average. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
45 /* Data type of load average, as read out of kmem. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
46
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
47 #define LOAD_AVE_TYPE long
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
48
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
49 /* Convert that into an integer that is 100 for a load average of 1.0 */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
50 /* This is totally uncalibrated. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
51
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
52
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
53 /* FSHIFT and FSCALE are defined in param.h, but are required by
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
54 LOAD_AVE_CVT, so they need to be defined here. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
55
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
56 #ifndef FSHIFT
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
57 #define FSHIFT 8 /* bits to right of fixed binary point */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
58 #endif
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
59
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
60 #ifndef FSCALE
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
61 #define FSCALE (1<<FSHIFT)
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
62 #endif
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
63
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
64 #define LOAD_AVE_CVT(x) ((int) (((double) (x)) * 100.0 / FSCALE))
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
65 #endif
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
66
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
67
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
68 /* Define CANNOT_DUMP on machines where unexec does not work.
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
69 Then the function dump-emacs will not be defined
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
70 and temacs will do (load "loadup") automatically unless told otherwise. */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
71
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
72 #undef CANNOT_DUMP
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
73
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
74 /* this brings in alloca() if we're using cc */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
75 #ifdef USG
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
76 #define NO_REMAP
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
77 #define TEXT_START 0
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
78 #endif /* USG */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
79
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 321
diff changeset
80 #ifdef WIN32_NATIVE
321
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
81 #define DATA_START get_data_start ()
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
82 #endif
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
83
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
84 #ifdef linux
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
85 /* libc-linux/sysdeps/linux/i386/ulimit.c says that due to shared library, */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
86 /* we cannot get the maximum address for brk */
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
87 #define ULIMIT_BREAK_VALUE (32*1024*1024)
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
88
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
89 #define SEGMENT_MASK ((SEGMENT_SIZE)-1)
19dcec799385 Import from CVS: tag r21-0-58
cvs
parents:
diff changeset
90 #endif