URL
https://opencores.org/ocsvn/or1k_old/or1k_old/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 1623 |
Rev 1765 |
/* mon960 head.S code: should be extremely simple, since mon960 takes care
|
/* mon960 head.S code: should be extremely simple, since mon960 takes care
|
of almost all our requirements for us. We're at ipl 31 (highest),
|
of almost all our requirements for us. We're at ipl 31 (highest),
|
interrupts are off, we have a C stack frame set up for us, etc.
|
interrupts are off, we have a C stack frame set up for us, etc.
|
This is modelled after the alpha head.S (excerpt below), which
|
This is modelled after the alpha head.S (excerpt below), which
|
actually does some other cruft before calling start_kernel, but without
|
actually does some other cruft before calling start_kernel, but without
|
knowning the alpha instruction set I can't tell for sure what's
|
knowning the alpha instruction set I can't tell for sure what's
|
happening.
|
happening.
|
|
|
For now I'll stick with just a call, as it seems to work in other
|
For now I'll stick with just a call, as it seems to work in other
|
places.
|
places.
|
|
|
alpha head.S:
|
alpha head.S:
|
__start:
|
__start:
|
br $27,1f
|
br $27,1f
|
1: ldgp $29,0($27)
|
1: ldgp $29,0($27)
|
lda $27,start_kernel
|
lda $27,start_kernel
|
jsr $26,($27),start_kernel
|
jsr $26,($27),start_kernel
|
halt
|
halt
|
.end __start
|
.end __start
|
*/
|
*/
|
|
|
|
|
#define __ASSEMBLY__
|
#define __ASSEMBLY__
|
#include
|
#include
|
|
|
.align 4
|
.align 4
|
.globl _stext
|
.globl _stext
|
.globl __start
|
.globl __start
|
.ent __start
|
.ent __start
|
|
|
_stext:
|
_stext:
|
__start:
|
__start:
|
call start_kernel
|
call start_kernel
|
halt
|
halt
|
.end __start
|
.end __start
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.