anchor.diff:                                                                                                    :key #'live-range-start)))
                                                    real-vreg-ranges)
             (slot-value allocator '%vreg-hints) vreg-move-hint
  -          (allocator-range-starts allocator) starts))
  +          (allocator-range-starts allocator) starts)
  +    (format *log* ",~D,~D,~D"
  +            (length (allocator-remaining-ranges allocator))
  +            (hash-table-count (allocator-vreg-to-id-table allocator))
  +            (length ordering)))
     (when (not ir::*shut-up*)
       (format t "Live ranges: ~:S~%" (allocator-remaining-ranges allocator)))
     (values))
  
positive.code: 
  (defun allocate-registers (backend-function arch &key ordering)
    (sys.c:with-metering (:backend-register-allocation)
      (let ((allocator (make-linear-allocator backend-function arch :ordering ordering)))
        (build-live-ranges allocator)
        (linear-scan-allocate allocator)
  
negative.code:                    (let ((reg (gethash interval (allocator-range-allocations allocator))))
                       (when (not ir::*shut-up*)
                         (format t "Return interval ~S (reg ~S) early.~%" interval reg))
                       (deactivate-interval allocator interval)
                       (push reg (allocator-free-registers allocator))
                       (push reg instant-avoid-registers)))))))
           (update-active-intervals allocator inst instruction-index)
  