anchor.diff:                     (or (keywordp incoming-arguments)
                          (and incoming-arguments (not framep)))
                      block-or-tagbody-thunk)
  +           (let ((*gc-debug-scavenge-stack* t))
  +             (debug-stack-frame framep interruptp pushed-values pushed-values-register
  +                                layout-address layout-length
  +                                multiple-values incoming-arguments block-or-tagbody-thunk))
              (emergency-halt "TODO! GC SG stuff."))
            (cond (interruptp
                   (when (not framep)
  
positive.code:                        (other-fn-address (base-address-of-internal-pointer other-return-address))
                         (other-fn-offset (- other-return-address other-fn-address))
                         (other-fn (%%assemble-value other-fn-address +tag-function+)))
                    (mumble-hex other-return-address "oRA: " t)
                    (mumble-hex other-frame-pointer "oFP: " t)
                    (mumble-hex other-stack-pointer "oSP: " t)
                    (mumble-hex other-fn-address "oFNa: " t)
                    (mumble-hex other-fn-offset "oFNo: " t)
                    ;; Unconditionally scavenge the saved data registers.
                    (scavengef (memref-t frame-pointer -12)) ; r8
                    (scavengef (memref-t frame-pointer -11)) ; r9
  
negative.code:                                                      other-layout-address other-layout-length
                                                       other-multiple-values other-incoming-arguments other-block-or-tagbody-thunk)
                        (gc-info-for-function-offset other-fn other-fn-offset)
                      (debug-stack-frame other-framep other-interruptp other-pushed-values other-pushed-values-register
                                         other-layout-address other-layout-length
                                         other-multiple-values other-incoming-arguments other-block-or-tagbody-thunk)
                      (when (or other-interruptp
                                (not (eql other-pushed-values 0)) other-pushed-values-register
                                (and other-multiple-values (not (eql other-multiple-values 0)))
                                (and (keywordp other-incoming-arguments) (not (eql other-incoming-arguments :rcx)))
                                other-block-or-tagbody-thunk)
                        (let ((*gc-debug-scavenge-stack* t))
                          (debug-stack-frame other-framep other-interruptp other-pushed-values other-pushed-values-register
                                             other-layout-address other-layout-length
                                             other-multiple-values other-incoming-arguments other-block-or-tagbody-thunk))
                        (emergency-halt "TODO! GC SG stuff. (interrupt)"))
                      (when (keywordp other-incoming-arguments)
                        (when (not (eql other-incoming-arguments :rcx))
                          (let ((*gc-debug-scavenge-stack* t))
                            (debug-stack-frame other-framep other-interruptp other-pushed-values other-pushed-values-register
                                               other-layout-address other-layout-length
                                               other-multiple-values other-incoming-arguments other-block-or-tagbody-thunk))
                          (emergency-halt "TODO? incoming-arguments not in RCX"))
                        (setf other-incoming-arguments nil)
                        (mumble-hex (memref-t frame-pointer -2) "ia-count ")
  