summaryrefslogtreecommitdiff
path: root/rts/StgPrimFloat.h
diff options
context:
space:
mode:
Diffstat (limited to 'rts/StgPrimFloat.h')
-rw-r--r--rts/StgPrimFloat.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/rts/StgPrimFloat.h b/rts/StgPrimFloat.h
new file mode 100644
index 0000000000..5de8360efd
--- /dev/null
+++ b/rts/StgPrimFloat.h
@@ -0,0 +1,21 @@
+/* -----------------------------------------------------------------------------
+ *
+ * (c) The GHC Team, 1998-2009
+ *
+ * Primitive floating-point operations
+ *
+ * ---------------------------------------------------------------------------*/
+
+#ifndef STGPRIMFLOAT_H
+#define STGPRIMFLOAT_H
+
+/* grimy low-level support functions defined in StgPrimFloat.c */
+extern void __decodeDouble_2Int (I_ *man_sign, W_ *man_high, W_ *man_low, I_ *exp, StgDouble dbl);
+extern void __decodeFloat_Int (I_ *man, I_ *exp, StgFloat flt);
+extern StgDouble __2Int_encodeDouble (I_ j_high, I_ j_low, I_ e);
+extern StgDouble __int_encodeDouble (I_ j, I_ e);
+extern StgDouble __word_encodeDouble (W_ j, I_ e);
+extern StgFloat __int_encodeFloat (I_ j, I_ e);
+extern StgFloat __word_encodeFloat (W_ j, I_ e);
+
+#endif /* STGPRIMFLOAT_H */