Looks like threading is b0rken on FreeBSD/powerpc

Marcel Moolenaar marcel at xcllnt.net
Fri Aug 4 21:38:52 UTC 2006


On Fri, Aug 04, 2006 at 02:07:20PM -0700, Peter Grehan wrote:
> >Question:
> >	struct pcb has an array called pcb_context, which is
> >used to store non-volatile registers. The ABI tells me that
> >general registers 13 to 31 are to be saved. FreeBSD also saves
> >R12, according to the operands of the stmw intruction and the
> >description of that instruction.
> >
> >Is this observation correct (i.e. that we also save R12 in the
> >PCB) and is this intentional?
> 
>  It was. At the time there was register corruption and I think I 
> decided to be more safe than sorry. I may have been reading something 
> about r12 in the EABI that led me to believe that it needed to be saved.
> 
>  I don't believe there's any need for it to be saved.

Ok, thanks. I won't worry about it right now, but it does affect GDB
when it's changed (if it's changed) in an incompatible way. For now,
I'll have GDB skip r12 so that we have the option later to not save
r12.

FYI,

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel at xcllnt.net


More information about the freebsd-ppc mailing list