Created
December 11, 2017 10:03
-
-
Save TerrorJack/f6467a43cdbfcef8b4ec77a8b5624abe to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* GHC_PACKAGES base ghc-prim integer-simple | |
*/ | |
#include "Stg.h" | |
EB_(Main_zdtrModule4_bytes); | |
const char Main_zdtrModule4_bytes[] = "main"; | |
ERO_(ghczmprim_GHCziTypes_TrNameS_con_info); | |
EB_(Main_zdtrModule4_bytes); | |
EC_(Main_zdtrModule3_closure); | |
StgWord Main_zdtrModule3_closure[]__attribute__((aligned(8)))= { | |
(W_)&ghczmprim_GHCziTypes_TrNameS_con_info, (W_)&Main_zdtrModule4_bytes | |
}; | |
EB_(Main_zdtrModule2_bytes); | |
const char Main_zdtrModule2_bytes[] = "Main"; | |
ERO_(ghczmprim_GHCziTypes_TrNameS_con_info); | |
EB_(Main_zdtrModule2_bytes); | |
EC_(Main_zdtrModule1_closure); | |
StgWord Main_zdtrModule1_closure[]__attribute__((aligned(8)))= { | |
(W_)&ghczmprim_GHCziTypes_TrNameS_con_info, (W_)&Main_zdtrModule2_bytes | |
}; | |
ERO_(ghczmprim_GHCziTypes_Module_con_info); | |
EC_(Main_zdtrModule1_closure); | |
EC_(Main_zdtrModule3_closure); | |
EC_(Main_zdtrModule_closure); | |
StgWord Main_zdtrModule_closure[]__attribute__((aligned(8)))= { | |
(W_)&ghczmprim_GHCziTypes_Module_con_info, ((W_)&Main_zdtrModule3_closure+1), ((W_)&Main_zdtrModule1_closure+1), 0x3UL | |
}; | |
ERO_(Main_zdwfact_info); | |
EC_(Main_zdwfact_closure); | |
StgWord Main_zdwfact_closure[]__attribute__((aligned(8)))= { | |
(W_)&Main_zdwfact_info | |
}; | |
IRO_(c4Cn_info); | |
EC_(Main_zdwfact_closure); | |
EF_(Main_zdwfact_entry); | |
FN_(Main_zdwfact_entry) { | |
W_ _s4BX; | |
_c4Cg: | |
if ((W_)(((W_)Sp-16) < (W_)SpLim)) goto _c4Ch; else goto _c4Ci; | |
_c4Ce: | |
Sp[-1] = (W_)&c4Cn_info; | |
Sp[-2] = _s4BX-1; | |
*Sp = _s4BX; | |
Sp=Sp-2; | |
JMP_((W_)&Main_zdwfact_entry); | |
_c4Cf: | |
R1.w = 0x1UL; | |
Sp=Sp+1; | |
JMP_(*((P_)(*Sp))); | |
_c4Ch: | |
R1.w = (W_)&Main_zdwfact_closure; | |
JMP_(stg_gc_fun); | |
_c4Ci: | |
_s4BX = *Sp; | |
switch (_s4BX) { | |
case 0x0UL: goto _c4Cf; | |
default: goto _c4Ce; | |
} | |
} | |
EF_(Main_zdwfact_entry); | |
ERO_(Main_zdwfact_info); | |
const StgWord Main_zdwfact_info[]__attribute__((aligned(8)))= { | |
(W_)&Main_zdwfact_entry, 0x0UL, 0xeUL, 0x100000004UL | |
}; | |
IF_(_c4Cn) { | |
_c4Cn: | |
R1.w = (Sp[1]) * R1.w; | |
Sp=Sp+2; | |
JMP_(*((P_)(*Sp))); | |
} | |
IF_(_c4Cn); | |
IRO_(c4Cn_info); | |
static const StgWord c4Cn_info[]__attribute__((aligned(8)))= { | |
(W_)&_c4Cn, 0x41UL, 0x1eUL | |
}; | |
ERO_(Main_main2_info); | |
EC_(Main_main2_closure); | |
StgWord Main_main2_closure[]__attribute__((aligned(8)))= { | |
(W_)&Main_main2_info, 0x0UL, 0x0UL, 0x0UL | |
}; | |
IRO_(c4Cz_info); | |
EF_(Main_zdwfact_entry); | |
EFF_(newCAF); | |
FN_(Main_main2_entry) { | |
W_ _c4Cw; | |
W_ _r4BQ; | |
_c4CB: | |
_r4BQ = R1.w; | |
if ((W_)(((W_)Sp-48) < (W_)SpLim)) goto _c4CH; else goto _c4CI; | |
_c4Cx: | |
Sp[-2] = (W_)&stg_bh_upd_frame_info; | |
Sp[-1] = _c4Cw; | |
Sp[-3] = (W_)&c4Cz_info; | |
Sp[-4] = 0x5UL; | |
Sp=Sp-4; | |
JMP_((W_)&Main_zdwfact_entry); | |
_c4Cy: | |
JMP_(*((P_)(*((P_)_r4BQ)))); | |
_c4CH: | |
R1.w = _r4BQ; | |
JMP_(stg_gc_enter_1); | |
_c4CI: | |
{void * (*ghcFunPtr)(void *, void *); | |
ghcFunPtr = ((void * (*)(void *, void *))newCAF); | |
_c4Cw = (W_)ghcFunPtr((void *)(W_)BaseReg, (void *)_r4BQ);;} | |
if ((W_)(_c4Cw == 0x0UL)) goto _c4Cy; else goto _c4Cx; | |
} | |
EF_(Main_main2_entry); | |
ERO_(Main_main2_info); | |
const StgWord Main_main2_info[]__attribute__((aligned(8)))= { | |
(W_)&Main_main2_entry, 0x0UL, 0x15UL | |
}; | |
EC_(ghczmprim_GHCziTypes_ZMZN_closure); | |
IRO_(c4CE_info); | |
EF_(base_GHCziShow_zdwshowSignedInt_entry); | |
IF_(_c4Cz) { | |
_c4Cz: | |
*Sp = (W_)&c4CE_info; | |
Sp[-3] = 0x0UL; | |
Sp[-2] = R1.w; | |
Sp[-1] = (W_)&ghczmprim_GHCziTypes_ZMZN_closure+1; | |
Sp=Sp-3; | |
JMP_((W_)&base_GHCziShow_zdwshowSignedInt_entry); | |
} | |
IF_(_c4Cz); | |
IRO_(c4Cz_info); | |
static const StgWord c4Cz_info[]__attribute__((aligned(8)))= { | |
(W_)&_c4Cz, 0x0UL, 0x1eUL | |
}; | |
ERO_(ghczmprim_GHCziTypes_ZC_con_info); | |
IF_(_c4CE) { | |
W_ _s4C2; | |
_c4CE: | |
Hp=Hp+3; | |
_s4C2 = R1.w; | |
if ((W_)((W_)Hp > (W_)HpLim)) goto _c4CM; else goto _c4CL; | |
_c4CL: | |
Hp[-2] = (W_)&ghczmprim_GHCziTypes_ZC_con_info; | |
Hp[-1] = _s4C2; | |
*Hp = *Sp; | |
R1.w = (W_)Hp-14; | |
Sp=Sp+2; | |
JMP_(*((P_)(*Sp))); | |
_c4CM: | |
HpAlloc = 0x18UL; | |
R1.w = _s4C2; | |
JMP_((W_)&stg_gc_pp); | |
} | |
IF_(_c4CE); | |
IRO_(c4CE_info); | |
static const StgWord c4CE_info[]__attribute__((aligned(8)))= { | |
(W_)&_c4CE, 0x0UL, 0x1eUL | |
}; | |
EB_(Main_main4_bytes); | |
const char Main_main4_bytes[] = "Hello fact"; | |
ERO_(Main_main3_info); | |
EC_(Main_main3_closure); | |
StgWord Main_main3_closure[]__attribute__((aligned(8)))= { | |
(W_)&Main_main3_info, 0x0UL, 0x0UL, 0x0UL | |
}; | |
EF_(ghczmprim_GHCziCString_unpackCStringzh_entry); | |
EB_(Main_main4_bytes); | |
EFF_(newCAF); | |
FN_(Main_main3_entry) { | |
W_ _c4CQ; | |
W_ _r4BS; | |
_c4CT: | |
_r4BS = R1.w; | |
if ((W_)(((W_)Sp-24) < (W_)SpLim)) goto _c4CU; else goto _c4CV; | |
_c4CR: | |
Sp[-2] = (W_)&stg_bh_upd_frame_info; | |
Sp[-1] = _c4CQ; | |
Sp[-3] = (W_)&Main_main4_bytes; | |
Sp=Sp-3; | |
JMP_((W_)&ghczmprim_GHCziCString_unpackCStringzh_entry); | |
_c4CS: | |
JMP_(*((P_)(*((P_)_r4BS)))); | |
_c4CU: | |
R1.w = _r4BS; | |
JMP_(stg_gc_enter_1); | |
_c4CV: | |
{void * (*ghcFunPtr)(void *, void *); | |
ghcFunPtr = ((void * (*)(void *, void *))newCAF); | |
_c4CQ = (W_)ghcFunPtr((void *)(W_)BaseReg, (void *)_r4BS);;} | |
if ((W_)(_c4CQ == 0x0UL)) goto _c4CS; else goto _c4CR; | |
} | |
EF_(Main_main3_entry); | |
ERO_(Main_main3_info); | |
const StgWord Main_main3_info[]__attribute__((aligned(8)))= { | |
(W_)&Main_main3_entry, 0x0UL, 0x15UL | |
}; | |
ERO_(Main_main1_info); | |
EC_(Main_main1_closure); | |
StgWord Main_main1_closure[]__attribute__((aligned(8)))= { | |
(W_)&Main_main1_info, 0x0UL | |
}; | |
EC_(ghczmprim_GHCziTypes_True_closure); | |
IRO_(c4D0_info); | |
EC_(base_GHCziIOziHandleziFD_stdout_closure); | |
EF_(base_GHCziIOziHandleziText_hPutStr2_entry); | |
EC_(Main_main1_closure); | |
EC_(Main_main3_closure); | |
FN_(Main_main1_entry) { | |
_c4D2: | |
if ((W_)(((W_)Sp-32) < (W_)SpLim)) goto _c4D3; else goto _c4D4; | |
_c4D3: | |
R1.w = (W_)&Main_main1_closure; | |
JMP_(stg_gc_fun); | |
_c4D4: | |
Sp[-1] = (W_)&c4D0_info; | |
Sp[-4] = (W_)&base_GHCziIOziHandleziFD_stdout_closure; | |
Sp[-3] = (W_)&Main_main3_closure; | |
Sp[-2] = (W_)&ghczmprim_GHCziTypes_True_closure+2; | |
Sp=Sp-4; | |
JMP_((W_)&base_GHCziIOziHandleziText_hPutStr2_entry); | |
} | |
EF_(Main_main1_entry); | |
IRO_(S4D6_srt); | |
ERO_(Main_main1_info); | |
const StgWord Main_main1_info[]__attribute__((aligned(8)))= { | |
(W_)&Main_main1_entry, 0x0UL, 0x1f0000000eUL, 0x100000003UL, (W_)&S4D6_srt | |
}; | |
EC_(ghczmprim_GHCziTypes_True_closure); | |
EC_(base_GHCziIOziHandleziFD_stdout_closure); | |
EF_(base_GHCziIOziHandleziText_hPutStr2_entry); | |
EC_(Main_main2_closure); | |
IF_(_c4D0) { | |
_c4D0: | |
Sp[-2] = (W_)&base_GHCziIOziHandleziFD_stdout_closure; | |
Sp[-1] = (W_)&Main_main2_closure; | |
*Sp = (W_)&ghczmprim_GHCziTypes_True_closure+2; | |
Sp=Sp-2; | |
JMP_((W_)&base_GHCziIOziHandleziText_hPutStr2_entry); | |
} | |
IF_(_c4D0); | |
IRO_(S4D6_srt); | |
IRO_(c4D0_info); | |
static const StgWord c4D0_info[]__attribute__((aligned(8)))= { | |
(W_)&_c4D0, 0x0UL, 0xb0000001eUL, (W_)&S4D6_srt | |
}; | |
ERO_(Main_main_info); | |
EC_(Main_main_closure); | |
StgWord Main_main_closure[]__attribute__((aligned(8)))= { | |
(W_)&Main_main_info, 0x0UL | |
}; | |
EF_(Main_main1_entry); | |
FN_(Main_main_entry) { | |
_c4Db: | |
JMP_((W_)&Main_main1_entry); | |
} | |
EF_(Main_main_entry); | |
IRO_(S4D6_srt); | |
ERO_(Main_main_info); | |
const StgWord Main_main_info[]__attribute__((aligned(8)))= { | |
(W_)&Main_main_entry, 0x0UL, 0x10000000eUL, 0x100000003UL, ((W_)&S4D6_srt+16) | |
}; | |
ERO_(Main_main5_info); | |
EC_(Main_main5_closure); | |
StgWord Main_main5_closure[]__attribute__((aligned(8)))= { | |
(W_)&Main_main5_info, 0x0UL | |
}; | |
EF_(base_GHCziTopHandler_runMainIO1_entry); | |
EC_(Main_main1_closure); | |
EC_(Main_main5_closure); | |
FN_(Main_main5_entry) { | |
_c4Di: | |
if ((W_)(((W_)Sp-8) < (W_)SpLim)) goto _c4Dj; else goto _c4Dk; | |
_c4Dj: | |
R1.w = (W_)&Main_main5_closure; | |
JMP_(stg_gc_fun); | |
_c4Dk: | |
Sp[-1] = (W_)&Main_main1_closure+1; | |
Sp=Sp-1; | |
JMP_((W_)&base_GHCziTopHandler_runMainIO1_entry); | |
} | |
EF_(Main_main5_entry); | |
IRO_(S4D6_srt); | |
ERO_(Main_main5_info); | |
const StgWord Main_main5_info[]__attribute__((aligned(8)))= { | |
(W_)&Main_main5_entry, 0x0UL, 0x190000000eUL, 0x100000003UL, ((W_)&S4D6_srt+16) | |
}; | |
ERO_(ZCMain_main_info); | |
EC_(ZCMain_main_closure); | |
StgWord ZCMain_main_closure[]__attribute__((aligned(8)))= { | |
(W_)&ZCMain_main_info, 0x0UL | |
}; | |
EF_(Main_main5_entry); | |
FN_(ZCMain_main_entry) { | |
_c4Dp: | |
JMP_((W_)&Main_main5_entry); | |
} | |
EF_(ZCMain_main_entry); | |
IRO_(S4D6_srt); | |
ERO_(ZCMain_main_info); | |
const StgWord ZCMain_main_info[]__attribute__((aligned(8)))= { | |
(W_)&ZCMain_main_entry, 0x0UL, 0x10000000eUL, 0x100000003UL, ((W_)&S4D6_srt+48) | |
}; | |
EC_(base_GHCziIOziHandleziFD_stdout_closure); | |
EC_(base_GHCziIOziHandleziText_hPutStr2_closure); | |
EC_(base_GHCziTopHandler_runMainIO1_closure); | |
EC_(Main_main1_closure); | |
EC_(Main_main2_closure); | |
EC_(Main_main3_closure); | |
EC_(Main_main5_closure); | |
IRO_(S4D6_srt); | |
static const StgWord S4D6_srt[]__attribute__((aligned(8)))= { | |
(W_)&base_GHCziIOziHandleziFD_stdout_closure, (W_)&base_GHCziIOziHandleziText_hPutStr2_closure, (W_)&Main_main1_closure, (W_)&Main_main2_closure, (W_)&Main_main3_closure, (W_)&base_GHCziTopHandler_runMainIO1_closure, (W_)&Main_main5_closure | |
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.2994579 UTC | |
[] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3016602 UTC | |
[section ""cstring" . Main.$trModule4_bytes" { | |
Main.$trModule4_bytes: | |
I8[] [109,97,105,110] | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3031015 UTC | |
[section ""data" . Main.$trModule3_closure" { | |
Main.$trModule3_closure: | |
const GHC.Types.TrNameS_con_info; | |
const Main.$trModule4_bytes; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3050049 UTC | |
[section ""cstring" . Main.$trModule2_bytes" { | |
Main.$trModule2_bytes: | |
I8[] [77,97,105,110] | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3066185 UTC | |
[section ""data" . Main.$trModule1_closure" { | |
Main.$trModule1_closure: | |
const GHC.Types.TrNameS_con_info; | |
const Main.$trModule2_bytes; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3081104 UTC | |
[section ""data" . Main.$trModule_closure" { | |
Main.$trModule_closure: | |
const GHC.Types.Module_con_info; | |
const Main.$trModule3_closure+1; | |
const Main.$trModule1_closure+1; | |
const 3; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3106549 UTC | |
[section ""data" . Main.$wfact_closure" { | |
Main.$wfact_closure: | |
const Main.$wfact_info; | |
}, | |
Main.$wfact_entry() // [R1] | |
{ [] | |
} | |
{offset | |
c4Cg: // global | |
if ((Sp + -16) < SpLim) (likely: False) goto c4Ch; else goto c4Ci; | |
c4Ch: // global | |
R1 = Main.$wfact_closure; | |
call (stg_gc_fun)(R1) args: 16, res: 0, upd: 8; | |
c4Ci: // global | |
_s4BX::I64 = I64[Sp]; | |
switch [-9223372036854775808 .. 9223372036854775807] _s4BX::I64 { | |
case 0 : goto c4Cf; | |
default: goto c4Ce; | |
} | |
c4Cf: // global | |
R1 = 1; | |
Sp = Sp + 8; | |
call (I64[P64[Sp]])(R1) args: 8, res: 0, upd: 8; | |
c4Ce: // global | |
I64[Sp - 8] = block_c4Cn_info; | |
I64[Sp - 16] = _s4BX::I64 - 1; | |
I64[Sp] = _s4BX::I64; | |
Sp = Sp - 16; | |
call Main.$wfact_entry() args: 16, res: 8, upd: 8; | |
} | |
}, | |
section ""relreadonly" . Main.$wfact_info" { | |
Main.$wfact_info: | |
const Main.$wfact_entry; | |
const 0; | |
const 14; | |
const 4294967300; | |
}, | |
_c4Cn() // [R1] | |
{ [] | |
} | |
{offset | |
c4Cn: // global | |
R1 = I64[Sp + 8] * R1; | |
Sp = Sp + 16; | |
call (I64[P64[Sp]])(R1) args: 8, res: 0, upd: 8; | |
} | |
}, | |
section ""relreadonly" . block_c4Cn_info" { | |
block_c4Cn_info: | |
const _c4Cn; | |
const 65; | |
const 30; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3139996 UTC | |
[section ""data" . Main.main2_closure" { | |
Main.main2_closure: | |
const Main.main2_info; | |
const 0; | |
const 0; | |
const 0; | |
}, | |
Main.main2_entry() // [R1] | |
{ [] | |
} | |
{offset | |
c4CB: // global | |
_r4BQ::P64 = R1; | |
if ((Sp + -48) < SpLim) (likely: False) goto c4CH; else goto c4CI; | |
c4CH: // global | |
R1 = _r4BQ::P64; | |
call (stg_gc_enter_1)(R1) args: 8, res: 0, upd: 8; | |
c4CI: // global | |
(_c4Cw::I64) = call "ccall" arg hints: [PtrHint, | |
PtrHint] result hints: [PtrHint] newCAF(BaseReg, _r4BQ::P64); | |
if (_c4Cw::I64 == 0) goto c4Cy; else goto c4Cx; | |
c4Cy: // global | |
call (I64[I64[_r4BQ::P64]])() args: 8, res: 0, upd: 8; | |
c4Cx: // global | |
I64[Sp - 16] = stg_bh_upd_frame_info; | |
I64[Sp - 8] = _c4Cw::I64; | |
I64[Sp - 24] = block_c4Cz_info; | |
I64[Sp - 32] = 5; | |
Sp = Sp - 32; | |
call Main.$wfact_entry() args: 16, res: 8, upd: 24; | |
} | |
}, | |
section ""relreadonly" . Main.main2_info" { | |
Main.main2_info: | |
const Main.main2_entry; | |
const 0; | |
const 21; | |
}, | |
_c4Cz() // [R1] | |
{ [] | |
} | |
{offset | |
c4Cz: // global | |
I64[Sp] = block_c4CE_info; | |
I64[Sp - 24] = 0; | |
I64[Sp - 16] = R1; | |
P64[Sp - 8] = GHC.Types.[]_closure+1; | |
Sp = Sp - 24; | |
call GHC.Show.$wshowSignedInt_entry() args: 32, res: 16, upd: 24; | |
} | |
}, | |
section ""relreadonly" . block_c4Cz_info" { | |
block_c4Cz_info: | |
const _c4Cz; | |
const 0; | |
const 30; | |
}, | |
_c4CE() // [R1] | |
{ [] | |
} | |
{offset | |
c4CE: // global | |
Hp = Hp + 24; | |
_s4C2::P64 = R1; | |
if (Hp > HpLim) (likely: False) goto c4CM; else goto c4CL; | |
c4CM: // global | |
HpAlloc = 24; | |
R1 = _s4C2::P64; | |
call stg_gc_pp(R1) args: 16, res: 16, upd: 24; | |
c4CL: // global | |
I64[Hp - 16] = :_con_info; | |
P64[Hp - 8] = _s4C2::P64; | |
P64[Hp] = P64[Sp]; | |
R1 = Hp - 14; | |
Sp = Sp + 16; | |
call (I64[P64[Sp]])(R1) args: 24, res: 0, upd: 24; | |
} | |
}, | |
section ""relreadonly" . block_c4CE_info" { | |
block_c4CE_info: | |
const _c4CE; | |
const 0; | |
const 30; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3166699 UTC | |
[section ""cstring" . Main.main4_bytes" { | |
Main.main4_bytes: | |
I8[] [72,101,108,108,111,32,102,97,99,116] | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3181723 UTC | |
[section ""data" . Main.main3_closure" { | |
Main.main3_closure: | |
const Main.main3_info; | |
const 0; | |
const 0; | |
const 0; | |
}, | |
Main.main3_entry() // [R1] | |
{ [] | |
} | |
{offset | |
c4CT: // global | |
_r4BS::P64 = R1; | |
if ((Sp + -24) < SpLim) (likely: False) goto c4CU; else goto c4CV; | |
c4CU: // global | |
R1 = _r4BS::P64; | |
call (stg_gc_enter_1)(R1) args: 8, res: 0, upd: 8; | |
c4CV: // global | |
(_c4CQ::I64) = call "ccall" arg hints: [PtrHint, | |
PtrHint] result hints: [PtrHint] newCAF(BaseReg, _r4BS::P64); | |
if (_c4CQ::I64 == 0) goto c4CS; else goto c4CR; | |
c4CS: // global | |
call (I64[I64[_r4BS::P64]])() args: 8, res: 0, upd: 8; | |
c4CR: // global | |
I64[Sp - 16] = stg_bh_upd_frame_info; | |
I64[Sp - 8] = _c4CQ::I64; | |
I64[Sp - 24] = Main.main4_bytes; | |
Sp = Sp - 24; | |
call GHC.CString.unpackCString#_entry() args: 32, res: 0, upd: 24; | |
} | |
}, | |
section ""relreadonly" . Main.main3_info" { | |
Main.main3_info: | |
const Main.main3_entry; | |
const 0; | |
const 21; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3215791 UTC | |
[section ""data" . Main.main1_closure" { | |
Main.main1_closure: | |
const Main.main1_info; | |
const 0; | |
}, | |
Main.main1_entry() // [] | |
{ [] | |
} | |
{offset | |
c4D2: // global | |
if ((Sp + -32) < SpLim) (likely: False) goto c4D3; else goto c4D4; | |
c4D3: // global | |
R1 = Main.main1_closure; | |
call (stg_gc_fun)(R1) args: 8, res: 0, upd: 8; | |
c4D4: // global | |
I64[Sp - 8] = block_c4D0_info; | |
P64[Sp - 32] = GHC.IO.Handle.FD.stdout_closure; | |
P64[Sp - 24] = Main.main3_closure; | |
P64[Sp - 16] = GHC.Types.True_closure+2; | |
Sp = Sp - 32; | |
call GHC.IO.Handle.Text.hPutStr2_entry() args: 32, res: 8, upd: 8; | |
} | |
}, | |
section ""relreadonly" . Main.main1_info" { | |
Main.main1_info: | |
const Main.main1_entry; | |
const 0; | |
const 133143986190; | |
const 4294967299; | |
const S4D6_srt; | |
}, | |
_c4D0() // [] | |
{ [] | |
} | |
{offset | |
c4D0: // global | |
P64[Sp - 16] = GHC.IO.Handle.FD.stdout_closure; | |
P64[Sp - 8] = Main.main2_closure; | |
P64[Sp] = GHC.Types.True_closure+2; | |
Sp = Sp - 16; | |
call GHC.IO.Handle.Text.hPutStr2_entry() args: 32, res: 0, upd: 8; | |
} | |
}, | |
section ""relreadonly" . block_c4D0_info" { | |
block_c4D0_info: | |
const _c4D0; | |
const 0; | |
const 47244640286; | |
const S4D6_srt; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3248373 UTC | |
[section ""data" . Main.main_closure" { | |
Main.main_closure: | |
const Main.main_info; | |
const 0; | |
}, | |
Main.main_entry() // [] | |
{ [] | |
} | |
{offset | |
c4Db: // global | |
call Main.main1_entry() args: 8, res: 0, upd: 8; | |
} | |
}, | |
section ""relreadonly" . Main.main_info" { | |
Main.main_info: | |
const Main.main_entry; | |
const 0; | |
const 4294967310; | |
const 4294967299; | |
const S4D6_srt+16; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3265868 UTC | |
[section ""data" . Main.main5_closure" { | |
Main.main5_closure: | |
const Main.main5_info; | |
const 0; | |
}, | |
Main.main5_entry() // [] | |
{ [] | |
} | |
{offset | |
c4Di: // global | |
if ((Sp + -8) < SpLim) (likely: False) goto c4Dj; else goto c4Dk; | |
c4Dj: // global | |
R1 = Main.main5_closure; | |
call (stg_gc_fun)(R1) args: 8, res: 0, upd: 8; | |
c4Dk: // global | |
P64[Sp - 8] = Main.main1_closure+1; | |
Sp = Sp - 8; | |
call GHC.TopHandler.runMainIO1_entry() args: 16, res: 0, upd: 8; | |
} | |
}, | |
section ""relreadonly" . Main.main5_info" { | |
Main.main5_info: | |
const Main.main5_entry; | |
const 0; | |
const 107374182414; | |
const 4294967299; | |
const S4D6_srt+16; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3289089 UTC | |
[section ""data" . :Main.main_closure" { | |
:Main.main_closure: | |
const :Main.main_info; | |
const 0; | |
}, | |
:Main.main_entry() // [] | |
{ [] | |
} | |
{offset | |
c4Dp: // global | |
call Main.main5_entry() args: 8, res: 0, upd: 8; | |
} | |
}, | |
section ""relreadonly" . :Main.main_info" { | |
:Main.main_info: | |
const :Main.main_entry; | |
const 0; | |
const 4294967310; | |
const 4294967299; | |
const S4D6_srt+48; | |
}] | |
==================== Raw Cmm ==================== | |
2017-12-11 08:58:30.3302482 UTC | |
[section ""relreadonly" . S4D6_srt" { | |
S4D6_srt: | |
const GHC.IO.Handle.FD.stdout_closure; | |
const GHC.IO.Handle.Text.hPutStr2_closure; | |
const Main.main1_closure; | |
const Main.main2_closure; | |
const Main.main3_closure; | |
const GHC.TopHandler.runMainIO1_closure; | |
const Main.main5_closure; | |
}] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
fact :: Int -> Int | |
fact 0 = 1 | |
fact n = n * fact (n - 1) | |
main :: IO () | |
main = do | |
putStrLn "Hello fact" | |
print $ fact 5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ [] | |
, [ CmmData | |
(Section CString (CLabel "Main_zdtrModule4_bytes")) | |
(Statics | |
(CLabel "Main_zdtrModule4_bytes") | |
[ CmmString [ 109 , 97 , 105 , 110 ] ]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_zdtrModule3_closure")) | |
(Statics | |
(CLabel "Main_zdtrModule3_closure") | |
[ CmmStaticLit | |
(CmmLabel (CLabel "ghczmprim_GHCziTypes_TrNameS_con_info")) | |
, CmmStaticLit (CmmLabel (CLabel "Main_zdtrModule4_bytes")) | |
]) | |
] | |
, [ CmmData | |
(Section CString (CLabel "Main_zdtrModule2_bytes")) | |
(Statics | |
(CLabel "Main_zdtrModule2_bytes") | |
[ CmmString [ 77 , 97 , 105 , 110 ] ]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_zdtrModule1_closure")) | |
(Statics | |
(CLabel "Main_zdtrModule1_closure") | |
[ CmmStaticLit | |
(CmmLabel (CLabel "ghczmprim_GHCziTypes_TrNameS_con_info")) | |
, CmmStaticLit (CmmLabel (CLabel "Main_zdtrModule2_bytes")) | |
]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_zdtrModule_closure")) | |
(Statics | |
(CLabel "Main_zdtrModule_closure") | |
[ CmmStaticLit | |
(CmmLabel (CLabel "ghczmprim_GHCziTypes_Module_con_info")) | |
, CmmStaticLit (CmmLabelOff (CLabel "Main_zdtrModule3_closure") 1) | |
, CmmStaticLit (CmmLabelOff (CLabel "Main_zdtrModule1_closure") 1) | |
, CmmStaticLit (CmmInt 3 W64) | |
]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_zdwfact_closure")) | |
(Statics | |
(CLabel "Main_zdwfact_closure") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_zdwfact_info")) ]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "Main_zdwfact_entry") | |
[ VanillaReg 1 VNonGcPtr ] | |
CmmGraph | |
{ g_entry = L7133701809754883494 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883492 | |
, BlockCC | |
(CmmEntry L7133701809754883492 GlobalScope) | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BMiddle | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-8)) | |
(CmmLit (CmmLabel (CLabel "c4DH_info"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-16)) | |
(CmmRegOff | |
(CmmLocal (LocalReg s4BX (CmmType "I64"))) (-1)))) | |
(CmmStore | |
(CmmReg (CmmGlobal Sp)) | |
(CmmReg (CmmLocal (LocalReg s4BX (CmmType "I64")))))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) (-16)))) | |
CmmCall | |
{ cml_target = CmmLit (CmmLabel (CLabel "Main_zdwfact_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 16 | |
, cml_ret_args = 8 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883493 | |
, BlockCC | |
(CmmEntry L7133701809754883493 GlobalScope) | |
(BSnoc | |
(BMiddle | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VNonGcPtr)) (CmmLit (CmmInt 1 W64)))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) 8))) | |
CmmCall | |
{ cml_target = | |
CmmLoad | |
(CmmLoad (CmmReg (CmmGlobal Sp)) (CmmType "P64")) | |
(CmmType "I64") | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VNonGcPtr ] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883494 | |
, BlockCC | |
(CmmEntry L7133701809754883494 GlobalScope) | |
BNil | |
CmmCondBranch | |
{ cml_pred = | |
CmmMachOp | |
(MO_U_Lt W64) | |
[ CmmRegOff (CmmGlobal Sp) (-16) , CmmReg (CmmGlobal SpLim) ] | |
, cml_true = L7133701809754883495 | |
, cml_false = L7133701809754883496 | |
, cml_likely = Just False | |
} | |
) | |
, ( 7133701809754883495 | |
, BlockCC | |
(CmmEntry L7133701809754883495 GlobalScope) | |
(BMiddle | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VGcPtr)) | |
(CmmLit (CmmLabel (CLabel "Main_zdwfact_closure"))))) | |
CmmCall | |
{ cml_target = CmmReg (CmmGlobal GCFun) | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VGcPtr ] | |
, cml_args = 16 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883496 | |
, BlockCC | |
(CmmEntry L7133701809754883496 GlobalScope) | |
(BMiddle | |
(CmmAssign | |
(CmmLocal (LocalReg s4BX (CmmType "I64"))) | |
(CmmLoad (CmmReg (CmmGlobal Sp)) (CmmType "I64")))) | |
(CmmSwitch | |
(CmmReg (CmmLocal (LocalReg s4BX (CmmType "I64")))) | |
(SwitchTargets | |
True | |
( -9223372036854775808 , 9223372036854775807 ) | |
(Just L7133701809754883492) | |
(fromList [ ( 0 , L7133701809754883493 ) ]))) | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "Main_zdwfact_info")) | |
(Statics | |
(CLabel "Main_zdwfact_info") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_zdwfact_entry")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 14 W64) | |
, CmmStaticLit (CmmInt 4294967300 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "_c4DH") | |
[ VanillaReg 1 VNonGcPtr ] | |
CmmGraph | |
{ g_entry = L7133701809754883501 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883501 | |
, BlockCC | |
(CmmEntry L7133701809754883501 GlobalScope) | |
(BSnoc | |
(BMiddle | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VNonGcPtr)) | |
(CmmMachOp | |
(MO_Mul W64) | |
[ CmmLoad (CmmRegOff (CmmGlobal Sp) 8) (CmmType "I64") | |
, CmmReg (CmmGlobal (VanillaReg 1 VNonGcPtr)) | |
]))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) 16))) | |
CmmCall | |
{ cml_target = | |
CmmLoad | |
(CmmLoad (CmmReg (CmmGlobal Sp)) (CmmType "P64")) | |
(CmmType "I64") | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VNonGcPtr ] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "c4DH_info")) | |
(Statics | |
(CLabel "c4DH_info") | |
[ CmmStaticLit (CmmLabel (CLabel "_c4DH")) | |
, CmmStaticLit (CmmInt 65 W64) | |
, CmmStaticLit (CmmInt 30 W64) | |
]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_main2_closure")) | |
(Statics | |
(CLabel "Main_main2_closure") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main2_info")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 0 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "Main_main2_entry") | |
[ VanillaReg 1 VGcPtr ] | |
CmmGraph | |
{ g_entry = L7133701809754883515 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883511 | |
, BlockCC | |
(CmmEntry L7133701809754883511 GlobalScope) | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BMiddle | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-16)) | |
(CmmLit | |
(CmmLabel (CLabel "stg_bh_upd_frame_info"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-8)) | |
(CmmReg (CmmLocal (LocalReg c4DQ (CmmType "I64")))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-24)) | |
(CmmLit (CmmLabel (CLabel "c4DT_info"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-32)) (CmmLit (CmmInt 5 W64)))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) (-32)))) | |
CmmCall | |
{ cml_target = CmmLit (CmmLabel (CLabel "Main_zdwfact_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 16 | |
, cml_ret_args = 8 | |
, cml_ret_off = 24 | |
} | |
) | |
, ( 7133701809754883512 | |
, BlockCC | |
(CmmEntry L7133701809754883512 GlobalScope) | |
BNil | |
CmmCall | |
{ cml_target = | |
CmmLoad | |
(CmmLoad | |
(CmmReg (CmmLocal (LocalReg r4BQ (CmmType "P64")))) | |
(CmmType "I64")) | |
(CmmType "I64") | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883515 | |
, BlockCC | |
(CmmEntry L7133701809754883515 GlobalScope) | |
(BMiddle | |
(CmmAssign | |
(CmmLocal (LocalReg r4BQ (CmmType "P64"))) | |
(CmmReg (CmmGlobal (VanillaReg 1 VGcPtr))))) | |
CmmCondBranch | |
{ cml_pred = | |
CmmMachOp | |
(MO_U_Lt W64) | |
[ CmmRegOff (CmmGlobal Sp) (-48) , CmmReg (CmmGlobal SpLim) ] | |
, cml_true = L7133701809754883521 | |
, cml_false = L7133701809754883522 | |
, cml_likely = Just False | |
} | |
) | |
, ( 7133701809754883521 | |
, BlockCC | |
(CmmEntry L7133701809754883521 GlobalScope) | |
(BMiddle | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VGcPtr)) | |
(CmmReg (CmmLocal (LocalReg r4BQ (CmmType "P64")))))) | |
CmmCall | |
{ cml_target = CmmReg (CmmGlobal GCEnter1) | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VGcPtr ] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883522 | |
, BlockCC | |
(CmmEntry L7133701809754883522 GlobalScope) | |
(BMiddle | |
(CmmUnsafeForeignCall | |
(ForeignTarget | |
(CmmLit (CmmLabel (CLabel "newCAF"))) | |
(ForeignConvention | |
CCallConv | |
[ AddrHint , AddrHint ] | |
[ AddrHint ] | |
CmmMayReturn)) | |
[ LocalReg c4DQ (CmmType "I64") ] | |
[ CmmReg (CmmGlobal BaseReg) | |
, CmmReg (CmmLocal (LocalReg r4BQ (CmmType "P64"))) | |
])) | |
CmmCondBranch | |
{ cml_pred = | |
CmmMachOp | |
(MO_Eq W64) | |
[ CmmReg (CmmLocal (LocalReg c4DQ (CmmType "I64"))) | |
, CmmLit (CmmInt 0 W64) | |
] | |
, cml_true = L7133701809754883512 | |
, cml_false = L7133701809754883511 | |
, cml_likely = Nothing | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "Main_main2_info")) | |
(Statics | |
(CLabel "Main_main2_info") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main2_entry")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 21 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "_c4DT") | |
[ VanillaReg 1 VNonGcPtr ] | |
CmmGraph | |
{ g_entry = L7133701809754883513 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883513 | |
, BlockCC | |
(CmmEntry L7133701809754883513 GlobalScope) | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BMiddle | |
(CmmStore | |
(CmmReg (CmmGlobal Sp)) | |
(CmmLit (CmmLabel (CLabel "c4DY_info"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-24)) | |
(CmmLit (CmmInt 0 W64)))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-16)) | |
(CmmReg (CmmGlobal (VanillaReg 1 VNonGcPtr))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-8)) | |
(CmmLit | |
(CmmLabelOff | |
(CLabel "ghczmprim_GHCziTypes_ZMZN_closure") 1)))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) (-24)))) | |
CmmCall | |
{ cml_target = | |
CmmLit | |
(CmmLabel (CLabel "base_GHCziShow_zdwshowSignedInt_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 32 | |
, cml_ret_args = 16 | |
, cml_ret_off = 24 | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "c4DT_info")) | |
(Statics | |
(CLabel "c4DT_info") | |
[ CmmStaticLit (CmmLabel (CLabel "_c4DT")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 30 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "_c4DY") | |
[ VanillaReg 1 VGcPtr ] | |
CmmGraph | |
{ g_entry = L7133701809754883518 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883518 | |
, BlockCC | |
(CmmEntry L7133701809754883518 GlobalScope) | |
(BSnoc | |
(BMiddle (CmmAssign (CmmGlobal Hp) (CmmRegOff (CmmGlobal Hp) 24))) | |
(CmmAssign | |
(CmmLocal (LocalReg s4C2 (CmmType "P64"))) | |
(CmmReg (CmmGlobal (VanillaReg 1 VGcPtr))))) | |
CmmCondBranch | |
{ cml_pred = | |
CmmMachOp | |
(MO_U_Gt W64) | |
[ CmmReg (CmmGlobal Hp) , CmmReg (CmmGlobal HpLim) ] | |
, cml_true = L7133701809754883526 | |
, cml_false = L7133701809754883525 | |
, cml_likely = Just False | |
} | |
) | |
, ( 7133701809754883525 | |
, BlockCC | |
(CmmEntry L7133701809754883525 GlobalScope) | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BMiddle | |
(CmmStore | |
(CmmRegOff (CmmGlobal Hp) (-16)) | |
(CmmLit | |
(CmmLabel | |
(CLabel "ghczmprim_GHCziTypes_ZC_con_info"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Hp) (-8)) | |
(CmmReg (CmmLocal (LocalReg s4C2 (CmmType "P64")))))) | |
(CmmStore | |
(CmmReg (CmmGlobal Hp)) | |
(CmmLoad (CmmReg (CmmGlobal Sp)) (CmmType "P64")))) | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VGcPtr)) | |
(CmmRegOff (CmmGlobal Hp) (-14)))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) 16))) | |
CmmCall | |
{ cml_target = | |
CmmLoad | |
(CmmLoad (CmmReg (CmmGlobal Sp)) (CmmType "P64")) | |
(CmmType "I64") | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VGcPtr ] | |
, cml_args = 24 | |
, cml_ret_args = 0 | |
, cml_ret_off = 24 | |
} | |
) | |
, ( 7133701809754883526 | |
, BlockCC | |
(CmmEntry L7133701809754883526 GlobalScope) | |
(BSnoc | |
(BMiddle (CmmAssign (CmmGlobal HpAlloc) (CmmLit (CmmInt 24 W64)))) | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VGcPtr)) | |
(CmmReg (CmmLocal (LocalReg s4C2 (CmmType "P64")))))) | |
CmmCall | |
{ cml_target = CmmLit (CmmLabel (CLabel "stg_gc_pp")) | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VGcPtr ] | |
, cml_args = 16 | |
, cml_ret_args = 16 | |
, cml_ret_off = 24 | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "c4DY_info")) | |
(Statics | |
(CLabel "c4DY_info") | |
[ CmmStaticLit (CmmLabel (CLabel "_c4DY")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 30 W64) | |
]) | |
] | |
, [ CmmData | |
(Section CString (CLabel "Main_main4_bytes")) | |
(Statics | |
(CLabel "Main_main4_bytes") | |
[ CmmString | |
[ 72 , 101 , 108 , 108 , 111 , 32 , 102 , 97 , 99 , 116 ] | |
]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_main3_closure")) | |
(Statics | |
(CLabel "Main_main3_closure") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main3_info")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 0 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "Main_main3_entry") | |
[ VanillaReg 1 VGcPtr ] | |
CmmGraph | |
{ g_entry = L7133701809754883533 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883531 | |
, BlockCC | |
(CmmEntry L7133701809754883531 GlobalScope) | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BMiddle | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-16)) | |
(CmmLit (CmmLabel (CLabel "stg_bh_upd_frame_info"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-8)) | |
(CmmReg (CmmLocal (LocalReg c4Ea (CmmType "I64")))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-24)) | |
(CmmLit (CmmLabel (CLabel "Main_main4_bytes"))))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) (-24)))) | |
CmmCall | |
{ cml_target = | |
CmmLit | |
(CmmLabel | |
(CLabel "ghczmprim_GHCziCString_unpackCStringzh_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 32 | |
, cml_ret_args = 0 | |
, cml_ret_off = 24 | |
} | |
) | |
, ( 7133701809754883532 | |
, BlockCC | |
(CmmEntry L7133701809754883532 GlobalScope) | |
BNil | |
CmmCall | |
{ cml_target = | |
CmmLoad | |
(CmmLoad | |
(CmmReg (CmmLocal (LocalReg r4BS (CmmType "P64")))) | |
(CmmType "I64")) | |
(CmmType "I64") | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883533 | |
, BlockCC | |
(CmmEntry L7133701809754883533 GlobalScope) | |
(BMiddle | |
(CmmAssign | |
(CmmLocal (LocalReg r4BS (CmmType "P64"))) | |
(CmmReg (CmmGlobal (VanillaReg 1 VGcPtr))))) | |
CmmCondBranch | |
{ cml_pred = | |
CmmMachOp | |
(MO_U_Lt W64) | |
[ CmmRegOff (CmmGlobal Sp) (-24) , CmmReg (CmmGlobal SpLim) ] | |
, cml_true = L7133701809754883534 | |
, cml_false = L7133701809754883535 | |
, cml_likely = Just False | |
} | |
) | |
, ( 7133701809754883534 | |
, BlockCC | |
(CmmEntry L7133701809754883534 GlobalScope) | |
(BMiddle | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VGcPtr)) | |
(CmmReg (CmmLocal (LocalReg r4BS (CmmType "P64")))))) | |
CmmCall | |
{ cml_target = CmmReg (CmmGlobal GCEnter1) | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VGcPtr ] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883535 | |
, BlockCC | |
(CmmEntry L7133701809754883535 GlobalScope) | |
(BMiddle | |
(CmmUnsafeForeignCall | |
(ForeignTarget | |
(CmmLit (CmmLabel (CLabel "newCAF"))) | |
(ForeignConvention | |
CCallConv | |
[ AddrHint , AddrHint ] | |
[ AddrHint ] | |
CmmMayReturn)) | |
[ LocalReg c4Ea (CmmType "I64") ] | |
[ CmmReg (CmmGlobal BaseReg) | |
, CmmReg (CmmLocal (LocalReg r4BS (CmmType "P64"))) | |
])) | |
CmmCondBranch | |
{ cml_pred = | |
CmmMachOp | |
(MO_Eq W64) | |
[ CmmReg (CmmLocal (LocalReg c4Ea (CmmType "I64"))) | |
, CmmLit (CmmInt 0 W64) | |
] | |
, cml_true = L7133701809754883532 | |
, cml_false = L7133701809754883531 | |
, cml_likely = Nothing | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "Main_main3_info")) | |
(Statics | |
(CLabel "Main_main3_info") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main3_entry")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 21 W64) | |
]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_main1_closure")) | |
(Statics | |
(CLabel "Main_main1_closure") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main1_info")) | |
, CmmStaticLit (CmmInt 0 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "Main_main1_entry") | |
[] | |
CmmGraph | |
{ g_entry = L7133701809754883542 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883542 | |
, BlockCC | |
(CmmEntry L7133701809754883542 GlobalScope) | |
BNil | |
CmmCondBranch | |
{ cml_pred = | |
CmmMachOp | |
(MO_U_Lt W64) | |
[ CmmRegOff (CmmGlobal Sp) (-32) , CmmReg (CmmGlobal SpLim) ] | |
, cml_true = L7133701809754883543 | |
, cml_false = L7133701809754883544 | |
, cml_likely = Just False | |
} | |
) | |
, ( 7133701809754883543 | |
, BlockCC | |
(CmmEntry L7133701809754883543 GlobalScope) | |
(BMiddle | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VGcPtr)) | |
(CmmLit (CmmLabel (CLabel "Main_main1_closure"))))) | |
CmmCall | |
{ cml_target = CmmReg (CmmGlobal GCFun) | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VGcPtr ] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883544 | |
, BlockCC | |
(CmmEntry L7133701809754883544 GlobalScope) | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BMiddle | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-8)) | |
(CmmLit (CmmLabel (CLabel "c4Ek_info"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-32)) | |
(CmmLit | |
(CmmLabel | |
(CLabel | |
"base_GHCziIOziHandleziFD_stdout_closure"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-24)) | |
(CmmLit (CmmLabel (CLabel "Main_main3_closure"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-16)) | |
(CmmLit | |
(CmmLabelOff | |
(CLabel "ghczmprim_GHCziTypes_True_closure") 2)))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) (-32)))) | |
CmmCall | |
{ cml_target = | |
CmmLit | |
(CmmLabel (CLabel "base_GHCziIOziHandleziText_hPutStr2_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 32 | |
, cml_ret_args = 8 | |
, cml_ret_off = 8 | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "Main_main1_info")) | |
(Statics | |
(CLabel "Main_main1_info") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main1_entry")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 133143986190 W64) | |
, CmmStaticLit (CmmInt 4294967299 W64) | |
, CmmStaticLit (CmmLabel (CLabel "S4D6_srt")) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "_c4Ek") | |
[] | |
CmmGraph | |
{ g_entry = L7133701809754883540 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883540 | |
, BlockCC | |
(CmmEntry L7133701809754883540 GlobalScope) | |
(BSnoc | |
(BSnoc | |
(BSnoc | |
(BMiddle | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-16)) | |
(CmmLit | |
(CmmLabel | |
(CLabel | |
"base_GHCziIOziHandleziFD_stdout_closure"))))) | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-8)) | |
(CmmLit (CmmLabel (CLabel "Main_main2_closure"))))) | |
(CmmStore | |
(CmmReg (CmmGlobal Sp)) | |
(CmmLit | |
(CmmLabelOff | |
(CLabel "ghczmprim_GHCziTypes_True_closure") 2)))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) (-16)))) | |
CmmCall | |
{ cml_target = | |
CmmLit | |
(CmmLabel (CLabel "base_GHCziIOziHandleziText_hPutStr2_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 32 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "c4Ek_info")) | |
(Statics | |
(CLabel "c4Ek_info") | |
[ CmmStaticLit (CmmLabel (CLabel "_c4Ek")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 47244640286 W64) | |
, CmmStaticLit (CmmLabel (CLabel "S4D6_srt")) | |
]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_main_closure")) | |
(Statics | |
(CLabel "Main_main_closure") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main_info")) | |
, CmmStaticLit (CmmInt 0 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "Main_main_entry") | |
[] | |
CmmGraph | |
{ g_entry = L7133701809754883550 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883550 | |
, BlockCC | |
(CmmEntry L7133701809754883550 GlobalScope) | |
BNil | |
CmmCall | |
{ cml_target = CmmLit (CmmLabel (CLabel "Main_main1_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "Main_main_info")) | |
(Statics | |
(CLabel "Main_main_info") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main_entry")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 4294967310 W64) | |
, CmmStaticLit (CmmInt 4294967299 W64) | |
, CmmStaticLit (CmmLabelOff (CLabel "S4D6_srt") 16) | |
]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "Main_main5_closure")) | |
(Statics | |
(CLabel "Main_main5_closure") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main5_info")) | |
, CmmStaticLit (CmmInt 0 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "Main_main5_entry") | |
[] | |
CmmGraph | |
{ g_entry = L7133701809754883557 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883557 | |
, BlockCC | |
(CmmEntry L7133701809754883557 GlobalScope) | |
BNil | |
CmmCondBranch | |
{ cml_pred = | |
CmmMachOp | |
(MO_U_Lt W64) | |
[ CmmRegOff (CmmGlobal Sp) (-8) , CmmReg (CmmGlobal SpLim) ] | |
, cml_true = L7133701809754883558 | |
, cml_false = L7133701809754883559 | |
, cml_likely = Just False | |
} | |
) | |
, ( 7133701809754883558 | |
, BlockCC | |
(CmmEntry L7133701809754883558 GlobalScope) | |
(BMiddle | |
(CmmAssign | |
(CmmGlobal (VanillaReg 1 VGcPtr)) | |
(CmmLit (CmmLabel (CLabel "Main_main5_closure"))))) | |
CmmCall | |
{ cml_target = CmmReg (CmmGlobal GCFun) | |
, cml_cont = Nothing | |
, cml_args_regs = [ VanillaReg 1 VGcPtr ] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
, ( 7133701809754883559 | |
, BlockCC | |
(CmmEntry L7133701809754883559 GlobalScope) | |
(BSnoc | |
(BMiddle | |
(CmmStore | |
(CmmRegOff (CmmGlobal Sp) (-8)) | |
(CmmLit (CmmLabelOff (CLabel "Main_main1_closure") 1)))) | |
(CmmAssign (CmmGlobal Sp) (CmmRegOff (CmmGlobal Sp) (-8)))) | |
CmmCall | |
{ cml_target = | |
CmmLit | |
(CmmLabel (CLabel "base_GHCziTopHandler_runMainIO1_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 16 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "Main_main5_info")) | |
(Statics | |
(CLabel "Main_main5_info") | |
[ CmmStaticLit (CmmLabel (CLabel "Main_main5_entry")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 107374182414 W64) | |
, CmmStaticLit (CmmInt 4294967299 W64) | |
, CmmStaticLit (CmmLabelOff (CLabel "S4D6_srt") 16) | |
]) | |
] | |
, [ CmmData | |
(Section Data (CLabel "ZCMain_main_closure")) | |
(Statics | |
(CLabel "ZCMain_main_closure") | |
[ CmmStaticLit (CmmLabel (CLabel "ZCMain_main_info")) | |
, CmmStaticLit (CmmInt 0 W64) | |
]) | |
, CmmProc | |
(LM (UM (fromList []))) | |
(CLabel "ZCMain_main_entry") | |
[] | |
CmmGraph | |
{ g_entry = L7133701809754883564 | |
, g_graph = | |
GMany | |
NothingO | |
(LM | |
(UM | |
(fromList | |
[ ( 7133701809754883564 | |
, BlockCC | |
(CmmEntry L7133701809754883564 GlobalScope) | |
BNil | |
CmmCall | |
{ cml_target = CmmLit (CmmLabel (CLabel "Main_main5_entry")) | |
, cml_cont = Nothing | |
, cml_args_regs = [] | |
, cml_args = 8 | |
, cml_ret_args = 0 | |
, cml_ret_off = 8 | |
} | |
) | |
]))) | |
NothingO | |
} | |
, CmmData | |
(Section RelocatableReadOnlyData (CLabel "ZCMain_main_info")) | |
(Statics | |
(CLabel "ZCMain_main_info") | |
[ CmmStaticLit (CmmLabel (CLabel "ZCMain_main_entry")) | |
, CmmStaticLit (CmmInt 0 W64) | |
, CmmStaticLit (CmmInt 4294967310 W64) | |
, CmmStaticLit (CmmInt 4294967299 W64) | |
, CmmStaticLit (CmmLabelOff (CLabel "S4D6_srt") 48) | |
]) | |
] | |
, [ CmmData | |
(Section RelocatableReadOnlyData (CLabel "S4D6_srt")) | |
(Statics | |
(CLabel "S4D6_srt") | |
[ CmmStaticLit | |
(CmmLabel (CLabel "base_GHCziIOziHandleziFD_stdout_closure")) | |
, CmmStaticLit | |
(CmmLabel (CLabel "base_GHCziIOziHandleziText_hPutStr2_closure")) | |
, CmmStaticLit (CmmLabel (CLabel "Main_main1_closure")) | |
, CmmStaticLit (CmmLabel (CLabel "Main_main2_closure")) | |
, CmmStaticLit (CmmLabel (CLabel "Main_main3_closure")) | |
, CmmStaticLit | |
(CmmLabel (CLabel "base_GHCziTopHandler_runMainIO1_closure")) | |
, CmmStaticLit (CmmLabel (CLabel "Main_main5_closure")) | |
]) | |
] | |
] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment