cvs commit: src/lib/libc/ia64/gen fpgetmask.c fpsetmask.c
Marcel Moolenaar
marcel at FreeBSD.org
Wed Oct 22 02:00:10 PDT 2003
marcel 2003/10/22 02:00:07 PDT
FreeBSD src repository
Modified files:
lib/libc/ia64/gen fpgetmask.c fpsetmask.c
Log:
The FP status register allows for 6 traps to be masked. One of them,
the denormal/unnormal trap, is not a standard IEEE trap. We did
not exclude it from being returned by fpgetmask(), nor did we make
sure that fpsetmask() didn't clobber it. Since the non-IEEE trap
is not part of fp_except_t, users of ifpgetmask()/fpsetmask() would
be confronted with unexpected behaviour, one of which is a SIGFPE
for denormal/unnormal FP results.
This commit makes sure that we don't leak the denormal/unnormal mask
bit in fp_except_t and also that we don't clobber it.
Revision Changes Path
1.4 +1 -1 src/lib/libc/ia64/gen/fpgetmask.c
1.4 +2 -2 src/lib/libc/ia64/gen/fpsetmask.c
More information about the cvs-src
mailing list