projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
1.0.23.38: fix bug 430 (stack alloc by nested defstruct constructors)
[sbcl.git]
/
src
/
assembly
/
x86-64
/
alloc.lisp
diff --git
a/src/assembly/x86-64/alloc.lisp
b/src/assembly/x86-64/alloc.lisp
index
68a8ce3
..
63444e4
100644
(file)
--- a/
src/assembly/x86-64/alloc.lisp
+++ b/
src/assembly/x86-64/alloc.lisp
@@
-94,8
+94,7
@@
(emit-label get-tls-index-lock)
(inst mov target 1)
(zeroize rax-tn)
(emit-label get-tls-index-lock)
(inst mov target 1)
(zeroize rax-tn)
- (inst lock)
- (inst cmpxchg (make-ea-for-symbol-value *tls-index-lock*) target)
+ (inst cmpxchg (make-ea-for-symbol-value *tls-index-lock*) target :lock)
(inst jmp :ne get-tls-index-lock)
;; The symbol is now in OTHER.
(inst pop other)
(inst jmp :ne get-tls-index-lock)
;; The symbol is now in OTHER.
(inst pop other)