[PATCH 16/19] ARC: entry.S: use single EXCEPTION_PROLOGUE

From: Vineet Gupta
Date: Sun Jun 07 2015 - 04:40:40 EST


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

Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>
---
arch/arc/kernel/entry-compact.S | 14 ++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/arch/arc/kernel/entry-compact.S b/arch/arc/kernel/entry-compact.S
index abc62cd10a8c..15d457b4403a 100644
--- a/arch/arc/kernel/entry-compact.S
+++ b/arch/arc/kernel/entry-compact.S
@@ -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:
--
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/