summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorTodd C. Miller <millert@cvs.openbsd.org>2001-12-06 21:13:29 +0000
committerTodd C. Miller <millert@cvs.openbsd.org>2001-12-06 21:13:29 +0000
commita5f0e0d578a6034919386409fcc42988939d2622 (patch)
treef906f71d4f2577644745e0dc3df1b19bf4efa90d /sys/arch
parentf0f03d51f586f7de8e645ffbcc11bf7170ebaf80 (diff)
Define proper macros for FP frame offsets rather than magic numbers.
From NetBSD (tsutsui).
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/amiga/amiga/locore.s62
-rw-r--r--sys/arch/hp300/hp300/locore.s22
-rw-r--r--sys/arch/m68k/m68k/genassym.cf11
-rw-r--r--sys/arch/mac68k/mac68k/locore.s22
-rw-r--r--sys/arch/mvme68k/mvme68k/locore.s62
5 files changed, 93 insertions, 86 deletions
diff --git a/sys/arch/amiga/amiga/locore.s b/sys/arch/amiga/amiga/locore.s
index 2978408d710..9d1442dac5a 100644
--- a/sys/arch/amiga/amiga/locore.s
+++ b/sys/arch/amiga/amiga/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.33 2001/11/30 23:14:28 miod Exp $ */
+/* $OpenBSD: locore.s,v 1.34 2001/12/06 21:13:28 millert Exp $ */
/* $NetBSD: locore.s,v 1.89 1997/07/17 16:22:54 is Exp $ */
/*
@@ -1302,8 +1302,8 @@ Lsw2:
#endif
tstb a2@ | null state frame?
jeq Lswnofpsave | yes, all done
- fmovem fp0-fp7,a2@(216) | save FP general registers
- fmovem fpcr/fpsr/fpi,a2@(312) | save FP control registers
+ fmovem fp0-fp7,a2@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a2@(FPF_FPCR) | save FP control registers
#ifdef M68060
jra Lswnofpsave
#endif
@@ -1312,10 +1312,10 @@ Lsw2:
Lsavfp60:
tstb a2@(2) | null state frame?
jeq Lswnofpsave | yes, all done
- fmovem fp0-fp7,a2@(216) | save FP general registers
- fmovem fpcr,a2@(312) | save FP control registers
- fmovem fpsr,a2@(316)
- fmovem fpi,a2@(320)
+ fmovem fp0-fp7,a2@(FPF_REGS) | save FP general registers
+ fmovem fpcr,a2@(FPF_FPCR) | save FP control registers
+ fmovem fpsr,a2@(FPF_FPSR)
+ fmovem fpi,a2@(FPF_FPI)
#endif
Lswnofpsave:
@@ -1362,8 +1362,8 @@ Lresnonofpatall:
#endif
tstb a0@ | null state frame?
jeq Lresfprest2 | yes, easy
- fmovem a0@(312),fpcr/fpsr/fpi | restore FP control registers
- fmovem a0@(216),fp0-fp7 | restore FP general registers
+ fmovem a0@(FPF_FPCR),fpcr/fpsr/fpi | restore FP control registers
+ fmovem a0@(FPF_REGS),fp0-fp7 | restore FP general registers
Lresfprest2:
frestore a0@ | restore state
movw a1@(PCB_PS),sr | no, restore PS
@@ -1375,10 +1375,10 @@ Lresfprest2:
Lresfp60rest1:
tstb a0@(2) | null state frame?
jeq Lresfp60rest2 | yes, easy
- fmovem a0@(312),fpcr | restore FP control registers
- fmovem a0@(316),fpsr
- fmovem a0@(320),fpi
- fmovem a0@(216),fp0-fp7 | restore FP general registers
+ 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
Lresfp60rest2:
frestore a0@ | restore state
movw a1@(PCB_PS),sr | no, restore PS
@@ -1410,8 +1410,8 @@ ENTRY(savectx)
#endif
tstb a0@ | null state frame?
jeq Lsavedone | yes, all done
- fmovem fp0-fp7,a0@(216) | save FP general registers
- fmovem fpcr/fpsr/fpi,a0@(312) | save FP control registers
+ fmovem fp0-fp7,a0@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a0@(FPF_FPCR) | save FP control registers
#ifdef M68060
moveq #0,d0
rts
@@ -1421,10 +1421,10 @@ ENTRY(savectx)
Lsavctx60:
tstb a0@(2)
jeq Lsavedone
- fmovem fp0-fp7,a0@(216) | save FP general registers
- fmovem fpcr,a0@(312) | save FP control registers
- fmovem fpsr,a0@(316)
- fmovem fpi,a0@(320)
+ 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)
#endif
Lsavedone:
moveq #0,d0 | return 0
@@ -1747,8 +1747,8 @@ ENTRY(m68881_save)
#endif
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
+ fmovem fp0-fp7,a0@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a0@(FPF_FPCR) | save FP control registers
Lm68881sdone:
rts
#endif
@@ -1757,10 +1757,10 @@ Lm68881sdone:
Lm68060fpsave:
tstb a0@(2) | null state frame?
jeq Lm68060sdone | yes, all done
- fmovem fp0-fp7,a0@(216) | save FP general registers
- fmovem fpcr,a0@(312) | save FP control registers
- fmovem fpsr,a0@(316)
- fmovem fpi,a0@(320)
+ 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
@@ -1774,8 +1774,8 @@ ENTRY(m68881_restore)
#endif
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
+ 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
@@ -1785,10 +1785,10 @@ Lm68881rdone:
Lm68060fprestore:
tstb a0@(2) | null state frame?
jeq Lm68060fprdone | yes, easy
- fmovem a0@(312),fpcr | restore FP control registers
- fmovem a0@(316),fpsr
- fmovem a0@(320),fpi
- fmovem a0@(216),fp0-fp7 | restore FP general registers
+ 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
diff --git a/sys/arch/hp300/hp300/locore.s b/sys/arch/hp300/hp300/locore.s
index d1509f04e6c..bbd5ccb6df2 100644
--- a/sys/arch/hp300/hp300/locore.s
+++ b/sys/arch/hp300/hp300/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.32 2001/12/06 19:27:44 millert Exp $ */
+/* $OpenBSD: locore.s,v 1.33 2001/12/06 21:13:28 millert Exp $ */
/* $NetBSD: locore.s,v 1.91 1998/11/11 06:41:25 thorpej Exp $ */
/*
@@ -1325,8 +1325,8 @@ Lsw2:
fsave a2@ | save FP state
tstb a2@ | null state frame?
jeq Lswnofpsave | yes, all done
- fmovem fp0-fp7,a2@(216) | save FP general registers
- fmovem fpcr/fpsr/fpi,a2@(312) | save FP control registers
+ fmovem fp0-fp7,a2@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a2@(FPF_FPCR) | save FP control registers
Lswnofpsave:
#ifdef DIAGNOSTIC
@@ -1370,8 +1370,8 @@ Lswnofpsave:
frestore sp@+ | ...magic!
Lresnot040:
#endif
- fmovem a0@(312),fpcr/fpsr/fpi | restore FP control registers
- fmovem a0@(216),fp0-fp7 | restore FP general registers
+ fmovem a0@(FPF_FPCR),fpcr/fpsr/fpi | restore FP control registers
+ fmovem a0@(FPF_REGS),fp0-fp7 | restore FP general registers
Lresfprest:
frestore a0@ | restore state
@@ -1397,8 +1397,8 @@ ENTRY(savectx)
fsave a0@ | save FP state
tstb a0@ | null state frame?
jeq Lsvnofpsave | yes, all done
- fmovem fp0-fp7,a0@(216) | save FP general registers
- fmovem fpcr/fpsr/fpi,a0@(312) | save FP control registers
+ fmovem fp0-fp7,a0@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a0@(FPF_FPCR) | save FP control registers
Lsvnofpsave:
moveq #0,d0 | return 0
rts
@@ -1864,8 +1864,8 @@ ENTRY(m68881_save)
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
+ fmovem fp0-fp7,a0@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a0@(FPF_FPCR) | save FP control registers
Lm68881sdone:
rts
@@ -1873,8 +1873,8 @@ 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
+ 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
diff --git a/sys/arch/m68k/m68k/genassym.cf b/sys/arch/m68k/m68k/genassym.cf
index 4e58f309d13..56ad79db954 100644
--- a/sys/arch/m68k/m68k/genassym.cf
+++ b/sys/arch/m68k/m68k/genassym.cf
@@ -1,4 +1,4 @@
-# $OpenBSD: genassym.cf,v 1.4 2001/11/17 21:35:12 mickey Exp $
+# $OpenBSD: genassym.cf,v 1.5 2001/12/06 21:13:28 millert Exp $
#
# Copyright (c) 1995 Theo de Raadt
@@ -101,12 +101,19 @@ export PSL_HIGHIPL
struct pcb
member pcb_onfault
-# exception frame offset/sizes
+# exception frame offsets
struct frame
member FR_SP f_regs[15]
member FR_HW f_sr
member FR_ADJ f_stackadj
+# FP frame offsets
+struct fpframe
+member fpf_regs fpf_regs[0]
+member fpf_fpcr
+member fpf_fpsr
+member fpf_fpi fpf_fpiar
+
# interrupt/fault metering
struct uvmexp UVMEXP_
member intrs
diff --git a/sys/arch/mac68k/mac68k/locore.s b/sys/arch/mac68k/mac68k/locore.s
index 2995e13f00a..6b207eb7322 100644
--- a/sys/arch/mac68k/mac68k/locore.s
+++ b/sys/arch/mac68k/mac68k/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.28 2001/08/13 00:01:41 miod Exp $ */
+/* $OpenBSD: locore.s,v 1.29 2001/12/06 21:13:28 millert Exp $ */
/* $NetBSD: locore.s,v 1.103 1998/07/09 06:02:50 scottr Exp $ */
/*
@@ -1153,8 +1153,8 @@ Lsw2:
fsave a2@ | save FP state
tstb a2@ | null state frame?
jeq Lswnofpsave | yes, all done
- fmovem fp0-fp7,a2@(216) | save FP general registers
- fmovem fpcr/fpsr/fpi,a2@(312) | save FP control registers
+ fmovem fp0-fp7,a2@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a2@(FPF_FPCR) | save FP control registers
Lswnofpsave:
#ifdef DIAGNOSTIC
@@ -1196,8 +1196,8 @@ Lswnofpsave:
frestore sp@+ | ...magic!
Lresnot040:
#endif
- fmovem a0@(312),fpcr/fpsr/fpi | restore FP control registers
- fmovem a0@(216),fp0-fp7 | restore FP general registers
+ fmovem a0@(FPF_FPCR),fpcr/fpsr/fpi | restore FP control registers
+ fmovem a0@(FPF_REGS),fp0-fp7 | restore FP general registers
Lresfprest:
frestore a0@ | restore state
@@ -1223,8 +1223,8 @@ ENTRY(savectx)
fsave a0@ | save FP state
tstb a0@ | null state frame?
jeq Lsvnofpsave | yes, all done
- fmovem fp0-fp7,a0@(216) | save FP general registers
- fmovem fpcr/fpsr/fpi,a0@(312) | save FP control registers
+ fmovem fp0-fp7,a0@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a0@(FPF_FPCR) | save FP control registers
Lsvnofpsave:
moveq #0,d0 | return 0
rts
@@ -1525,8 +1525,8 @@ ENTRY(m68881_save)
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
+ fmovem fp0-fp7,a0@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a0@(FPF_FPCR) | save FP control registers
Lm68881sdone:
rts
@@ -1534,8 +1534,8 @@ 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
+ 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
diff --git a/sys/arch/mvme68k/mvme68k/locore.s b/sys/arch/mvme68k/mvme68k/locore.s
index cec672c39f1..d44cbda8d1b 100644
--- a/sys/arch/mvme68k/mvme68k/locore.s
+++ b/sys/arch/mvme68k/mvme68k/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.28 2001/08/31 00:37:20 miod Exp $ */
+/* $OpenBSD: locore.s,v 1.29 2001/12/06 21:13:28 millert Exp $ */
/*
* Copyright (c) 1995 Theo de Raadt
@@ -1338,17 +1338,17 @@ Lsw2:
#endif /* M68060 */
tstb a2@ | null state frame?
jeq Lswnofpsave | yes, all done
- fmovem fp0-fp7,a2@(216) | save FP general registers
- fmovem fpcr/fpsr/fpi,a2@(312) | save FP control registers
+ fmovem fp0-fp7,a2@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a2@(FPF_FPCR) | save FP control registers
#ifdef M68060
jra Lswnofpsave
Lsavfp60:
tstb a2@(2) | null state frame?
jeq Lswnofpsave | yes, all done
- fmovem fp0-fp7,a2@(216) | save FP general registers
- fmovem fpcr,a2@(312) | save FP control registers
- fmovem fpsr,a2@(316)
- fmovem fpi,a2@(320)
+ fmovem fp0-fp7,a2@(FPF_REGS) | save FP general registers
+ fmovem fpcr,a2@(FPF_FPCR) | save FP control registers
+ fmovem fpsr,a2@(FPF_FPSR)
+ fmovem fpi,a2@(FPF_FPI)
#endif /* M68060 */
Lswnofpsave:
#ifdef DIAGNOSTIC
@@ -1394,8 +1394,8 @@ Lresnonofpatall:
#endif /* M68060 */
tstb a0@ | null state frame?
jeq Lresfprest2 | yes, easy
- fmovem a0@(312),fpcr/fpsr/fpi | restore FP control registers
- fmovem a0@(216),fp0-fp7 | restore FP general registers
+ fmovem a0@(FPF_FPCR),fpcr/fpsr/fpi | restore FP control registers
+ fmovem a0@(FPF_REGS),fp0-fp7 | restore FP general registers
Lresfprest2:
frestore a0@ | restore state
movw a1@(PCB_PS),sr | no, restore PS
@@ -1406,10 +1406,10 @@ Lresfprest2:
Lresfp60rest1:
tstb a0@(2) | null state frame?
jeq Lresfp60rest2 | yes, easy
- fmovem a0@(312),fpcr | restore FP control registers
- fmovem a0@(316),fpsr
- fmovem a0@(320),fpi
- fmovem a0@(216),fp0-fp7 | restore FP general registers
+ 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
Lresfp60rest2:
frestore a0@ | restore state
movw a1@(PCB_PS),sr | no, restore PS
@@ -1440,18 +1440,18 @@ ENTRY(savectx)
#endif
tstb a0@ | null state frame?
jeq Lsavedone | yes, all done
- fmovem fp0-fp7,a0@(216) | save FP general registers
- fmovem fpcr/fpsr/fpi,a0@(312) | save FP control registers
+ fmovem fp0-fp7,a0@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a0@(FPF_FPCR) | save FP control registers
moveq #0,d0
rts
#ifdef M68060
Lsavctx60:
tstb a0@(2)
jeq Lsavedone
- fmovem fp0-fp7,a0@(216) | save FP general registers
- fmovem fpcr,a0@(312) | save FP control registers
- fmovem fpsr,a0@(316)
- fmovem fpi,a0@(320)
+ 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)
#endif
Lsavedone:
moveq #0,d0 | return 0
@@ -1803,8 +1803,8 @@ ENTRY(m68881_save)
#endif
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
+ fmovem fp0-fp7,a0@(FPF_REGS) | save FP general registers
+ fmovem fpcr/fpsr/fpi,a0@(FPF_FPCR) | save FP control registers
Lm68881sdone:
rts
@@ -1812,10 +1812,10 @@ Lm68881sdone:
Lm68060fpsave:
tstb a0@(2) | null state frame?
jeq Lm68060sdone | yes, all done
- fmovem fp0-fp7,a0@(216) | save FP general registers
- fmovem fpcr,a0@(312) | save FP control registers
- fmovem fpsr,a0@(316)
- fmovem fpi,a0@(320)
+ 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
@@ -1828,8 +1828,8 @@ ENTRY(m68881_restore)
#endif
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
+ 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
@@ -1838,10 +1838,10 @@ Lm68881rdone:
Lm68060fprestore:
tstb a0@(2) | null state frame?
jeq Lm68060fprdone | yes, easy
- fmovem a0@(312),fpcr | restore FP control registers
- fmovem a0@(316),fpsr
- fmovem a0@(320),fpi
- fmovem a0@(216),fp0-fp7 | restore FP general registers
+ 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