summaryrefslogtreecommitdiff
path: root/rts/StgPrimFloat.h
blob: d3911a13b953ce4ed022d7647145c61168b9b8c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/* -----------------------------------------------------------------------------
 *
 * (c) The GHC Team, 1998-2009
 *
 * Primitive floating-point operations
 *
 * ---------------------------------------------------------------------------*/

#ifndef STGPRIMFLOAT_H
#define STGPRIMFLOAT_H

#include "BeginPrivate.h"

/* grimy low-level support functions defined in StgPrimFloat.c */
StgInt    __decodeDouble_Int64 (StgInt64 *mantissa, StgDouble dbl);
void      __decodeDouble_2Int (I_ *man_sign, W_ *man_high, W_ *man_low, I_ *exp, StgDouble dbl);
void      __decodeFloat_Int (I_ *man, I_ *exp, StgFloat flt);

// __{int,word}_encode{Float,Double} are public, declared in
// includes/rts/PrimFloat.h.

#include "EndPrivate.h"

#endif /* STGPRIMFLOAT_H */

// Local Variables:
// mode: C
// fill-column: 80
// indent-tabs-mode: nil
// c-basic-offset: 4
// buffer-file-coding-system: utf-8-unix
// End: