Re: thread-ready ABIs
From: Ulrich Drepper <hidden>
Date: 2002-01-18 22:44:56
"Maciej W. Rozycki" [off-list ref] writes:
Where did you get extraneous registers for the i386 from (especially given the usual register shortage there)?
%gs
Maybe we could use the same approach for MIPS.
I doubt it.
Where to look for the code in glibc in a current snapshot?
%gs is used for a long time linuxthreads/sysdeps/386/useldt.h
One possible approach is to reserve GOT entries for thread registers. While not as fast as CPU's registers, if frequently accessed they would stick in the cache. Since the ABI mandates the code to keep a pointer to the GOT in the gp register, accesses to got entries need only a single instruction. I haven't thought on it much -- someone might have a better idea.
How would you have different values for different threads? It would mean having multiple GOTs which is a resource waste and a nightmare in resource management. -- ---------------. ,-. 1325 Chesapeake Terrace Ulrich Drepper \ ,-------------------' \ Sunnyvale, CA 94089 USA Red Hat `--' drepper at redhat.com `------------------------