Hello! "Andy Wingo" <wi...@pobox.com> writes:
> commit a2a6c0e319b5c146c484cb1fe8ffc9b14b9a9876 > Author: Andy Wingo <wi...@pobox.com> > Date: Fri May 6 00:17:35 2011 +0200 > > avoid tls gets when handling interrupts in the vm > > * libguile/__scm.h (SCM_ASYNC_TICK_WITH_CODE): Redefine to take a > scm_i_thread* as well. OK to do because it's within a > BUILDING_LIBGUILE block. > > * libguile/vm-engine.c (vm_engine): Cache the scm_i_thread* instead of > the dynstate, so we can use the thread for ticks. > > * libguile/vm-engine.h (VM_HANDLE_INTERRUPTS): Tick with the > scm_i_thread* local var, to avoid excessive tls calls. > > * libguile/vm-i-system.c: Fix dynstate users to use > current_thread->dynamic_state. What effect does it have on performance? Registers are scarce on x86... Message <877hv9a5z5....@gnu.org> (aka. <http://thread.gmane.org/gmane.lisp.guile.devel/9444>) might be relevant. Thanks, Ludo’.