[RFC v2][PATCH 15/27] Add Infinity THREAD_SELF macros to sysdeps/sparc/nptl/tls.h

Gary Benson gbenson@redhat.com
Mon Jun 13 14:05:00 GMT 2016


Hi Andreas,

Andreas Schwab wrote:
> Gary Benson <gbenson@redhat.com> writes:
> > +/* Magic for Infinity to know how to do THREAD_SELF.  */
> > +# define I8_THREAD_SELF I8_TS_REGISTER
> > +# if __WORDSIZE == 32
> > +#  define I8_TS_REG_OFFSET 10 * 4
> > +# else
> > +#  define I8_TS_REG_OFFSET (6 * 8) + (__WORDSIZE==64?0:4)
> 
> __WORDSIZE is always 64 here.

I was trying to make sense of what sparc is doing for libthread_db
too.  It has:

  # define DB_THREAD_SELF \
    REGISTER (32, 32, 10 * 4, 0) \
    REGISTER (64, __WORDSIZE, (6 * 8) + (__WORDSIZE==64?0:4), 0)

Similarly s390 has:

  # define DB_THREAD_SELF REGISTER (32, 32, 18 * 4, 0) \
                          REGISTER (64, __WORDSIZE, 18 * 8, 0)

Could the __WORDSIZE in both of those be replaced with 64?

Thanks,
Gary

-- 
http://gbenson.net/



More information about the Libc-alpha mailing list