[PATCH] cell spu offloading printf and friends
Jeff Johnston
jjohnstn@redhat.com
Sat Dec 16 03:57:00 GMT 2006
jschopp wrote:
> Jeff Johnston wrote:
>> What about errno?
>
> Since errno is always returned in the same slot it is handled by the
> helper function, see this line:
> >> + errno = ret->slot[3];
>
Missed that.
>
>> What about the reentrancy struct which contains errno for the current
>> thread?
>
> The cell spu is single threaded, so I don't think it's necessary. Be
> happy to add a line if I'm wrong, which is not unheard of.
>
Not at present.
>> Is there any storage allocated by any of the routines? Who cleans it
>> up?
>
> The only storage is allocated on the spu is on the stack and thus goes
> away on function return.
>
>> Are positional parameters supported by the printf family? If not, do
>> you need them for NLS?
>
> I suppose I don't know what positional parameters are. The only
> supported locale on the spu is the C locale, publicly documented by
> definition of the architecture. In any case the parameters just get
> shuffled around on the other side and currently are handled by glibc in
> the end.
>
So, if I understand correctly, you're punting functionality to another
processor which has a full glibc on it. If you have a glibc
implementation then yes, you have positional parameter support and more.
>>
>> What testing has been performed?
>
> This has all gone through our testing for the SDK 2.0
> http://www.bsc.es/projects/deepcomputing/linuxoncell/ A number of
> different groups tested that release in various ways. I personally ran
> the limited newlib test suite and the rather decent gcc testsuite on
> it. I also wrote a few custom testcases. Sony has been using these
> patches too, and I'm sure they've done some amount of testing, because
> they found the same bugs we did and offered similar fixes as we had done.
>
Ok, that's what I was needing to hear.
>>
>> With all the questions I have, I am very doubtful about this being put
>> into 1.15.0.
>
> Well, I'll save myself the trouble of sending the follow on until we can
> work out this one. It's ultimately your decision what goes in or
> doesn't. But something to keep in mind is that everyone who actually
> uses newlib on the spu will be using this patch if it is in or not. The
> current method is simply not viable for real use.
>
>
My questions have been answered.
-- Jeff J.
More information about the Newlib
mailing list