anchor.diff:          `(sys.lap-x86:add64 (,+binding-stack-gs-offset+) 16))
     ''nil)
   
  -(defbuiltin sys.int::%%disestablish-block-or-tagbody () ()
  +(defbuiltin sys.int::%%disestablish-block-or-tagbody () (t nil)
     ;; Top entry in the binding stack is a block or tagbody entry.
     ;; It's a environment simple-vector & an offset.
     ;; Pop the stack & set env[offset] = NIL.
  
positive.code: 
  (defparameter *builtins* (make-hash-table))
  
  (defmacro defbuiltin (name lambda-list (&optional (emit-function t)) &body body)
    `(progn (setf (gethash (sys.int::function-symbol ',name) *builtins*)
  		(list ',lambda-list
  		      (lambda ,lambda-list
  			(declare (system:lambda-name ,name))
  			,@body)
                        ',emit-function
                        ',name))
  	  ',name))
  
  (defmacro define-reader (name type tag slot)
  
negative.code:   ''nil)
  
  ;;; TODO: Check for constants here.
  (defbuiltin sys.int::%%push-special-stack (a b) (t nil)
    (load-in-reg :r9 b t)
    (load-in-reg :r8 a t)
    (emit `(sys.lap-x86:gs)
  