diff options
Diffstat (limited to 'newlib/libc/sys/sysnecv850/crt0.S')
-rw-r--r-- | newlib/libc/sys/sysnecv850/crt0.S | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/newlib/libc/sys/sysnecv850/crt0.S b/newlib/libc/sys/sysnecv850/crt0.S deleted file mode 100644 index 15d94dc..0000000 --- a/newlib/libc/sys/sysnecv850/crt0.S +++ /dev/null @@ -1,77 +0,0 @@ -# NEC V850 startup code - - .section .text - .global _start - -_start: - -#if defined __v850e__ || defined __v850ea__ - - movea 255, r0, r20 - mov 65535, r21 - mov hilo(_stack), sp - mov hilo(__ep), ep - mov hilo(__gp), gp - mov hilo(__ctbp), r6 - ldsr r6, ctbp - mov hilo(_edata), r6 - mov hilo(_end), r7 -.L0: - st.w r0, 0[r6] - addi 4, r6, r6 - cmp r7, r6 - bl .L0 -.L1: - jarl ___main, r31 - addi -12, sp, sp - mov 0, r6 - mov 0, r7 - mov 0, r8 - jarl _main, r31 - mov r10, r6 - jarl _exit, r31 - -# else - movea 255, r0, r20 - mov r0, r21 - ori 65535, r0, r21 - movhi hi(_stack), r0, sp - movea lo(_stack), sp, sp - movhi hi(__ep), r0, ep - movea lo(__ep), ep, ep - movhi hi(__gp), r0, gp - movea lo(__gp), gp, gp - - /* Initialise the call table base pointer. - We do this even though we are supposedly - assembling this file for the v850 as this - allows us to use the same binary for all - versions of the v850 architecture. */ - - movhi hi(__ctbp), r0, r6 - movea lo(__ctbp), r6, r6 - ldsr r6, ctbp - - movhi hi(_edata), r0, r6 - movea lo(_edata), r6, r6 - movhi hi(_end), r0, r7 - movea lo(_end), r7, r7 -.L0: - st.b r0, 0[r6] - addi 1, r6, r6 - cmp r7, r6 - bl .L0 -.L1: - jarl ___main, r31 - addi -12, sp, sp - mov 0, r6 - mov 0, r7 - mov 0, r8 - jarl _main, r31 - mov r10, r6 - jarl _exit, r31 - -# endif - - .section .stack -_stack: .long 1 |