From 348d1ba6cd5a3e718e6f5e2f4826dc7e791ad83c Mon Sep 17 00:00:00 2001 From: Stas Boukarev Date: Thu, 15 Aug 2013 22:02:54 +0400 Subject: [PATCH] Add a memory barrier inside pseudo-atomic on PPC. Solves problems with allocation and multiple threads. --- src/compiler/ppc/macros.lisp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/compiler/ppc/macros.lisp b/src/compiler/ppc/macros.lisp index 645c566..1905a7f 100644 --- a/src/compiler/ppc/macros.lisp +++ b/src/compiler/ppc/macros.lisp @@ -354,6 +354,7 @@ (inst twi :ne ,flag-tn 0)) (inst ori alloc-tn alloc-tn pseudo-atomic-flag)) ,@forms + (inst sync) (without-scheduling () (inst subi alloc-tn alloc-tn pseudo-atomic-flag) ;; Now test to see if the pseudo-atomic interrupted bit is set. -- 1.7.10.4