[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