summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/usbdi.c
diff options
context:
space:
mode:
authormiod <miod@openbsd.org>2013-09-05 20:40:32 +0000
committermiod <miod@openbsd.org>2013-09-05 20:40:32 +0000
commite7ef6004396edfb7856e664fef9a077105a95984 (patch)
treefb31723dcf081c1011200a47f2872c99aad922c3 /sys/dev/usb/usbdi.c
parentugold(4) is a driver for PCsensor's USB gold TEMPer temperature (diff)
downloadwireguard-openbsd-e7ef6004396edfb7856e664fef9a077105a95984.tar.xz
wireguard-openbsd-e7ef6004396edfb7856e664fef9a077105a95984.zip
Service the 88100 floating-point exceptions through trap(), keeping the
existing assembly code for now. Make sure the trapframe images of %fpsr and %fpcr are updated by the assembly handlers (in addition to the real registers which were already updated). When returning into trap(), check these updated value to decide whether a signal ought to be sent to the userland process. With these changes, computations which ought to cause a signal to be delivered will indeed trigger the signal, even when they are handled by the completion code in the floating point exception handlers. This fixes the libc/ieeefp/except and lib/fenv regress tests on 88100 systems, finally!
Diffstat (limited to 'sys/dev/usb/usbdi.c')
0 files changed, 0 insertions, 0 deletions