anchor.diff:           (unless (instruction-cache instruction)
              (setf (instruction-cache instruction)
                    (make-callable :prim args
  -                                :cached-prim (find-user-primitive vm args))))
  +                                :cached-prim (cons nil (find-user-primitive vm args)))))
            (push (instruction-cache instruction) (vm-stack vm))
            (inc-pc vm)
            ;; for the pushed callable (5 fields):
  
positive.code:           value)))
  
  (defun get-from-environment (environment frame-number var-index)
    (declare (optimize speed)
             (type fixnum frame-number var-index)
             (type list environment))
    (let ((frame (env-frame-vars (nth frame-number environment))))
  
negative.code:       (incf (vm-program-counter vm))))
  
  (defun apply-return-address (vm retaddr)
    (declare (optimize speed (safety 0))
             (type vm vm)
             (return-address retaddr))
    (setf (vm-program-counter vm) (return-address-program-counter retaddr)
          (vm-current-environment vm) (return-address-environment retaddr)))
  
  (defun handle-args (vm args)
    (declare (optimize speed (safety 0))
             (type vm vm)
             (type fixnum args))
    (when (< 0 args)
      (let* ((stack (vm-stack vm))
  