ARM linker scripts
Jon Ringle
jon@ringle.org
Thu Apr 24 12:18:00 GMT 2008
Jonathan,
I suspect the reason is to allow room for the installation of a FIQ handler.
From arch/arm/kernel/fiq.c:
void set_fiq_handler(void *start, unsigned int length)
{
memcpy((void *)0xffff001c, start, length);
flush_icache_range(0xffff001c, 0xffff001c + length);
if (!vectors_high())
flush_icache_range(0x1c, 0x1c + length);
}
Jon
> -----Original Message-----
> From: crossgcc-owner@sourceware.org [mailto:crossgcc-owner@sourceware.org]
> On Behalf Of Jonathan S. Shapiro
> Sent: Thursday, April 24, 2008 07:23
> To: crossgcc@sourceware.org
> Subject: ARM linker scripts
>
> This is probably a question for the binutils list, but I suspect people
> here may know the answer, because I suspect this is motivated by an
> embedded system issue.
>
> The ARM-elf linker scripts introduce a 256 byte gap between text and
> data.
>
> I could understand rounding up to next page. I could also understand not
> rounding up at all (following the convention of other platforms). What I
> do not understand is why 256 bytes makes any sense here.
>
> Does anybody happen to know?
>
>
> --
> For unsubscribe information see http://sourceware.org/lists.html#faq
--
For unsubscribe information see http://sourceware.org/lists.html#faq
More information about the crossgcc
mailing list