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

ARC: entry.S: use single EXCEPTION_PROLOGUE



Returning from pure kernel mode and exception mode use the same code
anyways. Remove one the duplicate blocks

Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
parent 62fb6403
Loading
Loading
Loading
Loading
+6 −8
Original line number Diff line number Diff line
@@ -321,14 +321,11 @@ END(call_do_page_fault)
	; decide that.

	; if Returning from Exception
	bbit0  r10, STATUS_AE_BIT, not_exception
	EXCEPTION_EPILOGUE
	rtie
	btst   r10, STATUS_AE_BIT
	bnz    .Lexcep_ret

	; Not Exception so maybe Interrupts (Level 1 or 2)

not_exception:

#ifdef CONFIG_ARC_COMPACT_IRQ_LEVELS

	; Level 2 interrupt return Path - from hardware standpoint
@@ -377,16 +374,17 @@ not_level2_interrupt:

#endif

	bbit0  r10, STATUS_A1_BIT, not_level1_interrupt
	bbit0  r10, STATUS_A1_BIT, .Lpure_k_mode_ret

	;return from level 1
	INTERRUPT_EPILOGUE 1
debug_marker_l1:
	rtie

not_level1_interrupt:
.Lexcep_ret:
.Lpure_k_mode_ret:

	;this case is for syscalls or Exceptions (with fake rtie)
	;this case is for syscalls or Exceptions or pure kernel mode

	EXCEPTION_EPILOGUE
debug_marker_syscall: