diff options
author | jake <jake@FreeBSD.org> | 2002-04-27 21:56:28 +0000 |
---|---|---|
committer | jake <jake@FreeBSD.org> | 2002-04-27 21:56:28 +0000 |
commit | a1a94cce5c09be6d56eb4c83034f03ab93077bbe (patch) | |
tree | ef5f4b8e186ab8b15487aae5d54638610a6e672b /lib/libc/sparc64/fpu/fpu_explode.c | |
parent | 60ee831d3e0478dd494c5dd9b27f019f1700ea71 (diff) | |
download | FreeBSD-src-a1a94cce5c09be6d56eb4c83034f03ab93077bbe.zip FreeBSD-src-a1a94cce5c09be6d56eb4c83034f03ab93077bbe.tar.gz |
Emulate ldq and stq (load/store long double) instructions. GCC has started
using these to load long doubles, but they aren't implemented in hardware
on (at least) UltraSPARC I and II machines.
Emulate popc in the user trap handler as well.
Re-arrange slightly to make support functions more accessible.
Reviewed by: tmm
Diffstat (limited to 'lib/libc/sparc64/fpu/fpu_explode.c')
-rw-r--r-- | lib/libc/sparc64/fpu/fpu_explode.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/libc/sparc64/fpu/fpu_explode.c b/lib/libc/sparc64/fpu/fpu_explode.c index baa2da2..6967f5c 100644 --- a/lib/libc/sparc64/fpu/fpu_explode.c +++ b/lib/libc/sparc64/fpu/fpu_explode.c @@ -62,6 +62,7 @@ __FBSDID("$FreeBSD$"); #include "fpu_arith.h" #include "fpu_emu.h" #include "fpu_extern.h" +#include "__sparc_utrap_private.h" /* * N.B.: in all of the following, we assume the FP format is @@ -278,7 +279,7 @@ __fpu_explode(fe, fp, type, reg) break; default: - __fpu_panic("fpu_explode"); + __utrap_panic("fpu_explode"); } if (s == FPC_QNAN && (fp->fp_mant[0] & FP_QUIETBIT) == 0) { |