|
@@ -38,6 +38,7 @@
|
|
; to handle the fault.
|
|
; to handle the fault.
|
|
.macro MMU_BUS_FAULT_HANDLER handler, mmu, we, ex
|
|
.macro MMU_BUS_FAULT_HANDLER handler, mmu, we, ex
|
|
.globl \handler
|
|
.globl \handler
|
|
|
|
+ .type \handler,"function"
|
|
\handler:
|
|
\handler:
|
|
SAVE_ALL
|
|
SAVE_ALL
|
|
move \mmu, $srs ; Select MMU support register bank
|
|
move \mmu, $srs ; Select MMU support register bank
|
|
@@ -52,6 +53,7 @@
|
|
nop
|
|
nop
|
|
ba ret_from_intr
|
|
ba ret_from_intr
|
|
nop
|
|
nop
|
|
|
|
+ .size \handler, . - \handler
|
|
.endm
|
|
.endm
|
|
|
|
|
|
; Refill handler. Three cases may occur:
|
|
; Refill handler. Three cases may occur:
|
|
@@ -84,6 +86,7 @@
|
|
2: .dword 0 ; last_refill_cause
|
|
2: .dword 0 ; last_refill_cause
|
|
.text
|
|
.text
|
|
.globl \handler
|
|
.globl \handler
|
|
|
|
+ .type \handler, "function"
|
|
\handler:
|
|
\handler:
|
|
subq 4, $sp
|
|
subq 4, $sp
|
|
; (The pipeline stalls for one cycle; $sp used as address in the next cycle.)
|
|
; (The pipeline stalls for one cycle; $sp used as address in the next cycle.)
|
|
@@ -196,6 +199,7 @@
|
|
; Return
|
|
; Return
|
|
ba ret_from_intr
|
|
ba ret_from_intr
|
|
nop
|
|
nop
|
|
|
|
+ .size \handler, . - \handler
|
|
.endm
|
|
.endm
|
|
|
|
|
|
; This is the MMU bus fault handlers.
|
|
; This is the MMU bus fault handlers.
|