cvs commit: src/sys/ia64/ia64 trap.c
marcel at xcllnt.net
Mon Jan 19 20:38:22 PST 2004
On Mon, Jan 19, 2004 at 08:26:10PM -0800, David Schultz wrote:
> On Mon, Jan 19, 2004, Marcel Moolenaar wrote:
> > Fix handling of FP traps:
> > o For traps, the cr.iip register points to the next instruction to
> > execute on interrupt return (modulo slot). Since we need to get
> > the bundle of the instruction that caused the FP fault/trap, make
> > sure we fetch the previous bundle if the next instruction is in
> > fact the first in a bundle.
> > o When we call the FPSWA handler, we need to tell it whether it's
> > a trap or a fault (first argument). This was hardcoded to mean a
> > fault.
> > Also, for FP faults, when a fault is converted to a trap, adjust the
> > cr.iip and cr.ipsr registers to point to the next instruction. This
> > makes sure that the SIGFPE handler gets a consistent state.
> Does this fix the spurious SIGFPEs that were being delivered on
> denormal traps?
Yes, AFAICT. It definitely fixes the awk(1) problem I described.
Marcel Moolenaar USPA: A-39004 marcel at xcllnt.net
More information about the cvs-all