Date: Mon, 19 Jan 2004 19:29:24 -0800 (PST) From: Marcel Moolenaar <marcel@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/ia64/ia64 trap.c Message-ID: <200401200329.i0K3TOL0029675@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
marcel 2004/01/19 19:29:24 PST
FreeBSD src repository
Modified files:
sys/ia64/ia64 trap.c
Log:
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.
Revision Changes Path
1.97 +23 -24 src/sys/ia64/ia64/trap.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401200329.i0K3TOL0029675>
