don't stack-allocate specialized vectors on non-conservtive control stacks
[sbcl.git] / src / compiler / saptran.lisp
index ed407c8..2e6b508 100644 (file)
@@ -80,6 +80,7 @@
   (defsapref signed-sap-ref-64 (signed-byte 64))
   (defsapref signed-sap-ref-word (signed-byte #.sb!vm:n-word-bits))
   (defsapref sap-ref-sap system-area-pointer)
+  (defsapref sap-ref-lispobj t)
   (defsapref sap-ref-single single-float)
   (defsapref sap-ref-double double-float)
   (defsapref sap-ref-long long-float)
             (sap+ sap (+ offset1 offset2))))))
 
 (macrolet ((def (fun &optional setp value-type)
-             (declare (ignorable value-type) (ignore element-size))
+             (declare (ignorable value-type))
              `(progn
                 (deftransform ,fun ((sap offset ,@(when setp `(new-value))) * *)
                   (splice-fun-args sap 'sap+ 2)
   (def %set-signed-sap-ref-64 t (signed-byte 64))
   (def sap-ref-sap)
   (def %set-sap-ref-sap t system-area-pointer)
+  (def sap-ref-lispobj)
+  (def %set-sap-ref-lispobj t t)
   (def sap-ref-single)
   (def %set-sap-ref-single t single-float)
   (def sap-ref-double)