0.8.14.5: Join the foreign legion!
[sbcl.git] / src / compiler / sparc / parms.lisp
index 4e4461e..63576d7 100644 (file)
 ;;;; Machine Architecture parameters:
 (eval-when (:compile-toplevel :load-toplevel :execute)
 
-(def!constant n-word-bits 32
-  #!+sb-doc
-  "Number of bits per word where a word holds one lisp descriptor.")
+;;; number of bits per word where a word holds one lisp descriptor
+(def!constant n-word-bits 32)
 
 ;;; the natural width of a machine word (as seen in e.g. register width,
 ;;; address space)
 (def!constant n-machine-word-bits 32)
 
-(def!constant n-byte-bits 8
-  #!+sb-doc
-  "Number of bits per byte where a byte is the smallest addressable object.")
-
-(def!constant word-shift (1- (integer-length (/ n-word-bits n-byte-bits)))
-  #!+sb-doc
-  "Number of bits to shift between word addresses and byte addresses.")
-
-(def!constant n-word-bytes (/ n-word-bits n-byte-bits)
-  #!+sb-doc
-  "Number of bytes in a word.")
+;;; number of bits per byte where a byte is the smallest addressable object
+(def!constant n-byte-bits 8)
 
 (def!constant float-sign-shift 31)
 
 
 ); eval-when
 
-;;; NUMBER-STACK-DISPLACEMENT
-;;;
-;;; The number of bytes reserved above the number stack pointer.  These
-;;; slots are required by architecture for a place to spill register windows.
-;;;
-;;; FIXME: Where is this used?
-(def!constant number-stack-displacement
-  (* 16 n-word-bytes))
-
 \f
 ;;;; Description of the target address space.
 
 ;;; Where to put the different spaces.  Must match the C code!
 #!+linux
 (progn
-  (def!constant read-only-space-start #x10000000)
-  (def!constant read-only-space-end #x15000000)
+  (def!constant linkage-table-space-start #x0f800000)
+  (def!constant linkage-table-space-end   #x10000000)
+  
+  (def!constant read-only-space-start     #x10000000)
+  (def!constant read-only-space-end       #x15000000)
 
-  (def!constant static-space-start    #x28000000)
-  (def!constant static-space-end #x2c000000)
+  (def!constant static-space-start        #x28000000)
+  (def!constant static-space-end          #x2c000000)
 
   ;; From alpha/parms.lisp:
   ;; this is used in PURIFY as part of a sloppy check to see if a pointer
   (def!constant dynamic-space-start   #x30000000)
   (def!constant dynamic-space-end     #x38000000)
 
-  (def!constant dynamic-0-space-start   #x30000000)
-  (def!constant dynamic-0-space-end     #x38000000)
+  (def!constant dynamic-0-space-start #x30000000)
+  (def!constant dynamic-0-space-end   #x38000000)
   
-  (def!constant dynamic-1-space-start   #x40000000)
-  (def!constant dynamic-1-space-end     #x48000000))
+  (def!constant dynamic-1-space-start #x40000000)
+  (def!constant dynamic-1-space-end   #x48000000))
 
 #!+sunos ; might as well start by trying the same numbers
 (progn
-  (def!constant read-only-space-start #x10000000)
-  (def!constant read-only-space-end #x15000000)
+  (def!constant linkage-table-space-start #x0f800000)
+  (def!constant linkage-table-space-end   #x10000000)
+  
+  (def!constant read-only-space-start     #x10000000)
+  (def!constant read-only-space-end       #x15000000)
   
-  (def!constant static-space-start    #x28000000)
-  (def!constant static-space-end    #x2c000000)
+  (def!constant static-space-start        #x28000000)
+  (def!constant static-space-end          #x2c000000)
 
-  (def!constant dynamic-space-start   #x30000000)
-  (def!constant dynamic-space-end     #x38000000)
+  (def!constant dynamic-space-start       #x30000000)
+  (def!constant dynamic-space-end         #x38000000)
 
-  (def!constant dynamic-0-space-start   #x30000000)
-  (def!constant dynamic-0-space-end     #x38000000)
+  (def!constant dynamic-0-space-start     #x30000000)
+  (def!constant dynamic-0-space-end       #x38000000)
   
-  (def!constant dynamic-1-space-start   #x40000000)
-  (def!constant dynamic-1-space-end     #x48000000))  
+  (def!constant dynamic-1-space-start     #x40000000)
+  (def!constant dynamic-1-space-end       #x48000000))
+
+;; Size of one linkage-table entry in bytes. See comment in
+;; src/runtime/sparc-arch.c
+(def!constant linkage-table-entry-size 16)
 
 \f
 ;;;; other random constants.