Module Name: src Committed By: tsutsui Date: Thu Dec 22 15:33:30 UTC 2011
Modified Files: src/sys/arch/amiga/amiga: locore.s src/sys/arch/atari/atari: locore.s src/sys/arch/cesfic/cesfic: locore.s src/sys/arch/hp300/hp300: locore.s src/sys/arch/luna68k/luna68k: locore.s src/sys/arch/m68k/m68k: switch_subr.s src/sys/arch/mac68k/mac68k: locore.s src/sys/arch/mvme68k/mvme68k: locore.s src/sys/arch/news68k/news68k: locore.s src/sys/arch/next68k/next68k: locore.s src/sys/arch/sun3/sun3: locore.s src/sys/arch/sun3/sun3x: locore.s src/sys/arch/x68k/x68k: locore.s Log Message: Merge m68881_save() and m68881_restore() (using most common mvme68k ones). All functions are checked by my eyes, and all GENERIC kernels compile. To generate a diff of this commit: cvs rdiff -u -r1.154 -r1.155 src/sys/arch/amiga/amiga/locore.s cvs rdiff -u -r1.109 -r1.110 src/sys/arch/atari/atari/locore.s cvs rdiff -u -r1.27 -r1.28 src/sys/arch/cesfic/cesfic/locore.s cvs rdiff -u -r1.164 -r1.165 src/sys/arch/hp300/hp300/locore.s cvs rdiff -u -r1.46 -r1.47 src/sys/arch/luna68k/luna68k/locore.s cvs rdiff -u -r1.27 -r1.28 src/sys/arch/m68k/m68k/switch_subr.s cvs rdiff -u -r1.165 -r1.166 src/sys/arch/mac68k/mac68k/locore.s cvs rdiff -u -r1.109 -r1.110 src/sys/arch/mvme68k/mvme68k/locore.s cvs rdiff -u -r1.61 -r1.62 src/sys/arch/news68k/news68k/locore.s cvs rdiff -u -r1.60 -r1.61 src/sys/arch/next68k/next68k/locore.s cvs rdiff -u -r1.94 -r1.95 src/sys/arch/sun3/sun3/locore.s cvs rdiff -u -r1.63 -r1.64 src/sys/arch/sun3/sun3x/locore.s cvs rdiff -u -r1.107 -r1.108 src/sys/arch/x68k/x68k/locore.s Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/amiga/amiga/locore.s diff -u src/sys/arch/amiga/amiga/locore.s:1.154 src/sys/arch/amiga/amiga/locore.s:1.155 --- src/sys/arch/amiga/amiga/locore.s:1.154 Sat Nov 26 14:05:52 2011 +++ src/sys/arch/amiga/amiga/locore.s Thu Dec 22 15:33:28 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.154 2011/11/26 14:05:52 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.155 2011/12/22 15:33:28 tsutsui Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -1230,70 +1230,6 @@ ENTRY(ploadw) Lploadw040: | should 68040 do a ptest? rts -#ifdef FPCOPROC -/* - * Save and restore 68881 state. - * Pretty awful looking since our assembler does not - * recognize FP mnemonics. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state -#if defined(M68020) || defined(M68030) || defined(M68040) -#ifdef M68060 - cmpl #CPU_68060,_C_LABEL(cputype) - jeq Lm68060fpsave -#endif - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts -#endif - -#ifdef M68060 -Lm68060fpsave: - tstb %a0@(2) | null state frame? - jeq Lm68060sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr,%a0@(FPF_FPCR) | save FP control registers - fmovem %fpsr,%a0@(FPF_FPSR) - fmovem %fpi,%a0@(FPF_FPI) -Lm68060sdone: - rts -#endif - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer -#if defined(M68020) || defined(M68030) || defined(M68040) -#if defined(M68060) - cmpl #CPU_68060,_C_LABEL(cputype) - jeq Lm68060fprestore -#endif - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts -#endif - -#ifdef M68060 -Lm68060fprestore: - tstb %a0@(2) | null state frame? - jeq Lm68060fprdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr | restore FP control registers - fmovem %a0@(FPF_FPSR),%fpsr - fmovem %a0@(FPF_FPI),%fpi - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68060fprdone: - frestore %a0@ | restore state - rts -#endif -#endif - /* * Handle the nitty-gritty of rebooting the machine. * Index: src/sys/arch/atari/atari/locore.s diff -u src/sys/arch/atari/atari/locore.s:1.109 src/sys/arch/atari/atari/locore.s:1.110 --- src/sys/arch/atari/atari/locore.s:1.109 Tue Nov 15 10:57:01 2011 +++ src/sys/arch/atari/atari/locore.s Thu Dec 22 15:33:28 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.109 2011/11/15 10:57:01 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.110 2011/12/22 15:33:28 tsutsui Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -1271,64 +1271,6 @@ Lspldone: rts /* - * Save and restore 68881 state. - * Pretty awful looking since our assembler does not - * recognize FP mnemonics. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state -#if defined(M68060) - cmpl #CPU_68060,_C_LABEL(cputype) - jeq Lm68060fpsave | Handle 060 fpu -#endif - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts - -#if defined(M68060) -Lm68060fpsave: - tstb %a0@(2) | null state frame? - jeq Lm68060sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS)| save FP general registers - fmovem %fpcr,%a0@(FPF_FPCR) | save FP control registers - fmovem %fpsr,%a0@(FPF_FPSR) - fmovem %fpi,%a0@(FPF_FPI) -Lm68060sdone: - rts -#endif - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer -#if defined(M68060) - cmpl #CPU_68060,_C_LABEL(cputype) - jeq Lm68060fprestore | a 060 fpu -#endif - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts - -#if defined(M68060) -Lm68060fprestore: - tstb %a0@(2) | null state frame? - jeq Lm68060fprdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr | restore FP control registers - fmovem %a0@(FPF_FPSR),%fpsr - fmovem %a0@(FPF_FPI),%fpi - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68060fprdone: - frestore %a0@ | restore state - rts -#endif - -/* * Handle the nitty-gritty of rebooting the machine. * */ Index: src/sys/arch/cesfic/cesfic/locore.s diff -u src/sys/arch/cesfic/cesfic/locore.s:1.27 src/sys/arch/cesfic/cesfic/locore.s:1.28 --- src/sys/arch/cesfic/cesfic/locore.s:1.27 Sat Nov 26 14:05:52 2011 +++ src/sys/arch/cesfic/cesfic/locore.s Thu Dec 22 15:33:29 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.27 2011/11/26 14:05:52 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.28 2011/12/22 15:33:29 tsutsui Exp $ */ /* * Copyright (c) 1980, 1990, 1993 @@ -1084,31 +1084,6 @@ L_delay: jgt L_delay rts -/* - * Save and restore 68881 state. - * Pretty awful looking since our assembler does not - * recognize FP mnemonics. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(216) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(312) | save FP control registers -Lm68881sdone: - rts - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(312),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(216),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts - ENTRY_NOPROFILE(doboot) movl #0x5c00c060, %d0 | want phys addressing .long 0x4e7b0006 | movc d0,dtt0 Index: src/sys/arch/hp300/hp300/locore.s diff -u src/sys/arch/hp300/hp300/locore.s:1.164 src/sys/arch/hp300/hp300/locore.s:1.165 --- src/sys/arch/hp300/hp300/locore.s:1.164 Sat Nov 26 14:05:52 2011 +++ src/sys/arch/hp300/hp300/locore.s Thu Dec 22 15:33:29 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.164 2011/11/26 14:05:52 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.165 2011/12/22 15:33:29 tsutsui Exp $ */ /* * Copyright (c) 1980, 1990, 1993 @@ -1364,29 +1364,6 @@ L_delay: rts /* - * Save and restore 68881 state. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts - -/* * Probe a memory address, and see if it causes a bus error. * This function is only to be used in physical mode, and before our * trap vectors are initialized. Index: src/sys/arch/luna68k/luna68k/locore.s diff -u src/sys/arch/luna68k/luna68k/locore.s:1.46 src/sys/arch/luna68k/luna68k/locore.s:1.47 --- src/sys/arch/luna68k/luna68k/locore.s:1.46 Sat Nov 26 14:05:52 2011 +++ src/sys/arch/luna68k/luna68k/locore.s Thu Dec 22 15:33:30 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.46 2011/11/26 14:05:52 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.47 2011/12/22 15:33:30 tsutsui Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -1048,29 +1048,6 @@ L_delay: rts /* - * Save and restore 68881 state. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts - -/* * Do a dump. * Called by auto-restart. */ Index: src/sys/arch/m68k/m68k/switch_subr.s diff -u src/sys/arch/m68k/m68k/switch_subr.s:1.27 src/sys/arch/m68k/m68k/switch_subr.s:1.28 --- src/sys/arch/m68k/m68k/switch_subr.s:1.27 Tue Feb 8 20:20:16 2011 +++ src/sys/arch/m68k/m68k/switch_subr.s Thu Dec 22 15:33:29 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: switch_subr.s,v 1.27 2011/02/08 20:20:16 rmind Exp $ */ +/* $NetBSD: switch_subr.s,v 1.28 2011/12/22 15:33:29 tsutsui Exp $ */ /* * Copyright (c) 2001 The NetBSD Foundation. @@ -346,6 +346,68 @@ ENTRY(m68k_make_fpu_idle_frame) #endif /* + * Save and restore 68881 state. + */ +#ifdef FPCOPROC +ENTRY(m68881_save) + movl %sp@(4),%a0 | save area pointer + fsave %a0@ | save state +#if defined(M68020) || defined(M68030) || defined(M68040) +#if defined(M68060) + cmpl #FPU_68060,_C_LABEL(fputype) + jeq Lm68060fpsave +#endif +Lm68881fpsave: + tstb %a0@ | null state frame? + jeq Lm68881sdone | yes, all done + fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers + fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers +Lm68881sdone: + rts +#endif +#if defined(M68060) +Lm68060fpsave: + tstb %a0@(2) | null state frame? + jeq Lm68060sdone | yes, all done + fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers + fmovem %fpcr,%a0@(FPF_FPCR) | save FP control registers + fmovem %fpsr,%a0@(FPF_FPSR) + fmovem %fpi,%a0@(FPF_FPI) +Lm68060sdone: + rts +#endif + +ENTRY(m68881_restore) + movl %sp@(4),%a0 | save area pointer +#if defined(M68020) || defined(M68030) || defined(M68040) +#if defined(M68060) + cmpl #FPU_68060,_C_LABEL(fputype) + jeq Lm68060fprestore +#endif +Lm68881fprestore: + tstb %a0@ | null state frame? + jeq Lm68881rdone | yes, easy + fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers + fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers +Lm68881rdone: + frestore %a0@ | restore state + rts +#endif +#if defined(M68060) +Lm68060fprestore: + tstb %a0@(2) | null state frame? + jeq Lm68060fprdone | yes, easy + fmovem %a0@(FPF_FPCR),%fpcr | restore FP control registers + fmovem %a0@(FPF_FPSR),%fpsr + fmovem %a0@(FPF_FPI),%fpi + fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers +Lm68060fprdone: + frestore %a0@ | restore state + rts +#endif +#endif + +/* * lwp_trampoline: call function in register %a2 with %a3 as an arg * and then rei. * %a0 will have old lwp from cpu_switchto(), and %a4 is new lwp Index: src/sys/arch/mac68k/mac68k/locore.s diff -u src/sys/arch/mac68k/mac68k/locore.s:1.165 src/sys/arch/mac68k/mac68k/locore.s:1.166 --- src/sys/arch/mac68k/mac68k/locore.s:1.165 Sat Nov 26 14:05:53 2011 +++ src/sys/arch/mac68k/mac68k/locore.s Thu Dec 22 15:33:29 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.165 2011/11/26 14:05:53 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.166 2011/12/22 15:33:29 tsutsui Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -1060,31 +1060,6 @@ Lspldone: rts /* - * Save and restore 68881 state. - * Pretty awful looking since our assembler does not - * recognize FP mnemonics. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts - -/* * delay() - delay for a specified number of microseconds * _delay() - calibrator helper for delay() * Index: src/sys/arch/mvme68k/mvme68k/locore.s diff -u src/sys/arch/mvme68k/mvme68k/locore.s:1.109 src/sys/arch/mvme68k/mvme68k/locore.s:1.110 --- src/sys/arch/mvme68k/mvme68k/locore.s:1.109 Sat Nov 26 14:05:53 2011 +++ src/sys/arch/mvme68k/mvme68k/locore.s Thu Dec 22 15:33:29 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.109 2011/11/26 14:05:53 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.110 2011/12/22 15:33:29 tsutsui Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -1346,66 +1346,6 @@ L_delay: rts /* - * Save and restore 68881 state. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state -#if defined(M68020) || defined(M68030) || defined(M68040) -#if defined(M68060) - cmpl #FPU_68060,_C_LABEL(fputype) - jeq Lm68060fpsave -#endif -Lm68881fpsave: - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts -#endif -#if defined(M68060) -Lm68060fpsave: - tstb %a0@(2) | null state frame? - jeq Lm68060sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr,%a0@(FPF_FPCR) | save FP control registers - fmovem %fpsr,%a0@(FPF_FPSR) - fmovem %fpi,%a0@(FPF_FPI) -Lm68060sdone: - rts -#endif - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer -#if defined(M68020) || defined(M68030) || defined(M68040) -#if defined(M68060) - cmpl #FPU_68060,_C_LABEL(fputype) - jeq Lm68060fprestore -#endif -Lm68881fprestore: - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts -#endif -#if defined(M68060) -Lm68060fprestore: - tstb %a0@(2) | null state frame? - jeq Lm68060fprdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr | restore FP control registers - fmovem %a0@(FPF_FPSR),%fpsr - fmovem %a0@(FPF_FPI),%fpi - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68060fprdone: - frestore %a0@ | restore state - rts -#endif - -/* * Handle the nitty-gritty of rebooting the machine. * Basically we just turn off the MMU, restore the Bug's initial VBR * and either return to Bug or jump through the ROM reset vector Index: src/sys/arch/news68k/news68k/locore.s diff -u src/sys/arch/news68k/news68k/locore.s:1.61 src/sys/arch/news68k/news68k/locore.s:1.62 --- src/sys/arch/news68k/news68k/locore.s:1.61 Sat Nov 26 14:05:53 2011 +++ src/sys/arch/news68k/news68k/locore.s Thu Dec 22 15:33:30 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.61 2011/11/26 14:05:53 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.62 2011/12/22 15:33:30 tsutsui Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -1061,31 +1061,6 @@ L_delay: rts /* - * Save and restore 68881 state. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state -Lm68881fpsave: - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer -Lm68881fprestore: - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts - -/* * Handle the nitty-gritty of rebooting the machine. * Basically we just turn off the MMU, restore the PROM's initial VBR * and jump through the PROM halt vector with argument via %d7 Index: src/sys/arch/next68k/next68k/locore.s diff -u src/sys/arch/next68k/next68k/locore.s:1.60 src/sys/arch/next68k/next68k/locore.s:1.61 --- src/sys/arch/next68k/next68k/locore.s:1.60 Sat Nov 26 14:05:53 2011 +++ src/sys/arch/next68k/next68k/locore.s Thu Dec 22 15:33:30 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.60 2011/11/26 14:05:53 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.61 2011/12/22 15:33:30 tsutsui Exp $ */ /* * Copyright (c) 1998 Darrin B. Jewell @@ -1266,29 +1266,6 @@ L_delay: rts /* - * Save and restore 68881 state. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts - -/* * Handle the nitty-gritty of rebooting the machine. * Basically we just turn off the MMU and jump to the appropriate ROM routine. * Note that we must be running in an address range that is mapped one-to-one Index: src/sys/arch/sun3/sun3/locore.s diff -u src/sys/arch/sun3/sun3/locore.s:1.94 src/sys/arch/sun3/sun3/locore.s:1.95 --- src/sys/arch/sun3/sun3/locore.s:1.94 Tue Nov 15 10:57:04 2011 +++ src/sys/arch/sun3/sun3/locore.s Thu Dec 22 15:33:30 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.94 2011/11/15 10:57:04 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.95 2011/12/22 15:33:30 tsutsui Exp $ */ /* * Copyright (c) 1980, 1990, 1993 @@ -690,29 +690,6 @@ Lsplr: rts /* - * Save and restore 68881 state. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general regs - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control regs -Lm68881sdone: - rts - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control regs - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general regs -Lm68881rdone: - frestore %a0@ | restore state - rts - -/* * _delay(unsigned N) * Delay for at least (N/256) microseconds. * This routine depends on the variable: delay_divisor Index: src/sys/arch/sun3/sun3x/locore.s diff -u src/sys/arch/sun3/sun3x/locore.s:1.63 src/sys/arch/sun3/sun3x/locore.s:1.64 --- src/sys/arch/sun3/sun3x/locore.s:1.63 Tue Nov 15 10:57:04 2011 +++ src/sys/arch/sun3/sun3x/locore.s Thu Dec 22 15:33:30 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.63 2011/11/15 10:57:04 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.64 2011/12/22 15:33:30 tsutsui Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -695,29 +695,6 @@ Lsplr: rts /* - * Save and restore 68881 state. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general regs - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control regs -Lm68881sdone: - rts - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control regs - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general regs -Lm68881rdone: - frestore %a0@ | restore state - rts - -/* * _delay(unsigned N) * Delay for at least (N/256) microseconds. * This routine depends on the variable: delay_divisor Index: src/sys/arch/x68k/x68k/locore.s diff -u src/sys/arch/x68k/x68k/locore.s:1.107 src/sys/arch/x68k/x68k/locore.s:1.108 --- src/sys/arch/x68k/x68k/locore.s:1.107 Sat Nov 26 14:05:53 2011 +++ src/sys/arch/x68k/x68k/locore.s Thu Dec 22 15:33:30 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.107 2011/11/26 14:05:53 tsutsui Exp $ */ +/* $NetBSD: locore.s,v 1.108 2011/12/22 15:33:30 tsutsui Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -1101,66 +1101,6 @@ L_delay: rts /* - * Save and restore 68881 state. - */ -ENTRY(m68881_save) - movl %sp@(4),%a0 | save area pointer - fsave %a0@ | save state -#if defined(M68020) || defined(M68030) || defined(M68040) -#if defined(M68060) - cmpl #FPU_68060,_C_LABEL(fputype) - jeq Lm68060fpsave -#endif -Lm68881fpsave: - tstb %a0@ | null state frame? - jeq Lm68881sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr/%fpsr/%fpi,%a0@(FPF_FPCR) | save FP control registers -Lm68881sdone: - rts -#endif -#if defined(M68060) -Lm68060fpsave: - tstb %a0@(2) | null state frame? - jeq Lm68060sdone | yes, all done - fmovem %fp0-%fp7,%a0@(FPF_REGS) | save FP general registers - fmovem %fpcr,%a0@(FPF_FPCR) | save FP control registers - fmovem %fpsr,%a0@(FPF_FPSR) - fmovem %fpi,%a0@(FPF_FPI) -Lm68060sdone: - rts -#endif - -ENTRY(m68881_restore) - movl %sp@(4),%a0 | save area pointer -#if defined(M68020) || defined(M68030) || defined(M68040) -#if defined(M68060) - cmpl #FPU_68060,_C_LABEL(fputype) - jeq Lm68060fprestore -#endif -Lm68881fprestore: - tstb %a0@ | null state frame? - jeq Lm68881rdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr/%fpsr/%fpi | restore FP control registers - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68881rdone: - frestore %a0@ | restore state - rts -#endif -#if defined(M68060) -Lm68060fprestore: - tstb %a0@(2) | null state frame? - jeq Lm68060fprdone | yes, easy - fmovem %a0@(FPF_FPCR),%fpcr | restore FP control registers - fmovem %a0@(FPF_FPSR),%fpsr - fmovem %a0@(FPF_FPI),%fpi - fmovem %a0@(FPF_REGS),%fp0-%fp7 | restore FP general registers -Lm68060fprdone: - frestore %a0@ | restore state - rts -#endif - -/* * Handle the nitty-gritty of rebooting the machine. * Basically we just turn off the MMU and jump to the appropriate ROM routine. * Note that we must be running in an address range that is mapped one-to-one