Re: TLS on powerpc(32/64)

Prosun Niyogi
2006-09-22T19:01:34Z

Apologies, I incorrectly reported that the lm address
was wrong. Actually, both lm and addr (as reported by
td_thr_tls_get_addr_p) are the same.. ie,
tg_thr_tls_get_addr_p returns the address of lm,
rather than the address of the variable.

--Prosun Niyogi

--- Michael Snyder <Michael.Snyder@palmsource.com>
wrote:

> On Fri, 2006-09-22 at 11:18 -0700, Prosun Niyogi
> wrote:
> > Hi, thanks for your response. No, it isnt a
> > glibc/libthread_db version problem ... I've built
> the
> > same sources for ia32 and the test passes fine. It
> on
> > powerpc that I see the failure.
> >
> > So, after a little digging, it seems like the load
> > module address that gdb is using to make the call
> to
> > td_thr_tls_get_addr_p is bogus. At the moment, I
> am
> > comparing results with gdb-6.3 which works in my
> > envrionment. The offset to the variable within LM
> > looks fine. Still debugging. I am not too sure of
> what
> > the concept of the load module address is. Where
> would
> > be the appropriate place to look for background
> info?
> > glibc TLS documentation?
> >
> > The lm_addr calculated in dwarf2loc.c looks bad on
> > ppc.
>
> That's a little beyond my knowledge. Could it be a
> 32/64
> wordsize issue? A sign extension issue?