#include "newmacros.h"
#include "runtime.h"
#define FN_Prelude_46cFIsNeg ((void*)startLabel+8)
#define CT_v329 ((void*)startLabel+24)
#define F0_Prelude_46cFIsNeg ((void*)startLabel+32)
#define FN_Prelude_46cFIsNormal ((void*)startLabel+44)
#define CT_v330 ((void*)startLabel+60)
#define F0_Prelude_46cFIsNormal ((void*)startLabel+68)
#define FN_Prelude_46cFIsFinite ((void*)startLabel+80)
#define CT_v331 ((void*)startLabel+96)
#define F0_Prelude_46cFIsFinite ((void*)startLabel+104)
#define FN_Prelude_46cFIsNaN ((void*)startLabel+116)
#define CT_v332 ((void*)startLabel+132)
#define F0_Prelude_46cFIsNaN ((void*)startLabel+140)
#define CT_v333 ((void*)startLabel+172)
#define CT_v334 ((void*)startLabel+224)
#define CT_v335 ((void*)startLabel+272)
#define CT_v336 ((void*)startLabel+316)
#define CT_v337 ((void*)startLabel+356)
#define CT_v338 ((void*)startLabel+396)
#define CT_v339 ((void*)startLabel+432)
#define CT_v340 ((void*)startLabel+488)
#define CT_v341 ((void*)startLabel+520)
#define CT_v342 ((void*)startLabel+560)
#define CT_v343 ((void*)startLabel+596)
#define CT_v344 ((void*)startLabel+640)
#define CT_v345 ((void*)startLabel+680)
#define CT_v346 ((void*)startLabel+720)
#define CT_v347 ((void*)startLabel+796)
void FR_Prelude_46cFIsNeg(void);
void FR_Prelude_46cFIsNormal(void);
void FR_Prelude_46cFIsFinite(void);
void FR_Prelude_46cFIsNaN(void);
extern Node FN_Prelude_46Eq_46Prelude_46Float_46_61_61[];
extern Node FN_Prelude_46_38_38[];
extern Node FN_Prelude_46not[];
extern Node FN_Prelude_46primEncodeFloat[];
extern Node FN_Prelude_46primDecodeFloat[];
extern Node FN_Prelude_46_95_46atan2[];
extern Node CF_Prelude_46RealFloat_46Prelude_46Float[];
extern Node FN_Prelude_46_95_46scaleFloat[];
extern Node FN_Prelude_46_95_46significand[];
extern Node FN_Prelude_46_95_46exponent[];
extern Node CF_Prelude_46RealFrac_46Prelude_46Float[];
extern Node CF_Prelude_46Floating_46Prelude_46Float[];
static Node startLabel[] = {
bytes2word(1,0,0,1)
, useLabel(CT_v329)
, /* FN_Prelude_46cFIsNeg: (byte 0) */
bytes2word(PUSH_ARG_I1,EVAL,POP_I1,PRIMITIVE)
, useLabel(FR_Prelude_46cFIsNeg)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v329: (byte 0) */
HW(0,1)
, 0
, /* F0_Prelude_46cFIsNeg: (byte 0) */
CAPTAG(useLabel(FN_Prelude_46cFIsNeg),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v330)
, /* FN_Prelude_46cFIsNormal: (byte 0) */
bytes2word(PUSH_ARG_I1,EVAL,POP_I1,PRIMITIVE)
, useLabel(FR_Prelude_46cFIsNormal)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v330: (byte 0) */
HW(0,1)
, 0
, /* F0_Prelude_46cFIsNormal: (byte 0) */
CAPTAG(useLabel(FN_Prelude_46cFIsNormal),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v331)
, /* FN_Prelude_46cFIsFinite: (byte 0) */
bytes2word(PUSH_ARG_I1,EVAL,POP_I1,PRIMITIVE)
, useLabel(FR_Prelude_46cFIsFinite)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v331: (byte 0) */
HW(0,1)
, 0
, /* F0_Prelude_46cFIsFinite: (byte 0) */
CAPTAG(useLabel(FN_Prelude_46cFIsFinite),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v332)
, /* FN_Prelude_46cFIsNaN: (byte 0) */
bytes2word(PUSH_ARG_I1,EVAL,POP_I1,PRIMITIVE)
, useLabel(FR_Prelude_46cFIsNaN)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v332: (byte 0) */
HW(0,1)
, 0
, /* F0_Prelude_46cFIsNaN: (byte 0) */
CAPTAG(useLabel(FN_Prelude_46cFIsNaN),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v333)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46isIEEE[] = {
bytes2word(ZAP_ARG_I1,NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_N1)
, bytes2word(1,RETURN,ENDCODE,0)
, bytes2word(0,0,0,0)
, 0
, CONSTR(1,0,0)
, /* CT_v333: (byte 0) */
HW(0,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46isIEEE[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46isIEEE),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v334)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46isNegativeZero[] = {
bytes2word(NEEDHEAP_I32,HEAP_CVAL_I3,HEAP_ARG,1)
, bytes2word(HEAP_CVAL_I4,HEAP_ARG,1,HEAP_CADR_N1)
, bytes2word(2,PUSH_HEAP,HEAP_CVAL_I5,HEAP_OFF_N1)
, bytes2word(6,HEAP_OFF_N1,5,RETURN_EVAL)
, bytes2word(ENDCODE,0,0,0)
, bytes2word(0,0,0,0)
, CONSTRW(1,0)
, 0
, /* CT_v334: (byte 0) */
HW(3,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46isNegativeZero[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46isNegativeZero),1)
, VAPTAG(useLabel(FN_Prelude_46cFIsNeg))
, VAPTAG(useLabel(FN_Prelude_46Eq_46Prelude_46Float_46_61_61))
, VAPTAG(useLabel(FN_Prelude_46_38_38))
, bytes2word(1,0,0,1)
, useLabel(CT_v335)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46isDenormalized[] = {
bytes2word(NEEDHEAP_I32,HEAP_CVAL_I3,HEAP_ARG,1)
, bytes2word(PUSH_HEAP,HEAP_CVAL_I4,HEAP_OFF_N1,3)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v335: (byte 0) */
HW(2,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46isDenormalized[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46isDenormalized),1)
, VAPTAG(useLabel(FN_Prelude_46cFIsNormal))
, VAPTAG(useLabel(FN_Prelude_46not))
, bytes2word(1,0,0,1)
, useLabel(CT_v336)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46isInfinite[] = {
bytes2word(NEEDHEAP_I32,HEAP_CVAL_I3,HEAP_ARG,1)
, bytes2word(PUSH_HEAP,HEAP_CVAL_I4,HEAP_OFF_N1,3)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v336: (byte 0) */
HW(2,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46isInfinite[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46isInfinite),1)
, VAPTAG(useLabel(FN_Prelude_46cFIsFinite))
, VAPTAG(useLabel(FN_Prelude_46not))
, bytes2word(1,0,0,1)
, useLabel(CT_v337)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46isNaN[] = {
bytes2word(NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_I3,HEAP_ARG)
, bytes2word(1,RETURN_EVAL,ENDCODE,0)
, bytes2word(0,0,0,0)
, /* CT_v337: (byte 0) */
HW(1,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46isNaN[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46isNaN),1)
, VAPTAG(useLabel(FN_Prelude_46cFIsNaN))
, bytes2word(0,0,2,0)
, bytes2word(1,1,0,2)
, useLabel(CT_v338)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46encodeFloat[] = {
bytes2word(NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_I3,HEAP_ARG_ARG_RET_EVAL)
, bytes2word(1,2,ENDCODE,0)
, bytes2word(0,0,0,0)
, /* CT_v338: (byte 0) */
HW(1,2)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46encodeFloat[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46encodeFloat),2)
, VAPTAG(useLabel(FN_Prelude_46primEncodeFloat))
, bytes2word(1,0,0,1)
, useLabel(CT_v339)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46decodeFloat[] = {
bytes2word(NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_I3,HEAP_ARG)
, bytes2word(1,RETURN_EVAL,ENDCODE,0)
, bytes2word(0,0,0,0)
, /* CT_v339: (byte 0) */
HW(1,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46decodeFloat[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46decodeFloat),1)
, VAPTAG(useLabel(FN_Prelude_46primDecodeFloat))
, bytes2word(1,0,0,1)
, useLabel(CT_v340)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46floatRange[] = {
bytes2word(ZAP_ARG_I1,NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_N1)
, bytes2word(1,HEAP_CADR_N1,3,HEAP_INT_P1)
, bytes2word(128,RETURN,ENDCODE,0)
, bytes2word(0,0,0,0)
, 0
, CONSTRW(1,0)
, -148
, CONSTR(0,2,0)
, /* CT_v340: (byte 0) */
HW(0,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46floatRange[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46floatRange),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v341)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46floatDigits[] = {
bytes2word(ZAP_ARG_I1,NEEDSTACK_I16,PUSH_INT_P1,24)
, bytes2word(RETURN,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v341: (byte 0) */
HW(0,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46floatDigits[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46floatDigits),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v342)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46floatRadix[] = {
bytes2word(ZAP_ARG_I1,NEEDSTACK_I16,PUSH_CADR_N1,2)
, bytes2word(RETURN,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, CONSTRW(1,0)
, 2
, /* CT_v342: (byte 0) */
HW(0,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46floatRadix[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46floatRadix),1)
, bytes2word(0,0,2,0)
, bytes2word(1,1,0,2)
, useLabel(CT_v343)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46atan2[] = {
bytes2word(NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_I3,HEAP_CVAL_I4)
, bytes2word(HEAP_ARG_ARG_RET_EVAL,1,2,ENDCODE)
, bytes2word(0,0,0,0)
, /* CT_v343: (byte 0) */
HW(2,2)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46atan2[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46atan2),2)
, VAPTAG(useLabel(FN_Prelude_46_95_46atan2))
, useLabel(CF_Prelude_46RealFloat_46Prelude_46Float)
, bytes2word(0,0,2,0)
, bytes2word(1,1,0,2)
, useLabel(CT_v344)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46scaleFloat[] = {
bytes2word(NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_I3,HEAP_CVAL_I4)
, bytes2word(HEAP_ARG_ARG_RET_EVAL,1,2,ENDCODE)
, bytes2word(0,0,0,0)
, /* CT_v344: (byte 0) */
HW(2,2)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46scaleFloat[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46scaleFloat),2)
, VAPTAG(useLabel(FN_Prelude_46_95_46scaleFloat))
, useLabel(CF_Prelude_46RealFloat_46Prelude_46Float)
, bytes2word(1,0,0,1)
, useLabel(CT_v345)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46significand[] = {
bytes2word(NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_I3,HEAP_CVAL_I4)
, bytes2word(HEAP_ARG,1,RETURN_EVAL,ENDCODE)
, bytes2word(0,0,0,0)
, /* CT_v345: (byte 0) */
HW(2,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46significand[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46significand),1)
, VAPTAG(useLabel(FN_Prelude_46_95_46significand))
, useLabel(CF_Prelude_46RealFloat_46Prelude_46Float)
, bytes2word(1,0,0,1)
, useLabel(CT_v346)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float_46exponent[] = {
bytes2word(NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_I3,HEAP_CVAL_I4)
, bytes2word(HEAP_ARG,1,RETURN_EVAL,ENDCODE)
, bytes2word(0,0,0,0)
, /* CT_v346: (byte 0) */
HW(2,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Float_46exponent[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float_46exponent),1)
, VAPTAG(useLabel(FN_Prelude_46_95_46exponent))
, useLabel(CF_Prelude_46RealFloat_46Prelude_46Float)
, bytes2word(0,0,0,0)
, useLabel(CT_v347)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Float[] = {
bytes2word(NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_N1,1)
, bytes2word(HEAP_CVAL_I3,HEAP_CVAL_I4,HEAP_CVAL_I5,HEAP_CVAL_P1)
, bytes2word(6,HEAP_CVAL_P1,7,HEAP_CVAL_P1)
, bytes2word(8,HEAP_CVAL_P1,9,HEAP_CVAL_P1)
, bytes2word(10,HEAP_CVAL_P1,11,HEAP_CVAL_P1)
, bytes2word(12,HEAP_CVAL_P1,13,HEAP_CVAL_P1)
, bytes2word(14,HEAP_CVAL_P1,15,HEAP_CVAL_P1)
, bytes2word(16,HEAP_CVAL_P1,17,HEAP_CVAL_P1)
, bytes2word(18,RETURN,ENDCODE,0)
, bytes2word(0,0,0,0)
, 0
, CONSTR(0,16,0)
, /* CT_v347: (byte 0) */
HW(16,0)
, 0
,};
Node CF_Prelude_46RealFloat_46Prelude_46Float[] = {
VAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Float))
, useLabel(CF_Prelude_46RealFrac_46Prelude_46Float)
, useLabel(CF_Prelude_46Floating_46Prelude_46Float)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46atan2)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46isIEEE)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46isNaN)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46isDenormalized)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46significand)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46floatRange)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46isInfinite)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46isNegativeZero)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46floatDigits)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46decodeFloat)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46encodeFloat)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46scaleFloat)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46exponent)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Float_46floatRadix)
,};
#include <haskell2c.h>
#include <HsFFI.h>
/* foreign import ccall "math.h signbit" Prelude.cFIsNeg 1 :: Prelude.Float -> Prelude.Bool */
#include "math.h"
#ifdef PROFILE
static SInfo pf_Prelude_46cFIsNeg = {"Prelude","Prelude.cFIsNeg","Prelude.Bool"};
#endif
C_HEADER(FR_Prelude_46cFIsNeg) {
NodePtr nodeptr;
HsBool result;
float arg1;
nodeptr = C_GETARG1(1);
IND_REMOVE(nodeptr);
arg1 = (float)get_float_value(nodeptr);
result = signbit(arg1);
nodeptr = nhc_mkBool(result);
INIT_PROFINFO(nodeptr,&pf_Prelude_46cFIsNeg);
C_RETURN(nodeptr);
}
/* foreign import ccall "math.h isnormal" Prelude.cFIsNormal 1 :: Prelude.Float -> Prelude.Bool */
#include "math.h"
#ifdef PROFILE
static SInfo pf_Prelude_46cFIsNormal = {"Prelude","Prelude.cFIsNormal","Prelude.Bool"};
#endif
C_HEADER(FR_Prelude_46cFIsNormal) {
NodePtr nodeptr;
HsBool result;
float arg1;
nodeptr = C_GETARG1(1);
IND_REMOVE(nodeptr);
arg1 = (float)get_float_value(nodeptr);
result = isnormal(arg1);
nodeptr = nhc_mkBool(result);
INIT_PROFINFO(nodeptr,&pf_Prelude_46cFIsNormal);
C_RETURN(nodeptr);
}
/* foreign import ccall "math.h isfinite" Prelude.cFIsFinite 1 :: Prelude.Float -> Prelude.Bool */
#include "math.h"
#ifdef PROFILE
static SInfo pf_Prelude_46cFIsFinite = {"Prelude","Prelude.cFIsFinite","Prelude.Bool"};
#endif
C_HEADER(FR_Prelude_46cFIsFinite) {
NodePtr nodeptr;
HsBool result;
float arg1;
nodeptr = C_GETARG1(1);
IND_REMOVE(nodeptr);
arg1 = (float)get_float_value(nodeptr);
result = isfinite(arg1);
nodeptr = nhc_mkBool(result);
INIT_PROFINFO(nodeptr,&pf_Prelude_46cFIsFinite);
C_RETURN(nodeptr);
}
/* foreign import ccall "math.h isnan" Prelude.cFIsNaN 1 :: Prelude.Float -> Prelude.Bool */
#include "math.h"
#ifdef PROFILE
static SInfo pf_Prelude_46cFIsNaN = {"Prelude","Prelude.cFIsNaN","Prelude.Bool"};
#endif
C_HEADER(FR_Prelude_46cFIsNaN) {
NodePtr nodeptr;
HsBool result;
float arg1;
nodeptr = C_GETARG1(1);
IND_REMOVE(nodeptr);
arg1 = (float)get_float_value(nodeptr);
result = isnan(arg1);
nodeptr = nhc_mkBool(result);
INIT_PROFINFO(nodeptr,&pf_Prelude_46cFIsNaN);
C_RETURN(nodeptr);
}
|