Xiao-Feng, Even if you do not need to have constant offsets, it's better to use TM directly to allocate TLS slots. In this case we can remove extra code from VM: the computation of the third parameter in the next method:
extern Managed_Object_Handle (*gc_alloc_fast)(unsigned size, Allocation_Handle type, void *thread_pointer); On 10/25/06, Mikhail Fursov <[EMAIL PROTECTED]> wrote:
On 10/25/06, Xiao-Feng Li <[EMAIL PROTECTED]> wrote: > > Why do we need multiple slots? Can't we use just one slot, which > stores a pointer to a user data structure (the GC_Thread_Info in this > case)? > Yes you can store a pointer. But in this case you can't tell that you have constant offset from fs[14] to your data for all threads. So you can't inline your helper in JIT. -- Mikhail Fursov
-- Mikhail Fursov