Commit 4bf4564b authored by Vineet Gupta's avatar Vineet Gupta
Browse files

ARC: entry.S: comments cleanup

parent a8717d28
Loading
Loading
Loading
Loading
+20 −26
Original line number Diff line number Diff line
@@ -322,13 +322,8 @@ ENTRY(EV_TLBProtV)

	EXCEPTION_PROLOGUE

	;---------(3) Save some more regs-----------------
	;  vineetg: Mar 6th: Random Seg Fault issue #1
	;  ecr and efa were not saved in case an Intr sneaks in
	;  after fake rtie

	lr  r2, [ecr]
	lr  r0, [efa]	; Faulting Data address
	lr  r0, [efa]	; Faulting Data addr (not part of pt_regs saved above)

	; Exception auto-disables further Intr/exceptions.
	; Re-enable them by pretending to return from exception
@@ -336,7 +331,7 @@ ENTRY(EV_TLBProtV)

	FAKE_RET_FROM_EXCPN

	mov   r1, sp
	mov   r1, sp	; Handle to pt_regs

	;------ (5) Type of Protection Violation? ----------
	;
@@ -415,8 +410,11 @@ ENTRY(EV_Extension)
	b   ret_from_exception
END(EV_Extension)

;######################### System Call Tracing #########################
;################ Trap Handling (Syscall, Breakpoint) ##################

; ---------------------------------------------
; syscall Tracing
; ---------------------------------------------
tracesys:
	; save EFA in case tracer wants the PC of traced task
	; using ERET won't work since next-PC has already committed
@@ -459,10 +457,9 @@ tracesys_exit:
	b   ret_from_exception ; NOT ret_from_system_call at is saves r0 which
	; we'd done before calling post hook above

;################### Break Point TRAP ##########################

	; ======= (5b) Trap is due to Break-Point =========

; ---------------------------------------------
; Breakpoint TRAP
; ---------------------------------------------
trap_with_param:

	; stop_pc info by gdb needs this info
@@ -490,36 +487,33 @@ trap_with_param:

	b   ret_from_exception

;##################### Trap Handling ##############################
;
; EV_Trap caused by TRAP_S and TRAP0 instructions.
;------------------------------------------------------------------
;   (1) System Calls
;       :parameters in r0-r7.
;       :r8 has the system call number
;   (2) Break Points
;------------------------------------------------------------------
; ---------------------------------------------
; syscall TRAP
; ABI: (r0-r7) upto 8 args, (r8) syscall number
; ---------------------------------------------

ENTRY(EV_Trap)

	EXCEPTION_PROLOGUE

	;------- (4) What caused the Trap --------------
	;============ TRAP 1   :breakpoints
	lr     r10, [ecr]
	bmsk.f 0, r10, 7
	bnz    trap_with_param

	; ======= (5a) Trap is due to System Call ========
	;============ TRAP  (no param): syscall top level

	; First return from Exception to pure K mode (Exception/IRQs renabled)
	FAKE_RET_FROM_EXCPN

	; If syscall tracing ongoing, invoke pre-pos-hooks
	; If syscall tracing ongoing, invoke pre-post-hooks
	GET_CURR_THR_INFO_FLAGS   r10
	btst r10, TIF_SYSCALL_TRACE
	bnz tracesys  ; this never comes back

	;============ This is normal System Call case ==========
	; Sys-call num shd not exceed the total system calls avail
	;============ Normal syscall case

	; syscall num shd not exceed the total system calls avail
	cmp     r8,  NR_syscalls
	mov.hi  r0, -ENOSYS
	bhi     ret_from_system_call