comparison src/m/hp800.h @ 41942:c22a32af6f1c

Split the __hpux conditional into the parts that are right for GNU/Linux too and the parts that are not. Use the former if GNU_LINUX. (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
author Richard M. Stallman <rms@gnu.org>
date Tue, 11 Dec 2001 06:34:37 +0000
parents ee40177f6c68
children 4be8406ebef9
comparison
equal deleted inserted replaced
41941:c53c9038c6e2 41942:c22a32af6f1c
83 #define bcopy(a,b,s) memcpy (b,a,s) 83 #define bcopy(a,b,s) memcpy (b,a,s)
84 #define bzero(a,s) memset (a,0,s) 84 #define bzero(a,s) memset (a,0,s)
85 #define bcmp memcmp 85 #define bcmp memcmp
86 #endif 86 #endif
87 87
88 #ifdef __hpux 88 /* Common definitions for HPUX and GNU/Linux. */
89
90 #if defined (__hpux) || defined (GNU_LINUX)
89 /* Now define a symbol for the cpu type, if your compiler 91 /* Now define a symbol for the cpu type, if your compiler
90 does not define it automatically: 92 does not define it automatically:
91 Ones defined so far include vax, m68000, ns16000, pyramid, 93 Ones defined so far include vax, m68000, ns16000, pyramid,
92 orion, tahoe, APOLLO and many others */ 94 orion, tahoe, APOLLO and many others */
93 #ifndef hp9000s800 95 #ifndef hp9000s800
94 # define hp9000s800 96 # define hp9000s800
95 #endif 97 #endif
96 98
97 /* Data type of load average, as read out of kmem. */
98
99 #define LOAD_AVE_TYPE double
100
101 /* Convert that into an integer that is 100 for a load average of 1.0 */
102
103 #define LOAD_AVE_CVT(x) ((int) (x * 100.0))
104
105
106 /* Define CANNOT_DUMP on machines where unexec does not work. 99 /* Define CANNOT_DUMP on machines where unexec does not work.
107 Then the function dump-emacs will not be defined 100 Then the function dump-emacs will not be defined
108 and temacs will do (load "loadup") automatically unless told otherwise. */ 101 and temacs will do (load "loadup") automatically unless told otherwise. */
109 102
110 #undef CANNOT_DUMP 103 #undef CANNOT_DUMP
104
105 #define STACK_DIRECTION 1
106
107 /* Define NO_REMAP if memory segmentation makes it not work well
108 to change the boundary between the text section and data section
109 when Emacs is dumped. If you define this, the preloaded Lisp
110 code will not be sharable; but that's better than failing completely. */
111
112 #define NO_REMAP
113
114 #endif /* __hpux or GNU_LINUX */
115
116 /* Stuff for just GNU/Linux. */
117
118 #ifdef GNU_LINUX
119
120 #define HAVE_ALLOCA
121
122 /* Data type of load average, as read out of kmem. */
123
124 #define LOAD_AVE_TYPE long
125
126 /* Convert that into an integer that is 100 for a load average of 1.0 */
127
128 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
129
130 #endif /* GNU_LINUX */
131
132 /* Stuff for just HPUX. */
133
134 #ifdef __hpux
111 135
112 /* Define VIRT_ADDR_VARIES if the virtual addresses of 136 /* Define VIRT_ADDR_VARIES if the virtual addresses of
113 pure and impure space as loaded can vary, and even their 137 pure and impure space as loaded can vary, and even their
114 relative order cannot be relied on. 138 relative order cannot be relied on.
115 139
133 #define DATA_SEG_BITS 0x40000000 157 #define DATA_SEG_BITS 0x40000000
134 158
135 #define DATA_START 0x40000000 159 #define DATA_START 0x40000000
136 #define TEXT_START 0x00000000 160 #define TEXT_START 0x00000000
137 161
138 #define STACK_DIRECTION 1
139
140 /* Define NO_REMAP if memory segmentation makes it not work well
141 to change the boundary between the text section and data section
142 when Emacs is dumped. If you define this, the preloaded Lisp
143 code will not be sharable; but that's better than failing completely. */
144
145 #define NO_REMAP
146
147 /* This machine requires completely different unexec code 162 /* This machine requires completely different unexec code
148 which lives in a separate file. Specify the file name. */ 163 which lives in a separate file. Specify the file name. */
149 164
150 #define UNEXEC unexhp9k800.o 165 #define UNEXEC unexhp9k800.o
151 166
152 #define LIBS_MACHINE 167 #define LIBS_MACHINE
153 #define LIBS_DEBUG 168 #define LIBS_DEBUG
154 169
155 /* Include the file bsdtty.h, since this machine has job control. */ 170 /* Include the file bsdtty.h, since this machine has job control. */
156 #define NEED_BSDTTY 171 #define NEED_BSDTTY
157 172
173 /* Data type of load average, as read out of kmem. */
174
175 #define LOAD_AVE_TYPE double
176
177 /* Convert that into an integer that is 100 for a load average of 1.0 */
178
179 #define LOAD_AVE_CVT(x) ((int) (x * 100.0))
180
158 /* The symbol in the kernel where the load average is found 181 /* The symbol in the kernel where the load average is found
159 is named _avenrun. At this time there are two major flavors 182 is named _avenrun. At this time there are two major flavors
160 of hp-ux (there is the s800 and s300 (s200) flavors). The 183 of hp-ux (there is the s800 and s300 (s200) flavors). The
161 differences are thusly moved to the corresponding machine description file. 184 differences are thusly moved to the corresponding machine description file.
162 */ 185 */