microblaze: Save kernel mode in delay slot
This change save one instruction if kernel comes from kernel space. Signed-off-by: Michal Simek <monstr@monstr.eu>
This commit is contained in:
parent
e7741075b3
commit
da23355280
@ -282,9 +282,8 @@
|
|||||||
tophys(r1,r1); \
|
tophys(r1,r1); \
|
||||||
addik r1, r1, -STATE_SAVE_SIZE; /* Make room on the stack. */\
|
addik r1, r1, -STATE_SAVE_SIZE; /* Make room on the stack. */\
|
||||||
SAVE_REGS \
|
SAVE_REGS \
|
||||||
swi r1, r1, PTO+PT_MODE; \
|
|
||||||
brid 2f; \
|
brid 2f; \
|
||||||
nop; /* Fill delay slot */ \
|
swi r1, r1, PTO+PT_MODE; \
|
||||||
1: /* User-mode state save. */ \
|
1: /* User-mode state save. */ \
|
||||||
lwi r1, r0, TOPHYS(PER_CPU(CURRENT_SAVE)); /* get saved current */\
|
lwi r1, r0, TOPHYS(PER_CPU(CURRENT_SAVE)); /* get saved current */\
|
||||||
tophys(r1,r1); \
|
tophys(r1,r1); \
|
||||||
|
Loading…
Reference in New Issue
Block a user