Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a615b47d authored by Vineet Gupta's avatar Vineet Gupta
Browse files

ARC: entry.S: confine EXCEPTION_* macros to one file

parent f033737e
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -368,6 +368,22 @@ ENTRY(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
; ---------------------------------------------
+1 −15
Original line number Diff line number Diff line
@@ -366,19 +366,5 @@ do_slow_path_pf:

	; Slow path TLB Miss handled as a regular ARC Exception
	; (stack switching / save the complete reg-file).
	EXCEPTION_PROLOGUE

	; ------- 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

	b  call_do_page_fault
END(EV_TLBMissD)