OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [uClibc/] [ldso/] [ldso/] [arm/] [boot1_arch.h] - Rev 1765

Compare with Previous | Blame | View Log

/* Any assmbly language/system dependent hacks needed to setup boot1.c so it
 * will work as expected and cope with whatever platform specific wierdness is
 * needed for this architecture.  */
 
/* Overrive the default _dl_boot function, and replace it with a bit of asm.
 * Then call the real _dl_boot function, which is now named _dl_boot2. */
 
asm("" \
"	.text\n"			\
"	.globl	_dl_boot\n"		\
"_dl_boot:\n"				\
"	mov	r7, sp\n"		\
"	@ldr	r0, [sp], #4\n"		\
"	mov	r0, sp\n"		\
"	bl	_dl_boot2\n"		\
"	mov	r6, r0\n"		\
"	mov	r0, r7\n"		\
"	mov	pc, r6\n"		\
);
 
#define _dl_boot _dl_boot2
#define LD_BOOT(X)   static void *  __attribute__ ((unused)) _dl_boot (X)
 
 
 /* It seems ARM needs an offset here */
#undef ELFMAGIC
#define	    ELFMAGIC	ELFMAG+load_addr 
 
 
 
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.