summaryrefslogtreecommitdiffstats
path: root/arch/microblaze
diff options
context:
space:
mode:
authorMichal Simek <monstr@monstr.eu>2010-06-22 18:02:06 +0200
committerMichal Simek <monstr@monstr.eu>2010-08-04 10:32:21 +0200
commitda23355280d106b1160a0a07028838097b639f0b (patch)
tree00780ed66f48ad698475c6eb21e85e66f08fc142 /arch/microblaze
parentmicroblaze: Do not mix register saving and mode setting (diff)
downloadlinux-da23355280d106b1160a0a07028838097b639f0b.tar.xz
linux-da23355280d106b1160a0a07028838097b639f0b.zip
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>
Diffstat (limited to 'arch/microblaze')
-rw-r--r--arch/microblaze/kernel/entry.S3
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/microblaze/kernel/entry.S b/arch/microblaze/kernel/entry.S
index 8f6b4eea4a6f..0747e1d61d55 100644
--- a/arch/microblaze/kernel/entry.S
+++ b/arch/microblaze/kernel/entry.S
@@ -282,9 +282,8 @@
tophys(r1,r1); \
addik r1, r1, -STATE_SAVE_SIZE; /* Make room on the stack. */\
SAVE_REGS \
- swi r1, r1, PTO+PT_MODE; \
brid 2f; \
- nop; /* Fill delay slot */ \
+ swi r1, r1, PTO+PT_MODE; \
1: /* User-mode state save. */ \
lwi r1, r0, TOPHYS(PER_CPU(CURRENT_SAVE)); /* get saved current */\
tophys(r1,r1); \