Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARCv2: entry: avoid a branch

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>

+2 -3
+2 -3
arch/arc/include/asm/entry-arcv2.h
··· 100 100 ; 2. Upon entry SP is always saved (for any inspection, unwinding etc), 101 101 ; but on return, restored only if U mode 102 102 103 + lr r9, [AUX_USER_SP] ; U mode SP 104 + 103 105 mov.nz r9, sp 104 106 add.nz r9, r9, SZ_PT_REGS - PT_sp - 4 ; K mode SP 105 - bnz 1f 106 107 107 - lr r9, [AUX_USER_SP] ; U mode SP 108 - 1: 109 108 PUSH r9 ; SP (pt_regs->sp) 110 109 111 110 PUSH fp