summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortholo <tholo@openbsd.org>1997-02-07 08:05:01 +0000
committertholo <tholo@openbsd.org>1997-02-07 08:05:01 +0000
commit23bf0ad3ba740069f7ba27a226d65bb321d6b731 (patch)
treeabc246de95dfbeaccc2b89e70027463f50d9e3f7
parentUntested changes SUCK (diff)
downloadwireguard-openbsd-23bf0ad3ba740069f7ba27a226d65bb321d6b731.tar.xz
wireguard-openbsd-23bf0ad3ba740069f7ba27a226d65bb321d6b731.zip
Set up intrframe correctly for FPU exceptions again
-rw-r--r--sys/arch/i386/i386/locore.s8
1 files changed, 3 insertions, 5 deletions
diff --git a/sys/arch/i386/i386/locore.s b/sys/arch/i386/i386/locore.s
index 74f8738eee1..19a3d16eb34 100644
--- a/sys/arch/i386/i386/locore.s
+++ b/sys/arch/i386/i386/locore.s
@@ -2036,13 +2036,11 @@ IDTVEC(fpu)
pushl $0 # dummy error code
pushl $T_ASTFLT
INTRENTRY
-#if 0
- pushl _cpl # this is apparently not used for anything
-#endif
- pushl %esp
+ pushl _cpl # if_ppl in intrframe
+ pushl %esp # push address of intrframe
incl _cnt+V_TRAP
call _npxintr
- addl $8,%esp
+ addl $8,%esp # pop address and if_ppl
INTRFASTEXIT
#else
ZTRAP(T_ARITHTRAP)