Changeset 12952


Ignore:
Timestamp:
Oct 9, 2009, 6:20:02 PM (10 years ago)
Author:
gz
Message:

fasdumping macptr-typed constants (r12922, r12926)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/lib/nfcomp.lisp

    r12951 r12952  
    12311231                                 (ash 1 x8664::fulltag-immheader-2))))
    12321232           (case type-code
    1233              ((#.target::subtag-macptr #.target::subtag-dead-macptr) (unless (%null-ptr-p exp) (fasl-unknown exp)))
     1233             (#.target::subtag-dead-macptr (fasl-unknown exp))
     1234             (#.target::subtag-macptr
     1235              ;; Treat untyped pointers to the high/low 64K of the address
     1236              ;; space as constants.  Refuse to dump other pointers.
     1237              (unless (and (zerop (%macptr-type exp))
     1238                           (<= (%macptr-domain exp) 1))
     1239                (error "Can't dump typed pointer ~s" exp))
     1240              (let* ((addr (%ptr-to-int exp)))
     1241                (unless (or (< addr #x10000)
     1242                            (>= addr (- (ash 1 target::nbits-in-word)
     1243                                        #x10000)))
     1244                  (error "Can't dump pointer ~s : address is not in the low or high 64K of the address space." exp))))
    12341245             (t (fasl-scan-ref exp)))
    12351246           (case type-code
Note: See TracChangeset for help on using the changeset viewer.