X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Falpha%2Fparms.lisp;h=9fbee3ca4a51a366ca093748219bc74a12f24f57;hb=ffa9a31f62e3e2abab8ebcbb3bfdab9725feaf7f;hp=f208e179f7c71412434ee1192d4777bf309246bf;hpb=dc5e3163fe667e2629c7769aa8cf2e501eeeefa6;p=sbcl.git diff --git a/src/compiler/alpha/parms.lisp b/src/compiler/alpha/parms.lisp index f208e17..9fbee3c 100644 --- a/src/compiler/alpha/parms.lisp +++ b/src/compiler/alpha/parms.lisp @@ -11,21 +11,16 @@ (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) -(def!constant n-byte-bits 8 - #!+sb-doc - "Number of bits per byte where a byte is the smallest addressable object.") +;;; the natural width of a machine word (as seen in e.g. register width, +;;; address space) +(def!constant n-machine-word-bits 64) -(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) @@ -139,13 +134,6 @@ (def!constant dynamic-1-space-start #x40000000) (def!constant dynamic-1-space-end #x4fff0000) -(def!constant control-stack-start #x50000000) -(def!constant control-stack-end #x51000000) - -(def!constant binding-stack-start #x70000000) -(def!constant binding-stack-end #x71000000) - - ;;; FIXME nothing refers to either of these in alpha or x86 cmucl ;;; backend, so they could probably be removed. @@ -193,9 +181,11 @@ *posix-argv* ;; functions that the C code needs to call - maybe-gc + sub-gc sb!kernel::internal-error sb!kernel::control-stack-exhausted-error + sb!kernel::undefined-alien-variable-error + sb!kernel::undefined-alien-function-error sb!di::handle-breakpoint sb!di::handle-fun-end-breakpoint @@ -208,6 +198,10 @@ *current-catch-block* *current-unwind-protect-block* + *binding-stack-start* + *control-stack-start* + *control-stack-end* + ;; interrupt handling *free-interrupt-context-index* sb!unix::*interrupts-enabled* @@ -233,5 +227,6 @@ sb!kernel:two-arg-and sb!kernel:two-arg-ior sb!kernel:two-arg-xor + sb!kernel:two-arg-eqv sb!kernel:two-arg-gcd sb!kernel:two-arg-lcm))