Deleted Added
full compact
fpu_explode.c (92986) fpu_explode.c (95587)
1/*
2 * Copyright (c) 1992, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This software was developed by the Computer Systems Engineering group
6 * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
7 * contributed to Berkeley.
8 *

--- 30 unchanged lines hidden (view full) ---

39 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
40 * SUCH DAMAGE.
41 *
42 * @(#)fpu_explode.c 8.1 (Berkeley) 6/11/93
43 * $NetBSD: fpu_explode.c,v 1.5 2000/08/03 18:32:08 eeh Exp $
44 */
45
46#include <sys/cdefs.h>
1/*
2 * Copyright (c) 1992, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This software was developed by the Computer Systems Engineering group
6 * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
7 * contributed to Berkeley.
8 *

--- 30 unchanged lines hidden (view full) ---

39 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
40 * SUCH DAMAGE.
41 *
42 * @(#)fpu_explode.c 8.1 (Berkeley) 6/11/93
43 * $NetBSD: fpu_explode.c,v 1.5 2000/08/03 18:32:08 eeh Exp $
44 */
45
46#include <sys/cdefs.h>
47__FBSDID("$FreeBSD: head/lib/libc/sparc64/fpu/fpu_explode.c 92986 2002-03-22 21:53:29Z obrien $");
47__FBSDID("$FreeBSD: head/lib/libc/sparc64/fpu/fpu_explode.c 95587 2002-04-27 21:56:28Z jake $");
48
49/*
50 * FPU subroutines: `explode' the machine's `packed binary' format numbers
51 * into our internal format.
52 */
53
54#include <sys/param.h>
55
56#include <machine/frame.h>
57#include <machine/fp.h>
58#include <machine/fsr.h>
59#include <machine/ieee.h>
60#include <machine/instr.h>
61
62#include "fpu_arith.h"
63#include "fpu_emu.h"
64#include "fpu_extern.h"
48
49/*
50 * FPU subroutines: `explode' the machine's `packed binary' format numbers
51 * into our internal format.
52 */
53
54#include <sys/param.h>
55
56#include <machine/frame.h>
57#include <machine/fp.h>
58#include <machine/fsr.h>
59#include <machine/ieee.h>
60#include <machine/instr.h>
61
62#include "fpu_arith.h"
63#include "fpu_emu.h"
64#include "fpu_extern.h"
65#include "__sparc_utrap_private.h"
65
66/*
67 * N.B.: in all of the following, we assume the FP format is
68 *
69 * ---------------------------
70 * | s | exponent | fraction |
71 * ---------------------------
72 *

--- 200 unchanged lines hidden (view full) ---

273
274 case FTYPE_EXT:
275 s = __fpu_qtof(fp, s, __fpu_getreg(reg + 1),
276 __fpu_getreg(reg + 2),
277 __fpu_getreg(reg + 3));
278 break;
279
280 default:
66
67/*
68 * N.B.: in all of the following, we assume the FP format is
69 *
70 * ---------------------------
71 * | s | exponent | fraction |
72 * ---------------------------
73 *

--- 200 unchanged lines hidden (view full) ---

274
275 case FTYPE_EXT:
276 s = __fpu_qtof(fp, s, __fpu_getreg(reg + 1),
277 __fpu_getreg(reg + 2),
278 __fpu_getreg(reg + 3));
279 break;
280
281 default:
281 __fpu_panic("fpu_explode");
282 __utrap_panic("fpu_explode");
282 }
283
284 if (s == FPC_QNAN && (fp->fp_mant[0] & FP_QUIETBIT) == 0) {
285 /*
286 * Input is a signalling NaN. All operations that return
287 * an input NaN operand put it through a ``NaN conversion'',
288 * which basically just means ``turn on the quiet bit''.
289 * We do this here so that all NaNs internally look quiet

--- 16 unchanged lines hidden ---
283 }
284
285 if (s == FPC_QNAN && (fp->fp_mant[0] & FP_QUIETBIT) == 0) {
286 /*
287 * Input is a signalling NaN. All operations that return
288 * an input NaN operand put it through a ``NaN conversion'',
289 * which basically just means ``turn on the quiet bit''.
290 * We do this here so that all NaNs internally look quiet

--- 16 unchanged lines hidden ---