Redefine symbol TLS slot indices.
authorAlastair Bridgewater <nyef_sbcl@lisphacker.com>
Mon, 28 Dec 2009 21:31:02 +0000 (16:31 -0500)
committerAlastair Bridgewater <nyef@virtdev-1.lisphacker.com>
Wed, 19 Oct 2011 19:49:32 +0000 (15:49 -0400)
commitf5bb745fdcc44fb8781c188ee8a909efbca79f7b
tree10a9c706937727b810e6be6441d4df6d8bbf53f7
parentc4cf289fd86cb3008935ecd04312865a36e28976
Redefine symbol TLS slot indices.

  * Instead of having symbol TLS slots be fixnum indices treat them as
byte offsets from the base of the thread structure.

  * This has no effect on the compiler or backends.

  * TLS slot allocation must now be done in terms of words, not fixnums.

  * In %{set-,}symbol-value-in-thread, use get-lisp-obj-address instead
of scaling the TLS index.

  * Use explicit WORD_SHIFT instead of make_fixnum() / fixnum_value() in
the runtime.
src/assembly/x86-64/alloc.lisp
src/assembly/x86/alloc.lisp
src/code/target-thread.lisp
src/runtime/dynbind.c
src/runtime/gencgc.c
src/runtime/thread.c
src/runtime/thread.h