Just Launched: You can now import projects and releases from Google Code onto SourceForge
We are excited to release new functionality to enable a 1-click import from Google Code onto the Allura platform on SourceForge. You can import tickets, wikis, source, releases, and more with a few simple steps. Read More
From: Gábor Melis <melisgl@us...> - 2009-01-11 15:56:12
Update of /cvsroot/sbcl/sbcl/src/assembly/x86
In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv23922/src/assembly/x86
126.96.36.199: undo parts of 188.8.131.52
No need for memory barriers when unlocking a spinlock on x86/x86-64.
The ordering rules and the cache coherency mechanism together
guarantee this. However, the compiler must be prevented from
reordering instructions with the unlock (at least in one direction).
This is now done in the runtime, but not in Lisp as the Lisp compiler
does no reordering.
RCS file: /cvsroot/sbcl/sbcl/src/assembly/x86/alloc.lisp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- alloc.lisp 20 Sep 2008 03:09:58 -0000 1.12
+++ alloc.lisp 11 Jan 2009 15:56:03 -0000 1.13
@@ -120,6 +120,7 @@
(storew target other symbol-tls-index-slot other-pointer-lowtag)
+ ;; No need for barriers on x86/x86-64 on unlock.
(store-symbol-value 0 *tls-index-lock*)
;; Restore OTHER.
(inst pop other))