ARM linker scripts

Jon Ringle
Thu Apr 24 12:18:00 GMT 2008


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);


> -----Original Message-----
> From: []
> On Behalf Of Jonathan S. Shapiro
> Sent: Thursday, April 24, 2008 07:23
> To:
> 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

For unsubscribe information see

More information about the crossgcc mailing list