[runtime] Rename most System.Reflection.MonoX classes to RuntimeX for consistency...
[mono-project.git] / mono / metadata / number-ms.h
blob461f605da94757be501c565ef98f0c216917703d
1 /**
2 * \file
3 */
5 #ifndef __MONO_NUMBER_MS_H__
6 #define __MONO_NUMBER_MS_H__
8 #include <glib.h>
10 // Double floating point Bias
11 #define MONO_DOUBLE_BIAS 1022
13 // Structure to access an encoded double floating point
14 typedef struct {
15 #if G_BYTE_ORDER == G_BIG_ENDIAN
16 guint sign : 1;
17 guint exp : 11;
18 guint mantHi : 20;
19 guint mantLo : 32;
21 #define MONO_INIT_DOUBLE(sign, exp, mantHi, mantLo) { sign, exp, mantHi, mantLo }
23 #else // BIGENDIAN
24 guint mantLo : 32;
25 guint mantHi : 20;
26 guint exp : 11;
27 guint sign : 1;
29 #define MONO_INIT_DOUBLE(sign, exp, mantHi, mantLo) { mantLo, mantHi, exp, sign }
31 #endif
32 } MonoDouble;
34 typedef union {
35 MonoDouble s;
36 gdouble d;
37 } MonoDouble_double;
39 #endif