This is the mail archive of the
mailing list for the newlib project.
Re: [Patch, AArch64] Update crt0.S to be ILP32-friendly
- From: Corinna Vinschen <vinschen at redhat dot com>
- To: newlib at sourceware dot org
- Date: Tue, 25 Jun 2013 14:06:32 +0200
- Subject: Re: [Patch, AArch64] Update crt0.S to be ILP32-friendly
- References: <51C820CD dot 5090405 at arm dot com>
- Reply-to: newlib at sourceware dot org
On Jun 24 11:34, Yufeng Zhang wrote:
> * aarch64/crt0.S (GEN_DWORD): New macro definition.
> (PTR_REG): Ditto.
> (PTR_SIZE): Ditto.
> (PTR_LOG_SIZE): Ditto.
> (start): Use GEN_DWORD to replace the .dword of HeapBase,
> __bss_start__, __bss_end__, FUNCTION(_fini), env and
> CommandLine; when __ILP32__ is defined, set the stack base to
> the top end of the 32-bit address space if the returned value
> from the Angel API call is larger than or equal to 4 GiB.
> Also carry out sanity check on the heap base; abort if the
> base is larger than or equal to 4 GiB. Use other new
> macros in the instructions that processes the argv arrays.
> (StackBase): New lable; replace __stack_base__.
> (__stack_base__): Set with StackBase or StackBase + 4.