[PATCH] Re: sparc64-elf crt0.o fails to compile
Yaakov Selkowitz
yselkowi@redhat.com
Fri Dec 26 05:29:00 GMT 2014
On 2014-12-25 22:52, Yaakov Selkowitz wrote:
> On 2014-12-25 21:48, Gedare Bloom wrote:
>> Without looking at the source--this error refers to using a global
>> register other than g0 or g1 without "declaring" it as used. Most
>> often this presents as g2 or g3. The ABI restricts the use of global
>> registers. You need to add:
>>
>> .register %g2, #scratch
>>
>> to the top of the assembly file to specify that g2 is used in the
>> assembly.
>
> OK, thanks for the hint. I used the attached patch to get
> newlib/libgloss to compile for sparc64-elf.
>
> 2014-12-25 Yaakov Selkowitz <yselkowi@...>
>
> libgloss/
> * sparc/crt0.S: Declare use of system registers.
> * sparc/cygmon-crt0.S: Ditto.
> * sparc/erc32-crt0.S: Ditto.
> * sparc/traps.S: Ditto.
>
> newlib/
> * libc/sys/sparc64/sys/time.h: #include <time.h> for time_t.
Sorry, wrong patch, this should have been <sys/types.h>.
--
Yaakov Selkowitz
Associate Software Engineer, ARM
Red Hat, Inc.
More information about the Newlib
mailing list