diff options
author | Chen Liqin <liqin.chen@sunplusct.com> | 2009-06-22 05:10:57 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2009-06-22 06:21:15 -0400 |
commit | e831a9c6186ca1f63fdf2f41628193dd690ab440 (patch) | |
tree | 541680de2266c5bc035148b88250a6ba2376a6d1 /arch/score/kernel | |
parent | 2f476ef61f0e00fe3fcb96693b6a624a6c52fad9 (diff) |
score: move save arg5 and arg6 instruction in front of enable_irq
Because enable_irq clobber r8 before arg5 was saved.
modified: arch/score/kernel/entry.S
Signed-off-by: Chen Liqin <liqin.chen@sunplusct.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/score/kernel')
-rw-r--r-- | arch/score/kernel/entry.S | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/score/kernel/entry.S b/arch/score/kernel/entry.S index 2f169175bbd9..10e859ddefd1 100644 --- a/arch/score/kernel/entry.S +++ b/arch/score/kernel/entry.S | |||
@@ -395,13 +395,13 @@ ENTRY(resume) | |||
395 | 395 | ||
396 | ENTRY(handle_sys) | 396 | ENTRY(handle_sys) |
397 | SAVE_ALL | 397 | SAVE_ALL |
398 | sw r8, [r0, 16] # argument 5 from user r8 | ||
399 | sw r9, [r0, 20] # argument 6 from user r9 | ||
398 | enable_irq | 400 | enable_irq |
399 | 401 | ||
400 | sw r4, [r0, PT_ORIG_R4] #for restart syscall | 402 | sw r4, [r0, PT_ORIG_R4] #for restart syscall |
401 | sw r7, [r0, PT_ORIG_R7] #for restart syscall | 403 | sw r7, [r0, PT_ORIG_R7] #for restart syscall |
402 | sw r27, [r0, PT_IS_SYSCALL] # it from syscall | 404 | sw r27, [r0, PT_IS_SYSCALL] # it from syscall |
403 | sw r8, [r0, 16] # argument 5 from user r8 | ||
404 | sw r9, [r0, 20] # argument 6 from user r9 | ||
405 | 405 | ||
406 | lw r9, [r0, PT_EPC] # skip syscall on return | 406 | lw r9, [r0, PT_EPC] # skip syscall on return |
407 | addi r9, 4 | 407 | addi r9, 4 |