.text | |
.global _start | |
_start: | |
_reset_handler: | |
xor r0, r0, r0 | |
mvhi r1, hi(_start) | |
ori r1, r1, lo(_start) | |
wcsr eba, r1 | |
wcsr deba, r1 | |
mvhi sp, hi(_fstack) | |
ori sp, sp, lo(_fstack) | |
bi _main | |
_breakpoint_handler: | |
ori r25, r25, 1 | |
addi ra, ba, 4 | |
ret | |
nop | |
nop | |
nop | |
nop | |
nop | |
_instruction_bus_error_handler: | |
ori r25, r25, 2 | |
addi ra, ea, 4 | |
ret | |
nop | |
nop | |
nop | |
nop | |
nop | |
_watchpoint_handler: | |
ori r25, r25, 4 | |
addi ra, ba, 4 | |
ret | |
nop | |
nop | |
nop | |
nop | |
nop | |
_data_bus_error_handler: | |
ori r25, r25, 8 | |
addi ra, ea, 4 | |
ret | |
nop | |
nop | |
nop | |
nop | |
nop | |
_divide_by_zero_handler: | |
ori r25, r25, 16 | |
addi ra, ea, 4 | |
ret | |
nop | |
nop | |
nop | |
nop | |
nop | |
_interrupt_handler: | |
ori r25, r25, 32 | |
addi ra, ea, 4 | |
ret | |
nop | |
nop | |
nop | |
nop | |
nop | |
_system_call_handler: | |
ori r25, r25, 64 | |
addi ra, ea, 4 | |
ret | |
nop | |
nop | |
nop | |
nop | |
nop | |