diff options
Diffstat (limited to 'arch/c6x/include/asm/syscall.h')
-rw-r--r-- | arch/c6x/include/asm/syscall.h | 38 |
1 files changed, 6 insertions, 32 deletions
diff --git a/arch/c6x/include/asm/syscall.h b/arch/c6x/include/asm/syscall.h index 06db3251926b..15ba8599858e 100644 --- a/arch/c6x/include/asm/syscall.h +++ b/arch/c6x/include/asm/syscall.h | |||
@@ -59,40 +59,14 @@ static inline void syscall_get_arguments(struct task_struct *task, | |||
59 | 59 | ||
60 | static inline void syscall_set_arguments(struct task_struct *task, | 60 | static inline void syscall_set_arguments(struct task_struct *task, |
61 | struct pt_regs *regs, | 61 | struct pt_regs *regs, |
62 | unsigned int i, unsigned int n, | ||
63 | const unsigned long *args) | 62 | const unsigned long *args) |
64 | { | 63 | { |
65 | switch (i) { | 64 | regs->a4 = *args++; |
66 | case 0: | 65 | regs->b4 = *args++; |
67 | if (!n--) | 66 | regs->a6 = *args++; |
68 | break; | 67 | regs->b6 = *args++; |
69 | regs->a4 = *args++; | 68 | regs->a8 = *args++; |
70 | case 1: | 69 | regs->a9 = *args; |
71 | if (!n--) | ||
72 | break; | ||
73 | regs->b4 = *args++; | ||
74 | case 2: | ||
75 | if (!n--) | ||
76 | break; | ||
77 | regs->a6 = *args++; | ||
78 | case 3: | ||
79 | if (!n--) | ||
80 | break; | ||
81 | regs->b6 = *args++; | ||
82 | case 4: | ||
83 | if (!n--) | ||
84 | break; | ||
85 | regs->a8 = *args++; | ||
86 | case 5: | ||
87 | if (!n--) | ||
88 | break; | ||
89 | regs->a9 = *args++; | ||
90 | case 6: | ||
91 | if (!n) | ||
92 | break; | ||
93 | default: | ||
94 | BUG(); | ||
95 | } | ||
96 | } | 70 | } |
97 | 71 | ||
98 | #endif /* __ASM_C6X_SYSCALLS_H */ | 72 | #endif /* __ASM_C6X_SYSCALLS_H */ |