;;;; files for more information.
(in-package "SB!VM")
-
-(file-comment
- "$Header$")
\f
(defun fixnumize (num)
#!+sb-doc
(unless posn (error "~S is not a static symbol." symbol))
(+ (* posn (pad-data-block symbol-size))
(pad-data-block (1- symbol-size))
- other-pointer-type
- (- list-pointer-type)))
+ other-pointer-lowtag
+ (- list-pointer-lowtag)))
0))
(defun offset-static-symbol (offset)
(if (zerop offset)
nil
(multiple-value-bind (n rem)
- (truncate (+ offset list-pointer-type (- other-pointer-type)
+ (truncate (+ offset list-pointer-lowtag (- other-pointer-lowtag)
(- (pad-data-block (1- symbol-size))))
(pad-data-block symbol-size))
(unless (and (zerop rem) (<= 0 n (1- (length *static-symbols*))))
(error "~S isn't a static function." name))
(+ (* static-syms (pad-data-block symbol-size))
(pad-data-block (1- symbol-size))
- (- list-pointer-type)
+ (- list-pointer-lowtag)
(* static-function-index (pad-data-block fdefn-size))
- (* fdefn-raw-addr-slot word-bytes))))
+ (* fdefn-raw-addr-slot n-word-bytes))))