X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fassembly%2Fx86-64%2Falloc.lisp;h=35af80ae8718b9d3d7cd1261663eb9a282501e2f;hb=f7faed97898dd0e94a18b0d1fca03aaa0fe24ab0;hp=7fd309b3c9a88cb277b87f2030a5deb1d244f557;hpb=55f790051c0ebd727777da5f8b6541d87dd49b38;p=sbcl.git diff --git a/src/assembly/x86-64/alloc.lisp b/src/assembly/x86-64/alloc.lisp index 7fd309b..35af80a 100644 --- a/src/assembly/x86-64/alloc.lisp +++ b/src/assembly/x86-64/alloc.lisp @@ -109,13 +109,13 @@ (load-symbol-value target *free-tls-index*) (let ((not-error (gen-label)) (error (generate-error-code nil 'tls-exhausted-error))) - (inst cmp target (fixnumize tls-size)) + (inst cmp target (ash tls-size word-shift)) (inst jmp :l not-error) (%clear-pseudo-atomic) (inst jmp error) (emit-label not-error)) (inst add (make-ea-for-symbol-value *free-tls-index*) - (fixnumize 1)) + n-word-bytes) (storew target other symbol-tls-index-slot other-pointer-lowtag) (emit-label release-tls-index-lock) ;; No need for barriers on x86/x86-64 on unlock.