/[emacs]/emacs/src/m/alpha.h
ViewVC logotype

Diff of /emacs/src/m/alpha.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.45 by schwab, Mon Apr 15 13:16:00 2002 UTC revision 1.46 by raeburn, Wed Jul 24 02:07:15 2002 UTC
# Line 29  NOTE-END Line 29  NOTE-END
29    
30  */  */
31    
 #define BITS_PER_LONG 64  
 #define BITS_PER_EMACS_INT 64  
32  #ifndef _LP64  #ifndef _LP64
33  #define _LP64                   /* This doesn't appear to be necessary  #define _LP64                   /* This doesn't appear to be necessary
34                                     on OSF 4/5  -- fx.  */                                     on OSF 4/5  -- fx.  */
# Line 56  NOTE-END Line 54  NOTE-END
54    
55  /* Use type EMACS_INT rather than a union, to represent Lisp_Object */  /* Use type EMACS_INT rather than a union, to represent Lisp_Object */
56  /* This is desirable for most machines.  */  /* This is desirable for most machines.  */
   
57  #define NO_UNION_TYPE  #define NO_UNION_TYPE
58    
 /* Define the type to use.  */  
 #define EMACS_INT long  
 #define EMACS_UINT unsigned long  
 #define SPECIAL_EMACS_INT  
   
59  /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend  /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
60     the 24-bit bit field into an int.  In other words, if bit fields     the 24-bit bit field into an int.  In other words, if bit fields
61     are always unsigned.     are always unsigned.
# Line 113  NOTE-END Line 105  NOTE-END
105  #ifdef __ELF__  #ifdef __ELF__
106  #undef UNEXEC  #undef UNEXEC
107  #define UNEXEC unexelf.o  #define UNEXEC unexelf.o
108    #define DATA_START    0x140000000
109  #endif  #endif
110    
111  #ifndef __ELF__  #ifndef __ELF__
# Line 122  NOTE-END Line 115  NOTE-END
115  #define TEXT_START    0x120000000  #define TEXT_START    0x120000000
116  #define DATA_START    0x140000000  #define DATA_START    0x140000000
117    
 /* This is necessary for mem-limits.h, so that start_of_data gives  
    the correct value */  
   
 #define DATA_SEG_BITS 0x140000000  
   
118  /* The program to be used for unexec. */  /* The program to be used for unexec. */
119    
120  #define UNEXEC unexalpha.o  #define UNEXEC unexalpha.o
# Line 165  NOTE-END Line 153  NOTE-END
153  #endif  #endif
154    
155    
 #define PNTR_COMPARISON_TYPE unsigned long  
   
 /* On the 64 bit architecture, we can use 60 bits for addresses */  
   
 #define VALBITS         60  
   
   
 /* This definition of MARKBIT is necessary because of the comparison of  
    ARRAY_MARK_FLAG and MARKBIT in an #if in lisp.h, which cpp doesn't like. */  
   
 #define MARKBIT         0x8000000000000000L  
   
   
 /* Define XINT and XUINT so that they can take arguments of type int */  
   
 #define XINT(a)  (((long) (a) << (BITS_PER_LONG - VALBITS)) >> (BITS_PER_LONG - VALBITS))  
 #define XUINT(a) ((long) (a) & VALMASK)  
   
 /* Define XPNTR to avoid or'ing with DATA_SEG_BITS */  
   
 #define XPNTR(a) XUINT (a)  
   
156  #ifndef NOT_C_CODE  #ifndef NOT_C_CODE
157  /* We need these because pointers are larger than the default ints.  */  /* We need these because pointers are larger than the default ints.  */
158  #if !defined(__NetBSD__) && !defined(__OpenBSD__)  #if !defined(__NetBSD__) && !defined(__OpenBSD__)

Legend:
Removed from v.1.45  
changed lines
  Added in v.1.46

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26