diff options
Diffstat (limited to 'libc/sysdeps/linux/cris/crt0.S')
-rw-r--r-- | libc/sysdeps/linux/cris/crt0.S | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/libc/sysdeps/linux/cris/crt0.S b/libc/sysdeps/linux/cris/crt0.S deleted file mode 100644 index 5b5834028..000000000 --- a/libc/sysdeps/linux/cris/crt0.S +++ /dev/null @@ -1,72 +0,0 @@ -;; Startup code compiant to the ELF CRIS ABI. -;; -;; Highly based on code from glibc. - -#include <sysdep.h> - - .syntax no_register_prefix - - .text - .globl _start - .type _start,@function - -#if defined L_crt0 || ! defined __UCLIBC_CTOR_DTOR__ - .type __uClibc_main,@function -#else - .weak _init - .weak _fini - .type __uClibc_start_main,@function -#endif - - ;; Setup a dummy reference to main so that if an application is linking - ;; when the main() function is in a static library we can be sure that - ;; the main() actually gets linked in. - .type main,@function - -_start: - ;; Clear the frame pointer, to mark the outermost frame. - moveq 0, r8 - - move.d [sp],r11 - move.d sp,[sp] - move.d sp,r12 - addq 4,r12 - push r9 - -#ifdef __PIC__ - move.d pc,r0 - sub.d .:GOTOFF,r0 - move.d _init:PLTG,r13 - add.d r0,r13 - move.d _fini:PLTG,r9 - add.d r0,r9 - move.d main:PLTG,r10 - add.d r0,r10 -#else - move.d _init,r13 - move.d _fini,r9 - move.d main,r10 -#endif - - push r9 - -#if (defined L_crt1 || defined L_gcrt1) && defined __UCLIBC_CTOR_DTOR__ - PLTCALL(__uClibc_start_main) -#else - PLTCALL(__uClibc_main) -#endif - - ;; Crash if 'exit' returns. - test.d [6502] -0: - ba 0b - nop - -/* Define a symbol for the first piece of initialized data. */ - .data - .globl __data_start -__data_start: - .long 0 - .weak data_start - data_start = __data_start - |