crt0 formalization
Joel Sherrill
joel.sherrill@oarcorp.com
Sun Dec 10 07:41:00 GMT 2006
Jeff Johnston wrote:
> Joel Sherrill wrote:
>> Andrew_Pinski@PlayStation.Sony.Com wrote:
>>> newlib-owner@sourceware.org wrote on 12/07/2006 08:59:51 AM:
>>>
>>>
>>>> Otherwise, I suggest we leave the patch as-is and then also add the
>>>> code
>>>
>>>
>>>> to libc/machine/spu where configure tells it to be added or not
>>>> (e.g. spu-*-rtems, add the two files). Seem reasonable?
>>>>
>>>
>>> SPU-elf is really a special target, it can never be used alone, in
>>> that it needs
>>> another target to communicate with (in all cases right now it is
>>> either a powerpc64-linux
>>> or powerpc-linux or the PS3 game OS). When someone goes out of
>>> their way to create a
>>> powerpc64-*-rtems, they most likely will also use the same interface
>>> for the SPU as it is
>>> a target independent interface.
>>>
>>>
>>
>> I must be missing something in this. I understand the architectural
>> relationship between the PowerPC and SPUs. But are you saying
>> spu-elf is
>> the only target that will ever make sense to use for an SPU because you
>> would really run your choice of OS on the PowerPC side so that's the
>> target that would vary?
>>
>> If I understood you correctly, it doesn't justify putting crt[in] in
>> libgloss. It just means that
>> there is only one valid spu target and it always uses the same
>> crt[in]. That seems to me that
>> it makes gcc the more likely place to put it since it won't be tied
>> to any particular C library.
>>
>> Believe it or not, I'm not picking on the spu specifically. I
>> haven't heard one convincing
>> argument for crt[in] not being in gcc for any target yet. The only
>> support for them being
>> is libgloss is some documentation and 4 targets that did it with no
>> obvious justification
>> looking at the code. No clearly board dependent example crt[in] has
>> been produced.
>> For all I know the documentation was changed to account for the 4
>> being in libgloss
>> and those weren't questioned when they were put in.
>>
>> I hate to keep dragging this out. I just remain unconvinced.
>> --joel
>
> I would like to stress that newlib 1.15.0 is coming due. If the patch
> is accepted as-is, there is nothing to prevent the crti/n files from
> being added to gcc later (and later removed from libgloss). If
> someone from the spu group wants to stand up and agree to make a gcc
> patch, I'll be happy to take the files out of the patch now and check
> the remainder in.
>
Don't hold up newlib 1.15.0 for this. Put it where ever they want and
move on.
> If this is attempting to evolve into a policy regarding what gcc must
> provide on their side of the fence, then I believe that it should
> probably move to the gcc list.
>
Unless someone has a good case against it, I think that's what I am
proposing. crt[in] shouldn't be in
newlib at all and should only be in libgloss if there is a demonstrable
requirement to be board specific.
So far, no one has produced a case that requires crt[in] to be anywhere
but gcc.
--joel
> -- Jeff J.
More information about the Newlib
mailing list