0.8.4.15:
[sbcl.git] / src / compiler / saptran.lisp
index 4270fed..1d6d4ee 100644 (file)
   (unsigned-byte 32)
   ())
 
-#!+alpha
+;; FIXME These are supported natively on alpha and using deftransforms
+;; in compiler/x86/sap.lisp, which in OAO$n$ style need copying to
+;; other 32 bit systems
 (defknown sap-ref-64 (system-area-pointer fixnum) (unsigned-byte 64)
   (flushable))
-#!+alpha
 (defknown %set-sap-ref-64 (system-area-pointer fixnum (unsigned-byte 64))
   (unsigned-byte 64)
   ())
   (signed-byte 32)
   ())
 
-#!+alpha
 (defknown signed-sap-ref-64 (system-area-pointer fixnum) (signed-byte 64)
   (flushable))
-#!+alpha
 (defknown %set-signed-sap-ref-64 (system-area-pointer fixnum (signed-byte 64))
   (signed-byte 64)
   ())
 ;;;; transforms for optimizing SAP+
 
 (deftransform sap+ ((sap offset))
-  (cond ((and (constant-continuation-p offset)
-             (eql (continuation-value offset) 0))
+  (cond ((and (constant-lvar-p offset)
+             (eql (lvar-value offset) 0))
         'sap)
        (t
         (extract-fun-args sap 'sap+ 2)
   (def %set-sap-ref-32)
   (def signed-sap-ref-32)
   (def %set-signed-sap-ref-32)
+  (def sap-ref-64)
+  (def %set-sap-ref-64)
+  (def signed-sap-ref-64)
+  (def %set-signed-sap-ref-64)
   (def sap-ref-sap)
   (def %set-sap-ref-sap)
   (def sap-ref-single)