summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/moxie/moxiesim/start/start.S
blob: ae712cb3e43f4bbe009fe2dfb6e89d2db194de17 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* Copyright (C) 2011, 2013, 2014  Anthony Green */

/* moxie start up file. */

#include "bspopts.h"

#if defined(HAVE_OLD_MOXIE_ASM)
#define sub sub.l
#endif
	
        .text
        .global _start
_start:
        ldi.l   $sp, _stack     /* load up stack pointer */
        xor     $fp, $fp        /* zero fp to allow unwinders to stop */

        /* zero the bss area */
        ldi.l   $r0, __bss_start__
        xor     $r1, $r1
        ldi.l   $r2, __bss_end__
        sub     $r2, $r0
        jsra    memset

        ldi.l   $r0, 0x0        # pass in NULL
        jsra    boot_card
        jmpa    _start          # restart
.Lend:
        .size   _start,(.Lend-_start)