diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-04-20 10:19:28 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-04-20 13:08:36 +0200 |
commit | fbcd7c8fa65eb695e96a62ea1c1ac7a024fa9dfc (patch) | |
tree | a17e285cf22cd49cd42e8b3ad562febc3987d566 /bsps/v850 | |
parent | bsps: Move console drivers to bsps (diff) | |
download | rtems-fbcd7c8fa65eb695e96a62ea1c1ac7a024fa9dfc.tar.bz2 |
bsps: Move start files to bsps
This patch is a part of the BSP source reorganization.
Update #3285.
Diffstat (limited to 'bsps/v850')
-rw-r--r-- | bsps/v850/gdbv850sim/start/start.S | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/bsps/v850/gdbv850sim/start/start.S b/bsps/v850/gdbv850sim/start/start.S new file mode 100644 index 0000000000..419e635393 --- /dev/null +++ b/bsps/v850/gdbv850sim/start/start.S @@ -0,0 +1,78 @@ +# NEC V850 startup code + + .section .text + .global _start + +_start: + +#if defined(__v850e__) || defined(__v850e2__) || defined(__v850e2v3__) + + 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 -16, sp, sp + mov 0, r6 + mov 0, r7 + mov 0, r8 + /* jarl _main, r31 */ + jarl _boot_card, 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 + + 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 -16, sp, sp + mov 0, r6 + mov 0, r7 + mov 0, r8 + /* jarl _main, r31 */ + jarl _boot_card, r31 + mov r10, r6 +.L2: + br .L2 + /* jarl _exit, r31 */ +# endif + +#if 0 + .section .stack +_stack: .long 1 +#endif + + .section .data + .global ___dso_handle + .weak ___dso_handle +___dso_handle: + .long 0 |