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

Subversion Repositories or1k

[/] [or1k/] [trunk/] [newlib-1.10.0/] [newlib/] [libc/] [sys/] [sh/] [crt0.S] - Diff between revs 1010 and 1765

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 1010 Rev 1765
        .section .text
        .section .text
        .global start
        .global start
start:
start:
        mov.l   stack_k,r15
        mov.l   stack_k,r15
        ! zero out bss
        ! zero out bss
        mov.l   edata_k,r0
        mov.l   edata_k,r0
        mov.l   end_k,r1
        mov.l   end_k,r1
        mov     #0,r2
        mov     #0,r2
start_l:
start_l:
         mov.l  r2,@r0
         mov.l  r2,@r0
        add     #4,r0
        add     #4,r0
        cmp/ge  r0,r1
        cmp/ge  r0,r1
        bt      start_l
        bt      start_l
#if defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY)
#if defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY)
        mov.l set_fpscr_k, r1
        mov.l set_fpscr_k, r1
        jsr @r1
        jsr @r1
        mov #0,r4
        mov #0,r4
        lds r3,fpscr
        lds r3,fpscr
#endif /*  defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY__) */
#endif /*  defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY__) */
        ! call the mainline
        ! call the mainline
        mov.l   main_k,r0
        mov.l   main_k,r0
        jsr     @r0
        jsr     @r0
        or      r0,r0
        or      r0,r0
        ! call exit
        ! call exit
        mov     r0,r4
        mov     r0,r4
        mov.l   exit_k,r0
        mov.l   exit_k,r0
        jsr     @r0
        jsr     @r0
        or      r0,r0
        or      r0,r0
        .align 2
        .align 2
#if defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY__)
#if defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY__)
set_fpscr_k:
set_fpscr_k:
        .long   ___set_fpscr
        .long   ___set_fpscr
#endif /*  defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(SH4_SINGLE_ONLY) */
#endif /*  defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(SH4_SINGLE_ONLY) */
stack_k:
stack_k:
        .long   _stack
        .long   _stack
edata_k:
edata_k:
        .long   _edata
        .long   _edata
end_k:
end_k:
        .long   _end
        .long   _end
main_k:
main_k:
        .long   _main
        .long   _main
exit_k:
exit_k:
        .long   _exit
        .long   _exit
#ifdef __ELF__
#ifdef __ELF__
        .section .stack,"aw"
        .section .stack,"aw"
#else
#else
        .section .stack
        .section .stack
#endif
#endif
 
 

powered by: WebSVN 2.1.0

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