anchor.diff:  (defmacro def-inst-type (name inst-layout)
    `(progn
       (defun ,name (stream instruction arguments enc)
  -      (pprint enc)
  -      (pprint instruction)
         (let ((code 0))
           ,(when (first inst-layout)
             ;; Generate the let for all the registers
  
positive.code: (make-ee-instructions (make-encoding :spec #b011100 :fixed #b001000 :inst 6 :rs 16 :rt 11 :type 4 :func #'inst-type4)
                        '((pext5  #b11110) (ppac5 #b11111)))
  
  (make-ee-instructions (make-encoding :spec #b011100 :imm 0 :fixed 0 :inst 0 :rs 21 :rt 16 :type 4 :func #'inst-type4)
                        '((pdivbw #b11101001001 ) (pdivw  #b01101001001 ) (pdivuw #b01101101001 )))
  
  (make-ee-instructions (make-encoding :spec #b011100 :fixed 0 :inst 0 :rs 16 :rt 11 :type 4 :func #'inst-type4)
  
negative.code: (make-ee-instructions (make-encoding :inst 0 :rs 21 :rt 11 :type 4 :func #'inst-type4) 
                        '((jalr #b001001)))
  
  (make-ee-instructions (make-encoding :inst 0 :rs 16 :rt 21 :type 4 :func #'inst-type4) 
                        '((mult #b011000) (multu #b011001) 
                          (div  #b011010) (divu #b011011)))
  
  (make-ee-instructions (make-encoding :spec 1 :inst 16 :rs 21 :imm 0 :type 2 :func #'inst-type2)
  