#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 #include /* 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); }