summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/gcc
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2013-09-05 20:40:33 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2013-09-05 20:40:33 +0000
commita456ac2d9507f9b23062f5b9004f537c920784f5 (patch)
tree67d264200a978339705744ab6c31d16f0fba1487 /gnu/usr.bin/gcc
parent6b37e992e3fe7525ab3688a51b9ba4c57cbef669 (diff)
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 'gnu/usr.bin/gcc')
0 files changed, 0 insertions, 0 deletions