comparison src/m/mips.h @ 412:697ef44129c6 r21-2-14

Import from CVS: tag r21-2-14
author cvs
date Mon, 13 Aug 2007 11:20:41 +0200
parents a86b2b5e0111
children 11054d720c21
comparison
equal deleted inserted replaced
411:12e008d41344 412:697ef44129c6
27 NOTE-START 27 NOTE-START
28 Use m-mips4.h for RISCOS version 4; use s-bsd4-3.h with the BSD world. 28 Use m-mips4.h for RISCOS version 4; use s-bsd4-3.h with the BSD world.
29 Note that the proper m- file for the Decstation is m-pmax.h. 29 Note that the proper m- file for the Decstation is m-pmax.h.
30 NOTE-END */ 30 NOTE-END */
31 31
32 /* Define WORD_MACHINE if addresses and such have
33 * to be corrected before they can be used as byte counts. */
34
35 #undef WORD_MACHINE
36
37 /* Define how to take a char and sign-extend into an int.
38 On machines where char is signed, this is a no-op. */
39
40 #define SIGN_EXTEND_CHAR(c) ((signed char)(c))
41
32 /* Now define a symbol for the cpu type, if your compiler 42 /* Now define a symbol for the cpu type, if your compiler
33 does not define it automatically: 43 does not define it automatically:
34 Ones defined so far include vax, m68000, ns16000, pyramid, 44 Ones defined so far include vax, m68000, ns16000, pyramid,
35 orion, tahoe, APOLLO and many others */ 45 orion, tahoe, APOLLO and many others */
36 #ifndef mips 46 #ifndef mips
37 # define mips 47 # define mips
38 #endif 48 #endif
49
50 /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
51 the bit field into an int. In other words, if bit fields
52 are always unsigned.
53
54 If you use NO_UNION_TYPE, this flag does not matter. */
55
56 #define EXPLICIT_SIGN_EXTEND
39 57
40 /* Data type of load average, as read out of kmem. */ 58 /* Data type of load average, as read out of kmem. */
41 59
42 #define LOAD_AVE_TYPE long 60 #define LOAD_AVE_TYPE long
43 61
44 /* Convert that into an integer that is 100 for a load average of 1.0 */ 62 /* Convert that into an integer that is 100 for a load average of 1.0 */
45 63
46 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / 256.0) 64 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / 256.0)
47 65
48 #ifndef linux
49 /* CDC EP/IX 1.4.3 uses /unix */ 66 /* CDC EP/IX 1.4.3 uses /unix */
50 67
51 #undef KERNEL_FILE 68 #undef KERNEL_FILE
52 #define KERNEL_FILE "/unix" 69 #define KERNEL_FILE "/unix"
53 #endif /* ! linux */
54 70
55 /* Define CANNOT_DUMP on machines where unexec does not work. 71 /* Define CANNOT_DUMP on machines where unexec does not work.
56 Then the function dump-emacs will not be defined 72 Then the function dump-emacs will not be defined
57 and temacs will do (load "loadup") automatically unless told otherwise. */ 73 and temacs will do (load "loadup") automatically unless told otherwise. */
58 74
88 #define NO_REMAP 104 #define NO_REMAP
89 105
90 /* This machine requires completely different unexec code 106 /* This machine requires completely different unexec code
91 which lives in a separate file. Specify the file name. */ 107 which lives in a separate file. Specify the file name. */
92 108
93 #ifndef linux
94 #define UNEXEC "unexmips.o" 109 #define UNEXEC "unexmips.o"
95 #endif /* !linux */ 110
96 /* Describe layout of the address space in an executing process. */ 111 /* Describe layout of the address space in an executing process. */
97 112
98 #ifdef linux
99 #define TEXT_START 0x00400000
100 #define DATA_START 0x10000000
101 #else /* !linux */
102 #define TEXT_START 0x400000 113 #define TEXT_START 0x400000
103 #define DATA_START 0x800000 114 #define DATA_START 0x800000
104 #endif /* linux */
105 115
106 /* Alter some of the options used when linking. */ 116 /* Alter some of the options used when linking. */
107 117
108 #if !defined(NEWSOS5) && !defined(linux) 118 #ifndef NEWSOS5
109 #ifdef BSD 119 #ifdef BSD
110 120
111 /* DECstations don't have this library. */ 121 /* DECstations don't have this library. */
112 /* #define LIBS_MACHINE "-lmld" */ 122 /* #define LIBS_MACHINE "-lmld" */
113 123
126 136
127 #define C_SWITCH_MACHINE "-I/usr/include/bsd" 137 #define C_SWITCH_MACHINE "-I/usr/include/bsd"
128 #define C_DEBUG_SWITCH "-O -g3" 138 #define C_DEBUG_SWITCH "-O -g3"
129 139
130 #endif /* not BSD */ 140 #endif /* not BSD */
131 #endif /* !NEWSOS5 && !linux */ 141 #endif /* not NEWSOS5 */
132 142
133 #if !defined(NEWSOS5) && !defined(linux) 143 #ifndef NEWSOS5
134 #ifdef USG 144 #ifdef USG
135 145
136 /* Don't try to use SIGIO even though it is defined. */ 146 /* Don't try to use SIGIO even though it is defined. */
137 #define BROKEN_SIGIO 147 #define BROKEN_SIGIO
138 148
155 #ifdef BSD 165 #ifdef BSD
156 #define COFF 166 #define COFF
157 #define TERMINFO 167 #define TERMINFO
158 #undef MAIL_USE_FLOCK /* Someone should check this. */ 168 #undef MAIL_USE_FLOCK /* Someone should check this. */
159 #endif /* BSD */ 169 #endif /* BSD */
160 #endif /* !NEWSOS5 && !linux */ 170 #endif /* not NEWSOS5 */