ARC: entry.S: confine EXCEPTION_* macros to one file
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>hifive-unleashed-5.1
parent
f033737e77
commit
a615b47dbf
|
@ -368,6 +368,22 @@ ENTRY(EV_TLBProtV)
|
||||||
|
|
||||||
END(EV_TLBProtV)
|
END(EV_TLBProtV)
|
||||||
|
|
||||||
|
; Wrapper for Linux page fault handler called from EV_TLBMiss*
|
||||||
|
; Very similar to ProtV handler case (6a) above, but avoids the extra checks
|
||||||
|
; for Misaligned access
|
||||||
|
;
|
||||||
|
ENTRY(call_do_page_fault)
|
||||||
|
|
||||||
|
EXCEPTION_PROLOGUE
|
||||||
|
lr r0, [efa] ; Faulting Data address
|
||||||
|
mov r1, sp
|
||||||
|
FAKE_RET_FROM_EXCPN r9
|
||||||
|
|
||||||
|
mov blink, ret_from_exception
|
||||||
|
b do_page_fault
|
||||||
|
|
||||||
|
END(call_do_page_fault)
|
||||||
|
|
||||||
; ---------------------------------------------
|
; ---------------------------------------------
|
||||||
; Privilege Violation Exception Handler
|
; Privilege Violation Exception Handler
|
||||||
; ---------------------------------------------
|
; ---------------------------------------------
|
||||||
|
|
|
@ -366,19 +366,5 @@ do_slow_path_pf:
|
||||||
|
|
||||||
; Slow path TLB Miss handled as a regular ARC Exception
|
; Slow path TLB Miss handled as a regular ARC Exception
|
||||||
; (stack switching / save the complete reg-file).
|
; (stack switching / save the complete reg-file).
|
||||||
EXCEPTION_PROLOGUE
|
b call_do_page_fault
|
||||||
|
|
||||||
; ------- setup args for Linux Page fault Hanlder ---------
|
|
||||||
mov_s r1, sp
|
|
||||||
lr r0, [efa]
|
|
||||||
|
|
||||||
; We don't want exceptions to be disabled while the fault is handled.
|
|
||||||
; Now that we have saved the context we return from exception hence
|
|
||||||
; exceptions get re-enable
|
|
||||||
|
|
||||||
FAKE_RET_FROM_EXCPN r9
|
|
||||||
|
|
||||||
bl do_page_fault
|
|
||||||
b ret_from_exception
|
|
||||||
|
|
||||||
END(EV_TLBMissD)
|
END(EV_TLBMissD)
|
||||||
|
|
Loading…
Reference in New Issue