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

Subversion Repositories or1k

[/] [or1k/] [tags/] [nog_patch_47/] [or1ksim/] [testbench/] [except.S] - Diff between revs 371 and 409

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 371 Rev 409
Line 33... Line 33...
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r0,lo(end_except)
        l.lwz   r10,lo(_excpt_buserr)(r0)
        l.movhi r10,hi(_excpt_buserr)
 
        l.ori   r10,r10,lo(_excpt_buserr)
 
        l.lwz   r10,0x0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0x300
        .org    0x300
_dpfault_vector:
_dpfault_vector:
Line 45... Line 47...
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r0,lo(end_except)
        l.lwz   r10,lo(_excpt_dpfault)(r0)
        l.movhi r10,hi(_excpt_dpfault)
 
        l.ori   r10,r10,lo(_excpt_dpfault)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0x400
        .org    0x400
_ipfault_vector:
_ipfault_vector:
Line 57... Line 61...
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r0,lo(end_except)
        l.lwz   r10,_excpt_ipfault(r0)
        l.movhi r10,hi(_excpt_ipfault)
 
        l.ori   r10,r10,lo(_excpt_ipfault)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0x500
        .org    0x500
_lpint_vector:
_lpint_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_lpint(r0)
        l.movhi r10,hi(_excpt_lpint)
 
        l.ori   r10,r10,lo(_excpt_lpint)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0x600
        .org    0x600
_align_vector:
_align_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_align(r0)
        l.movhi r10,hi(_excpt_align)
 
        l.ori   r10,r10,lo(_excpt_align)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0x700
        .org    0x700
_illinsn_vector:
_illinsn_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_illinsn(r0)
        l.movhi r10,hi(_excpt_illinsn)
 
        l.ori   r10,r10,lo(_excpt_illinsn)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0x800
        .org    0x800
_hpint_vector:
_hpint_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_hpint(r0)
        l.movhi r10,hi(_excpt_hpint)
 
        l.ori   r10,r10,lo(_excpt_hpint)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0x900
        .org    0x900
_dtlbmiss_vector:
_dtlbmiss_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_dtlbmiss(r0)
        l.movhi r10,hi(_excpt_dtlbmiss)
 
        l.ori   r10,r10,lo(_excpt_dtlbmiss)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0xa00
        .org    0xa00
_itlbmiss_vector:
_itlbmiss_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_itlbmiss(r0)
        l.movhi r10,hi(_excpt_itlbmiss)
 
        l.ori   r10,r10,lo(_excpt_itlbmiss)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0xb00
        .org    0xb00
_range_vector:
_range_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_range(r0)
        l.movhi r10,hi(_excpt_range)
 
        l.ori   r10,r10,lo(_excpt_range)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0xc00
        .org    0xc00
_syscall_vector:
_syscall_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,lo(_excpt_syscall)(r0)
        l.movhi r10,hi(_excpt_syscall)
 
        l.ori   r10,r10,lo(_excpt_syscall)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0xd00
        .org    0xd00
_break_vector:
_break_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_break(r0)
        l.movhi r10,hi(_excpt_break)
 
        l.ori   r10,r10,lo(_excpt_break)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
        .org    0xe00
        .org    0xe00
_trap_vector:
_trap_vector:
        l.addi  r1,r1,-116
        l.addi  r1,r1,-116
        l.sw    0x18(r1),r9
        l.sw    0x18(r1),r9
        l.jal   store_regs
        l.jal   store_regs
        l.nop
        l.nop
        l.movhi r9,hi(end_except)
        l.movhi r9,hi(end_except)
        l.ori   r9,r0,lo(end_except)
        l.ori   r9,r9,lo(end_except)
        l.lwz   r10,_excpt_trap(r0)
        l.movhi r10,hi(_excpt_trap)
 
        l.ori   r10,r10,lo(_excpt_trap)
 
        l.lwz   r10,0(r10)
        l.jr    r10
        l.jr    r10
        l.nop
        l.nop
 
 
store_regs:
store_regs:
        l.sw    0x00(r1),r3
        l.sw    0x00(r1),r3

powered by: WebSVN 2.1.0

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