#include "newmacros.h"
#include "runtime.h"
#define FN_Prelude_46cDIsNeg ((void*)startLabel+8)
#define CT_v329 ((void*)startLabel+24)
#define F0_Prelude_46cDIsNeg ((void*)startLabel+32)
#define FN_Prelude_46cDIsNormal ((void*)startLabel+44)
#define CT_v330 ((void*)startLabel+60)
#define F0_Prelude_46cDIsNormal ((void*)startLabel+68)
#define FN_Prelude_46cDIsFinite ((void*)startLabel+80)
#define CT_v331 ((void*)startLabel+96)
#define F0_Prelude_46cDIsFinite ((void*)startLabel+104)
#define FN_Prelude_46cDIsNaN ((void*)startLabel+116)
#define CT_v332 ((void*)startLabel+132)
#define F0_Prelude_46cDIsNaN ((void*)startLabel+140)
#define CT_v333 ((void*)startLabel+172)
#define CT_v334 ((void*)startLabel+232)
#define CT_v335 ((void*)startLabel+280)
#define CT_v336 ((void*)startLabel+324)
#define CT_v337 ((void*)startLabel+364)
#define CT_v338 ((void*)startLabel+404)
#define CT_v339 ((void*)startLabel+440)
#define CT_v340 ((void*)startLabel+504)
#define CT_v341 ((void*)startLabel+536)
#define CT_v342 ((void*)startLabel+576)
#define CT_v343 ((void*)startLabel+612)
#define CT_v344 ((void*)startLabel+656)
#define CT_v345 ((void*)startLabel+696)
#define CT_v346 ((void*)startLabel+736)
#define CT_v347 ((void*)startLabel+812)
void FR_Prelude_46cDIsNeg(void);
void FR_Prelude_46cDIsNormal(void);
void FR_Prelude_46cDIsFinite(void);
void FR_Prelude_46cDIsNaN(void);
extern Node FN_Prelude_46Eq_46Prelude_46Double_46_61_61[];
extern Node FN_Prelude_46_38_38[];
extern Node FN_Prelude_46not[];
extern Node FN_Prelude_46primEncodeDouble[];
extern Node FN_Prelude_46primDecodeDouble[];
extern Node FN_Prelude_46_95_46atan2[];
extern Node CF_Prelude_46RealFloat_46Prelude_46Double[];
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_46Double[];
extern Node CF_Prelude_46Floating_46Prelude_46Double[];
static Node startLabel[] = {
bytes2word(1,0,0,1)
, useLabel(CT_v329)
, /* FN_Prelude_46cDIsNeg: (byte 0) */
bytes2word(PUSH_ARG_I1,EVAL,POP_I1,PRIMITIVE)
, useLabel(FR_Prelude_46cDIsNeg)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v329: (byte 0) */
HW(0,1)
, 0
, /* F0_Prelude_46cDIsNeg: (byte 0) */
CAPTAG(useLabel(FN_Prelude_46cDIsNeg),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v330)
, /* FN_Prelude_46cDIsNormal: (byte 0) */
bytes2word(PUSH_ARG_I1,EVAL,POP_I1,PRIMITIVE)
, useLabel(FR_Prelude_46cDIsNormal)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v330: (byte 0) */
HW(0,1)
, 0
, /* F0_Prelude_46cDIsNormal: (byte 0) */
CAPTAG(useLabel(FN_Prelude_46cDIsNormal),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v331)
, /* FN_Prelude_46cDIsFinite: (byte 0) */
bytes2word(PUSH_ARG_I1,EVAL,POP_I1,PRIMITIVE)
, useLabel(FR_Prelude_46cDIsFinite)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v331: (byte 0) */
HW(0,1)
, 0
, /* F0_Prelude_46cDIsFinite: (byte 0) */
CAPTAG(useLabel(FN_Prelude_46cDIsFinite),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v332)
, /* FN_Prelude_46cDIsNaN: (byte 0) */
bytes2word(PUSH_ARG_I1,EVAL,POP_I1,PRIMITIVE)
, useLabel(FR_Prelude_46cDIsNaN)
, bytes2word(RETURN_EVAL,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v332: (byte 0) */
HW(0,1)
, 0
, /* F0_Prelude_46cDIsNaN: (byte 0) */
CAPTAG(useLabel(FN_Prelude_46cDIsNaN),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v333)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46isIEEE[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46isIEEE),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v334)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_46isNegativeZero[] = {
bytes2word(NEEDHEAP_I32,HEAP_CVAL_I3,HEAP_ARG,1)
, bytes2word(HEAP_CVAL_I4,HEAP_ARG,1,HEAP_CADR_N1)
, bytes2word(3,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)
, 0
, CONSTRW(2,0)
, 0
, 0
, /* CT_v334: (byte 0) */
HW(3,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Double_46isNegativeZero[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46isNegativeZero),1)
, VAPTAG(useLabel(FN_Prelude_46cDIsNeg))
, VAPTAG(useLabel(FN_Prelude_46Eq_46Prelude_46Double_46_61_61))
, VAPTAG(useLabel(FN_Prelude_46_38_38))
, bytes2word(1,0,0,1)
, useLabel(CT_v335)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46isDenormalized[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46isDenormalized),1)
, VAPTAG(useLabel(FN_Prelude_46cDIsNormal))
, VAPTAG(useLabel(FN_Prelude_46not))
, bytes2word(1,0,0,1)
, useLabel(CT_v336)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46isInfinite[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46isInfinite),1)
, VAPTAG(useLabel(FN_Prelude_46cDIsFinite))
, VAPTAG(useLabel(FN_Prelude_46not))
, bytes2word(1,0,0,1)
, useLabel(CT_v337)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46isNaN[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46isNaN),1)
, VAPTAG(useLabel(FN_Prelude_46cDIsNaN))
, bytes2word(0,0,2,0)
, bytes2word(1,1,0,2)
, useLabel(CT_v338)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46encodeFloat[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46encodeFloat),2)
, VAPTAG(useLabel(FN_Prelude_46primEncodeDouble))
, bytes2word(1,0,0,1)
, useLabel(CT_v339)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46decodeFloat[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46decodeFloat),1)
, VAPTAG(useLabel(FN_Prelude_46primDecodeDouble))
, bytes2word(1,0,0,1)
, useLabel(CT_v340)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_46floatRange[] = {
bytes2word(ZAP_ARG_I1,NEEDHEAP_I32,PUSH_HEAP,HEAP_CVAL_N1)
, bytes2word(1,HEAP_CADR_N1,3,HEAP_CADR_N1)
, bytes2word(5,RETURN,ENDCODE,0)
, bytes2word(0,0,0,0)
, 0
, CONSTRW(1,0)
, 1024
, CONSTRW(1,0)
, -1073
, CONSTR(0,2,0)
, /* CT_v340: (byte 0) */
HW(0,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Double_46floatRange[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46floatRange),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v341)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_46floatDigits[] = {
bytes2word(ZAP_ARG_I1,NEEDSTACK_I16,PUSH_INT_P1,53)
, bytes2word(RETURN,ENDCODE,0,0)
, bytes2word(0,0,0,0)
, /* CT_v341: (byte 0) */
HW(0,1)
, 0
,};
Node F0_Prelude_46RealFloat_46Prelude_46Double_46floatDigits[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46floatDigits),1)
, bytes2word(1,0,0,1)
, useLabel(CT_v342)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46floatRadix[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46floatRadix),1)
, bytes2word(0,0,2,0)
, bytes2word(1,1,0,2)
, useLabel(CT_v343)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46atan2[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46atan2),2)
, VAPTAG(useLabel(FN_Prelude_46_95_46atan2))
, useLabel(CF_Prelude_46RealFloat_46Prelude_46Double)
, bytes2word(0,0,2,0)
, bytes2word(1,1,0,2)
, useLabel(CT_v344)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46scaleFloat[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46scaleFloat),2)
, VAPTAG(useLabel(FN_Prelude_46_95_46scaleFloat))
, useLabel(CF_Prelude_46RealFloat_46Prelude_46Double)
, bytes2word(1,0,0,1)
, useLabel(CT_v345)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46significand[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46significand),1)
, VAPTAG(useLabel(FN_Prelude_46_95_46significand))
, useLabel(CF_Prelude_46RealFloat_46Prelude_46Double)
, bytes2word(1,0,0,1)
, useLabel(CT_v346)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double_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_46Double_46exponent[] = {
CAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double_46exponent),1)
, VAPTAG(useLabel(FN_Prelude_46_95_46exponent))
, useLabel(CF_Prelude_46RealFloat_46Prelude_46Double)
, bytes2word(0,0,0,0)
, useLabel(CT_v347)
,};
Node FN_Prelude_46RealFloat_46Prelude_46Double[] = {
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_46Double[] = {
VAPTAG(useLabel(FN_Prelude_46RealFloat_46Prelude_46Double))
, useLabel(CF_Prelude_46RealFrac_46Prelude_46Double)
, useLabel(CF_Prelude_46Floating_46Prelude_46Double)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46atan2)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46isIEEE)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46isNaN)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46isDenormalized)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46significand)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46floatRange)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46isInfinite)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46isNegativeZero)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46floatDigits)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46decodeFloat)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46encodeFloat)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46scaleFloat)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46exponent)
, useLabel(F0_Prelude_46RealFloat_46Prelude_46Double_46floatRadix)
,};
#include <haskell2c.h>
#include <HsFFI.h>
/* foreign import ccall "math.h signbit" Prelude.cDIsNeg 1 :: Prelude.Double -> Prelude.Bool */
#include "math.h"
#ifdef PROFILE
static SInfo pf_Prelude_46cDIsNeg = {"Prelude","Prelude.cDIsNeg","Prelude.Bool"};
#endif
C_HEADER(FR_Prelude_46cDIsNeg) {
NodePtr nodeptr;
HsBool result;
double arg1;
nodeptr = C_GETARG1(1);
IND_REMOVE(nodeptr);
arg1 = (double)get_double_value(nodeptr);
result = signbit(arg1);
nodeptr = nhc_mkBool(result);
INIT_PROFINFO(nodeptr,&pf_Prelude_46cDIsNeg);
C_RETURN(nodeptr);
}
/* foreign import ccall "math.h isnormal" Prelude.cDIsNormal 1 :: Prelude.Double -> Prelude.Bool */
#include "math.h"
#ifdef PROFILE
static SInfo pf_Prelude_46cDIsNormal = {"Prelude","Prelude.cDIsNormal","Prelude.Bool"};
#endif
C_HEADER(FR_Prelude_46cDIsNormal) {
NodePtr nodeptr;
HsBool result;
double arg1;
nodeptr = C_GETARG1(1);
IND_REMOVE(nodeptr);
arg1 = (double)get_double_value(nodeptr);
result = isnormal(arg1);
nodeptr = nhc_mkBool(result);
INIT_PROFINFO(nodeptr,&pf_Prelude_46cDIsNormal);
C_RETURN(nodeptr);
}
/* foreign import ccall "math.h isfinite" Prelude.cDIsFinite 1 :: Prelude.Double -> Prelude.Bool */
#include "math.h"
#ifdef PROFILE
static SInfo pf_Prelude_46cDIsFinite = {"Prelude","Prelude.cDIsFinite","Prelude.Bool"};
#endif
C_HEADER(FR_Prelude_46cDIsFinite) {
NodePtr nodeptr;
HsBool result;
double arg1;
nodeptr = C_GETARG1(1);
IND_REMOVE(nodeptr);
arg1 = (double)get_double_value(nodeptr);
result = isfinite(arg1);
nodeptr = nhc_mkBool(result);
INIT_PROFINFO(nodeptr,&pf_Prelude_46cDIsFinite);
C_RETURN(nodeptr);
}
/* foreign import ccall "math.h isnan" Prelude.cDIsNaN 1 :: Prelude.Double -> Prelude.Bool */
#include "math.h"
#ifdef PROFILE
static SInfo pf_Prelude_46cDIsNaN = {"Prelude","Prelude.cDIsNaN","Prelude.Bool"};
#endif
C_HEADER(FR_Prelude_46cDIsNaN) {
NodePtr nodeptr;
HsBool result;
double arg1;
nodeptr = C_GETARG1(1);
IND_REMOVE(nodeptr);
arg1 = (double)get_double_value(nodeptr);
result = isnan(arg1);
nodeptr = nhc_mkBool(result);
INIT_PROFINFO(nodeptr,&pf_Prelude_46cDIsNaN);
C_RETURN(nodeptr);
}
|