From: Alastair B. <lis...@us...> - 2011-10-26 01:17:18
|
The branch "master" has been updated in SBCL: via c86681a2f572eb2181c0dd6d2e0b0d4486df1dff (commit) from ae9741f992d37df9b5b05ddf79260ae29e9ebab9 (commit) - Log ----------------------------------------------------------------- commit c86681a2f572eb2181c0dd6d2e0b0d4486df1dff Author: Alastair Bridgewater <ny...@vi...> Date: Tue Oct 25 18:39:29 2011 -0400 threads: Thread objects don't need a lowtag. * It was a cute hack, in a way, to force the existing genesis machinery to produce assembler symbols for thread structure slots. But it's still a hack, and needs to die. And now it can. --- src/compiler/generic/objdef.lisp | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/src/compiler/generic/objdef.lisp b/src/compiler/generic/objdef.lisp index ccad11b..79c9051 100644 --- a/src/compiler/generic/objdef.lisp +++ b/src/compiler/generic/objdef.lisp @@ -376,9 +376,7 @@ ;;; in c-land. However, we need sight of so many parts of it from Lisp that ;;; it makes sense to define it here anyway, so that the GENESIS machinery ;;; can take care of maintaining Lisp and C versions. -;;; Hence the even-fixnum lowtag just so we don't get odd(sic) numbers -;;; added to the slot offsets -(define-primitive-object (thread :lowtag even-fixnum-lowtag) +(define-primitive-object (thread) ;; no_tls_value_marker is borrowed very briefly at thread startup to ;; pass the address of initial-function into new_thread_trampoline. ;; tls[0] = NO_TLS_VALUE_MARKER_WIDETAG because a the tls index slot ----------------------------------------------------------------------- hooks/post-receive -- SBCL |