anchor.diff:                     (elt (elt '(("b")
                                  ("zbw" "w")
                                  ("zbl" "zwl" "l")) dest-scale) src-scale)
  -                   (funcall src src-scale)
  -                   (funcall dest dest-scale))))
  +                   (insn-operand src src-scale)
  +                   (insn-operand dest dest-scale))))
       (if (= dest-scale 3)
           (if (= src-scale 3)
               (emit-mov out src dest 3)
  
positive.code:   (emit out "pop~A ~A" value-insn-size-suffix (value-sized reg)))
  
  (define (emit-set out cc reg)
    (emit out "set~A ~A" cc (funcall reg 0)))
  
  (defmarco (define-insn-1 name insn)
    (quasiquote
  
negative.code:   (unless scale
      (set! scale value-scale))
    (emit out "~A~A ~A, ~A" insn (insn-size-suffix scale)
          (insn-operand src scale) (insn-operand dest scale)))
  
  (define-insn-2 emit-mov "mov")
  (define-insn-2 emit-lea "lea")
  