On Mon, May 31, 2004 at 08:05:24PM -0300, Guido Guenther wrote:
> Hi,
> Now that gcc 3.4 has incompatible ABI changes (on o32 mostly affecting
> mipsel) I've been discussing with Thiemo if I'd be the right point to
> take this ABI change as a possibility to additionally reserve a TLS
> register.
> He suggested $24 (t8) another discussed possibility would be $27 (k1)
> which is already abused by the PS/2 folks for ll/sc emulation.
> Another possibility would be to reserve such a register only in the
> n32/n64 ABIs and let o32 stay without __thread and TLS forever.
Sigh, we'e been through this really often enough. Reserving a register
comes at a price so my approach was to implement a fast path in the
exception code. I've benchmarked that long time ago; it had less than
half the overhead than normal syscall and such a function would be subject
to normal code optimizations so calls should be few only. Alpha already
does something similar using their PAL code.
Ralf