[PPL-devel] [GIT] ppl/ppl(floating_point): Added a few details about other floating point formats.
Fabio Bossi
bossi at cs.unipr.it
Tue Sep 22 17:05:14 CEST 2009
Module: ppl/ppl
Branch: floating_point
Commit: 655d6cc8016a48e74e52358d754c0e88d8edc13e
URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=655d6cc8016a48e74e52358d754c0e88d8edc13e
Author: Fabio Bossi <bossi at cs.unipr.it>
Date: Tue Sep 22 17:08:31 2009 +0200
Added a few details about other floating point formats.
---
src/Float.defs.hh | 30 ++++++++++++++++++++++++++++++
1 files changed, 30 insertions(+), 0 deletions(-)
diff --git a/src/Float.defs.hh b/src/Float.defs.hh
index e743b77..2053a9a 100644
--- a/src/Float.defs.hh
+++ b/src/Float.defs.hh
@@ -41,6 +41,16 @@ namespace Parma_Polyhedra_Library {
/*! \ingroup PPL_CXX_interface */
#endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
+struct float_ieee754_half {
+ static const unsigned int EXPONENT_BITS = 5;
+ static const unsigned int MANTISSA_BITS = 10;
+ static const int EXPONENT_BIAS = 15;
+};
+
+#ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
+/*! \ingroup PPL_CXX_interface */
+#endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
+
struct float_ieee754_single {
uint32_t word;
static const uint32_t SGN_MASK = 0x80000000;
@@ -115,6 +125,26 @@ struct float_ieee754_double {
/*! \ingroup PPL_CXX_interface */
#endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
+struct float_IBM_single {
+ static const unsigned int EXPONENT_BITS = 7;
+ static const unsigned int MANTISSA_BITS = 24;
+ static const int EXPONENT_BIAS = 64;
+};
+
+#ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
+/*! \ingroup PPL_CXX_interface */
+#endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
+
+struct float_IBM_double {
+ static const unsigned int EXPONENT_BITS = 7;
+ static const unsigned int MANTISSA_BITS = 56;
+ static const int EXPONENT_BIAS = 64;
+};
+
+#ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
+/*! \ingroup PPL_CXX_interface */
+#endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
+
struct float_intel_double_extended {
#ifdef PPL_WORDS_BIGENDIAN
uint32_t msp;
More information about the PPL-devel
mailing list