[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.1-33-ga2
From: |
Ludovic Courtès |
Subject: |
Re: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.1-33-ga2a6c0e |
Date: |
Sat, 07 May 2011 20:27:54 +0200 |
User-agent: |
Gnus/5.110017 (No Gnus v0.17) Emacs/24.0.50 (gnu/linux) |
Hello!
"Andy Wingo" <address@hidden> writes:
> commit a2a6c0e319b5c146c484cb1fe8ffc9b14b9a9876
> Author: Andy Wingo <address@hidden>
> 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 <address@hidden>
(aka. <http://thread.gmane.org/gmane.lisp.guile.devel/9444>) might be
relevant.
Thanks,
Ludo’.
- Re: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.1-33-ga2a6c0e,
Ludovic Courtès <=