|
@@ -7,6 +7,10 @@
|
|
|
#ifndef __FLT_INCLUDED__
|
|
|
#define __FLT_INCLUDED__
|
|
|
|
|
|
+#ifndef arith
|
|
|
+#define arith long
|
|
|
+#endif
|
|
|
+
|
|
|
struct flt_mantissa {
|
|
|
long flt_h_32; /* high order 32 bits of mantissa */
|
|
|
long flt_l_32; /* low order 32 bits of mantissa */
|
|
@@ -26,4 +30,21 @@ extern int flt_status;
|
|
|
#define FLT_BTSM 020
|
|
|
|
|
|
#define FLT_STRLEN 32 /* max length of result of flt_flt2str() */
|
|
|
+
|
|
|
+#if __STDC__ > 0
|
|
|
+void flt_add(flt_arith *, flt_arith *, flt_arith *);
|
|
|
+void flt_sub(flt_arith *, flt_arith *, flt_arith *);
|
|
|
+void flt_mul(flt_arith *, flt_arith *, flt_arith *);
|
|
|
+void flt_div(flt_arith *, flt_arith *, flt_arith *);
|
|
|
+void flt_modf(flt_arith *, flt_arith *, flt_arith *);
|
|
|
+int flt_cmp(flt_arith *, flt_arith *);
|
|
|
+void flt_str2flt(char *, flt_arith *);
|
|
|
+void flt_flt2str(flt_arith *, char *, int);
|
|
|
+void flt_arith2flt(arith, flt_arith *, int);
|
|
|
+arith flt_flt2arith(flt_arith *, int);
|
|
|
+void flt_b64_sft(struct flt_mantissa *, int);
|
|
|
+void flt_umin(flt_arith *);
|
|
|
+#else
|
|
|
+arith flt_flt2arith();
|
|
|
+#endif
|
|
|
#endif /* __FLT_INCLUDED__ */
|