0.8.0.33
[sbcl.git] / src / compiler / assem.lisp
index 22f1c2e..778eb41 100644 (file)
 ;;; BACK-PATCH-FUN so we can avoid this nastiness altogether.
 (defmacro with-modified-segment-index-and-posn ((segment index posn)
                                                &body body)
-  (let ((n-segment (gensym "SEGMENT"))
-       (old-index (gensym "OLD-INDEX-"))
-       (old-posn (gensym "OLD-POSN-")))
+  (with-unique-names (n-segment old-index old-posn)
     `(let* ((,n-segment ,segment)
            (,old-index (segment-current-index ,n-segment))
            (,old-posn (segment-current-posn ,n-segment)))
 \f
 ;;;; structures/types used by the scheduler
 
-(sb!c:def-boolean-attribute instruction
+(!def-boolean-attribute instruction
   ;; This attribute is set if the scheduler can freely flush this
   ;; instruction if it thinks it is not needed. Examples are NOP and
   ;; instructions that have no side effect not described by the
@@ -1125,7 +1123,7 @@ p     ;; the branch has two dependents and one of them dpends on
 ;;; FIXME: The way this macro uses MACROEXPAND internally breaks my
 ;;; old assumptions about macros which are needed both in the host and
 ;;; the target. (This is more or less the same way that PUSH-IN,
-;;; DELETEF-IN, and DEF-BOOLEAN-ATTRIBUTE break my old assumptions,
+;;; DELETEF-IN, and !DEF-BOOLEAN-ATTRIBUTE break my old assumptions,
 ;;; except that they used GET-SETF-EXPANSION instead of MACROEXPAND to
 ;;; do the dirty deed.) The quick and dirty "solution" here is the
 ;;; same as there: use cut and paste to duplicate the defmacro in a
@@ -1332,6 +1330,7 @@ p     ;; the branch has two dependents and one of them dpends on
 ;;; calling FUNCTION once on the entire compacted segment buffer. --
 ;;; WHN 19990322
 (defun on-segment-contents-vectorly (segment function)
+  (declare (type function function))
   (let ((buffer (segment-buffer segment))
        (i0 0))
     (flet ((frob (i0 i1)
@@ -1653,8 +1652,7 @@ p     ;; the branch has two dependents and one of them dpends on
                (append ,@(extract-nths 0 'list pdefs)))))))))
 
 (defmacro define-instruction-macro (name lambda-list &body body)
-  (let ((whole (gensym "WHOLE-"))
-       (env (gensym "ENV-")))
+  (with-unique-names (whole env)
     (multiple-value-bind (body local-defs)
        (sb!kernel:parse-defmacro lambda-list
                                  whole