0.pre7.20:
[sbcl.git] / src / compiler / x86 / system.lisp
index 89cac6d..86cc500 100644 (file)
                   :disp (- function-pointer-type other-pointer-type)))
     (inst add func code)))
 
-;;; REMOVEME
-(defknown %function-self (function) function (flushable))
-
 (define-vop (%function-self)
   (:policy :fast-safe)
   (:translate %function-self)
 (def-source-transform %funcallable-instance-function (fin)
   `(%function-self ,fin))
 
-;;; REMOVEME
-(defknown (setf %function-self) (function function) function  (unsafe))
-
 (define-vop (%set-function-self)
   (:policy :fast-safe)
   (:translate (setf %function-self))
     (storew temp function function-self-slot function-pointer-type)
     (move result new-self)))
 
-;;; REMOVEME
+;;; KLUDGE: This seems to be some kind of weird override of the way
+;;; that the objdef.lisp code would ordinarily set up the slot
+;;; accessor. It's inherited from CMU CL, and it works, and naively
+;;; deleting it seemed to cause problems, but it's not obvious why
+;;; it's done this way. Any ideas? -- WHN 2001-08-02
 (defknown ((setf %funcallable-instance-function)) (function function) function
-       (unsafe))
-
+  (unsafe))
 ;;; CMU CL comment:
 ;;;   We would have really liked to use a source-transform for this, but
 ;;;   they don't work with SETF functions.