This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.
Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
On Wed, Sep 27, 2000 at 05:25:21PM +0200, schwidefsky@de.ibm.com wrote: > Access register 0 is unused anywhere so we could just use this one. > We can't address data directly with this register but we can load it to a > normal register in one cycle. I will take a look at the pthread > implementation and give it a try. This is very similar to Alpha's situation (though it takes more like 5-10 cycles to get into PALmode and back out again with the value. Certainly it's faster than playing stack games (which wouldn't even work with the stuff we're now discussing)). To be sure, ideally you'd teach gcc about this register, and how to move data to and from. You'd mark it fixed, since you're reserving it for the thread ABI. Then you can implement pthreads with register struct _pthread_descr_struct *__thread_self __asm__("acc0"); #define THREAD_SELF __thread_self Now gcc can properly schedule the code, which would not be true with inline assembly. r~
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |