patch-1.3.50 linux/arch/alpha/math-emu/ieee-math.h
Next file: linux/arch/alpha/mm/fault.c
Previous file: linux/arch/alpha/math-emu/ieee-math.c
Back to the patch index
Back to the overall index
- Lines: 53
- Date:
Fri Dec 22 08:22:05 1995
- Orig file:
v1.3.49/linux/arch/alpha/math-emu/ieee-math.h
- Orig date:
Thu Jan 1 02:00:00 1970
diff -u --recursive --new-file v1.3.49/linux/arch/alpha/math-emu/ieee-math.h linux/arch/alpha/math-emu/ieee-math.h
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 1992,1995 by
+ * Digital Equipment Corporation, Maynard, Massachusetts.
+ * This file may be redistributed according to the terms of the
+ * GNU General Public License.
+ */
+#ifndef __ieee_math_h__
+#define __ieee_math_h__
+
+#include <asm/fpu.h>
+
+#define ROUND_SHIFT 6 /* make space for trap-enable bits */
+#define RM(f) (((f) >> ROUND_SHIFT) & 0x3)
+
+#define ROUND_CHOP (FPCR_DYN_CHOPPED >> FPCR_DYN_SHIFT)
+#define ROUND_NINF (FPCR_DYN_MINUS >> FPCR_DYN_SHIFT)
+#define ROUND_NEAR (FPCR_DYN_NORMAL >> FPCR_DYN_SHIFT)
+#define ROUND_PINF (FPCR_DYN_PLUS >> FPCR_DYN_SHIFT)
+
+extern unsigned long ieee_CVTST (int rm, unsigned long a, unsigned long *b);
+extern unsigned long ieee_CVTTS (int rm, unsigned long a, unsigned long *b);
+extern unsigned long ieee_CVTQS (int rm, unsigned long a, unsigned long *b);
+extern unsigned long ieee_CVTQT (int rm, unsigned long a, unsigned long *b);
+extern unsigned long ieee_CVTTQ (int rm, unsigned long a, unsigned long *b);
+
+extern unsigned long ieee_CMPTEQ (unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_CMPTLT (unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_CMPTLE (unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_CMPTUN (unsigned long a, unsigned long b,
+ unsigned long *c);
+
+extern unsigned long ieee_ADDS (int rm, unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_ADDT (int rm, unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_SUBS (int rm, unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_SUBT (int rm, unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_MULS (int rm, unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_MULT (int rm, unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_DIVS (int rm, unsigned long a, unsigned long b,
+ unsigned long *c);
+extern unsigned long ieee_DIVT (int rm, unsigned long a, unsigned long b,
+ unsigned long *c);
+
+#endif /* __ieee_math_h__ */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov
with Sam's (original) version of this