diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2010-10-12 22:26:22 -0400 |
---|---|---|
committer | Geert Uytterhoeven <geert@linux-m68k.org> | 2011-01-07 08:06:59 -0500 |
commit | a19185c32dbe975ce1ee86f5fa457f69b1d7f53b (patch) | |
tree | 4e140d40bc30e150c28b5bd79206f21130f3c5a2 /arch/m68knommu | |
parent | e64f1b7520fa12c8e8e08161a2841ec5510774ac (diff) |
m68knommu: Equivalent of "m68k: handle new gcc's"
... from back in 2004; again, it's ifdefed out by CONFIG_FPU.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Greg Ungerer <gerg@uclinux.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Diffstat (limited to 'arch/m68knommu')
-rw-r--r-- | arch/m68knommu/kernel/signal.c | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/arch/m68knommu/kernel/signal.c b/arch/m68knommu/kernel/signal.c index 1c74f3ae2b97..97a471217bba 100644 --- a/arch/m68knommu/kernel/signal.c +++ b/arch/m68knommu/kernel/signal.c | |||
@@ -163,8 +163,8 @@ static inline int restore_fpu_state(struct sigcontext *sc) | |||
163 | goto out; | 163 | goto out; |
164 | 164 | ||
165 | __asm__ volatile (".chip 68k/68881\n\t" | 165 | __asm__ volatile (".chip 68k/68881\n\t" |
166 | "fmovemx %0,%/fp0-%/fp1\n\t" | 166 | "fmovemx %0,%%fp0-%%fp1\n\t" |
167 | "fmoveml %1,%/fpcr/%/fpsr/%/fpiar\n\t" | 167 | "fmoveml %1,%%fpcr/%%fpsr/%%fpiar\n\t" |
168 | ".chip 68k" | 168 | ".chip 68k" |
169 | : /* no outputs */ | 169 | : /* no outputs */ |
170 | : "m" (*sc->sc_fpregs), "m" (*sc->sc_fpcntl)); | 170 | : "m" (*sc->sc_fpregs), "m" (*sc->sc_fpcntl)); |
@@ -214,8 +214,8 @@ static inline int rt_restore_fpu_state(struct ucontext *uc) | |||
214 | sizeof(fpregs))) | 214 | sizeof(fpregs))) |
215 | goto out; | 215 | goto out; |
216 | __asm__ volatile (".chip 68k/68881\n\t" | 216 | __asm__ volatile (".chip 68k/68881\n\t" |
217 | "fmovemx %0,%/fp0-%/fp7\n\t" | 217 | "fmovemx %0,%%fp0-%%fp7\n\t" |
218 | "fmoveml %1,%/fpcr/%/fpsr/%/fpiar\n\t" | 218 | "fmoveml %1,%%fpcr/%%fpsr/%%fpiar\n\t" |
219 | ".chip 68k" | 219 | ".chip 68k" |
220 | : /* no outputs */ | 220 | : /* no outputs */ |
221 | : "m" (*fpregs.f_fpregs), | 221 | : "m" (*fpregs.f_fpregs), |
@@ -408,12 +408,12 @@ static inline void save_fpu_state(struct sigcontext *sc, struct pt_regs *regs) | |||
408 | if (sc->sc_fpstate[0]) { | 408 | if (sc->sc_fpstate[0]) { |
409 | fpu_version = sc->sc_fpstate[0]; | 409 | fpu_version = sc->sc_fpstate[0]; |
410 | __asm__ volatile (".chip 68k/68881\n\t" | 410 | __asm__ volatile (".chip 68k/68881\n\t" |
411 | "fmovemx %/fp0-%/fp1,%0\n\t" | 411 | "fmovemx %%fp0-%%fp1,%0\n\t" |
412 | "fmoveml %/fpcr/%/fpsr/%/fpiar,%1\n\t" | 412 | "fmoveml %%fpcr/%%fpsr/%%fpiar,%1\n\t" |
413 | ".chip 68k" | 413 | ".chip 68k" |
414 | : /* no outputs */ | 414 | : "=m" (*sc->sc_fpregs), |
415 | : "m" (*sc->sc_fpregs), | 415 | "=m" (*sc->sc_fpcntl) |
416 | "m" (*sc->sc_fpcntl) | 416 | : /* no inputs */ |
417 | : "memory"); | 417 | : "memory"); |
418 | } | 418 | } |
419 | } | 419 | } |
@@ -445,12 +445,12 @@ static inline int rt_save_fpu_state(struct ucontext *uc, struct pt_regs *regs) | |||
445 | context_size = fpstate[1]; | 445 | context_size = fpstate[1]; |
446 | fpu_version = fpstate[0]; | 446 | fpu_version = fpstate[0]; |
447 | __asm__ volatile (".chip 68k/68881\n\t" | 447 | __asm__ volatile (".chip 68k/68881\n\t" |
448 | "fmovemx %/fp0-%/fp7,%0\n\t" | 448 | "fmovemx %%fp0-%%fp7,%0\n\t" |
449 | "fmoveml %/fpcr/%/fpsr/%/fpiar,%1\n\t" | 449 | "fmoveml %%fpcr/%%fpsr/%%fpiar,%1\n\t" |
450 | ".chip 68k" | 450 | ".chip 68k" |
451 | : /* no outputs */ | 451 | : "=m" (*fpregs.f_fpregs), |
452 | : "m" (*fpregs.f_fpregs), | 452 | "=m" (*fpregs.f_fpcntl) |
453 | "m" (*fpregs.f_fpcntl) | 453 | : /* no inputs */ |
454 | : "memory"); | 454 | : "memory"); |
455 | err |= copy_to_user(&uc->uc_mcontext.fpregs, &fpregs, | 455 | err |= copy_to_user(&uc->uc_mcontext.fpregs, &fpregs, |
456 | sizeof(fpregs)); | 456 | sizeof(fpregs)); |