1.0.16.22: FIXED-ALLOC to use MAYBE-PSEUDO-ATOMIC on x86 and x86-64.
authorNikodemus Siivola <nikodemus@random-state.net>
Thu, 8 May 2008 08:21:41 +0000 (08:21 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Thu, 8 May 2008 08:21:41 +0000 (08:21 +0000)
 * PA is not needed with stack allocation.

 * Also rename the first argument to MAYBE-PSEUDO-ATOMIC to
   NOT-REALLY-P to avoid confusion.

src/compiler/x86-64/alloc.lisp
src/compiler/x86-64/macros.lisp
src/compiler/x86/alloc.lisp
src/compiler/x86/macros.lisp
version.lisp-expr

index c7b7de2..8a3553c 100644 (file)
   (:results (result :scs (descriptor-reg)))
   (:node-var node)
   (:generator 50
-    (pseudo-atomic
+    (maybe-pseudo-atomic stack-allocate-p
      (allocation result (pad-data-block words) node stack-allocate-p)
      (inst lea result (make-ea :byte :base result :disp lowtag))
      (when type
index 6c53ab4..9393c2b 100644 (file)
 ;;; place and there's no logical single place to attach documentation.
 ;;; grep (mostly in src/runtime) is your friend
 
-;;; FIXME: THIS NAME IS BACKWARDS!
-(defmacro maybe-pseudo-atomic (really-p &body body)
-  `(if ,really-p
+(defmacro maybe-pseudo-atomic (not-really-p &body body)
+  `(if ,not-really-p
        (progn ,@body)
        (pseudo-atomic ,@body)))
 
index 59d47f5..23d30a6 100644 (file)
                                        ,@cases)))))
           (aver (null type))
           (inst call (make-fixup dst :assembly-routine)))
-        (pseudo-atomic
+        (maybe-pseudo-atomic stack-allocate-p
          (allocation result (pad-data-block words) node stack-allocate-p)
          (inst lea result (make-ea :byte :base result :disp lowtag))
          (when type
index bfdb6c8..378a2ca 100644 (file)
 ;;; does not matter whether a signal occurs during construction of a
 ;;; dynamic-extent object, as the half-finished construction of the
 ;;; object will not cause any difficulty.  We can therefore elide
-(defmacro maybe-pseudo-atomic (really-p &body forms)
-  `(if ,really-p
+(defmacro maybe-pseudo-atomic (not-really-p &body forms)
+  `(if ,not-really-p
        (progn ,@forms)
        (pseudo-atomic ,@forms)))
 
index 7d6374b..ba6f1fa 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.16.21"
+"1.0.16.22"