Created
September 8, 2022 07:36
-
-
Save TerrorJack/a31eab735c4e5a2a6b1e2c225cc4115c 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
// DO NOT EDIT! | |
// Automatically generated by utils/genapply/Main.hs | |
#include "Cmm.h" | |
#include "AutoApply.h" | |
import CLOSURE __stderr_FILE; | |
stg_ap_p_fast() { // [R1, R2] | |
I32 _us, _c2, _cg, _ci, _unused; | |
cr: // global | |
(_unused) = ccall fputs("[DEBUG] cr \n\0", __stderr_FILE "ptr"); | |
if (R1 & 3 == 1) {goto c3;} else {goto c5;} | |
c3: // global | |
(_unused) = ccall fputs("[DEBUG] c3 \n\0", __stderr_FILE "ptr"); | |
jump (I32[I32[R1 - 1]]) [R1, R2]; | |
c5: // global | |
(_unused) = ccall fputs("[DEBUG] c5 \n\0", __stderr_FILE "ptr"); | |
if ((Sp + -8) < SpLim) {goto c6;} else {goto c8;} | |
c6: // global | |
(_unused) = ccall fputs("[DEBUG] c6 \n\0", __stderr_FILE "ptr"); | |
Sp = Sp - 8; | |
//tick src<rts/AutoApply.cmm:24:15-32> | |
I32[Sp + 4] = R2; | |
//tick src<rts/AutoApply.cmm:25:15-45> | |
I32[Sp] = stg_ap_p_info; | |
jump __stg_gc_enter_1 [R1]; | |
c8: // global | |
(_unused) = ccall fputs("[DEBUG] c8 \n\0", __stderr_FILE "ptr"); | |
R1 = R1 & (-4); | |
//tick src<rts/AutoApply.cmm:30:10-29> | |
_us = %lobits32(I16[I32[R1] + 8]); | |
if (_us >= 15) {goto c9;} else {goto ut;} | |
ut: // global | |
(_unused) = ccall fputs("[DEBUG] ut \n\0", __stderr_FILE "ptr"); | |
if (_us < 8) {goto c9;} else {goto cq;} | |
c9: // global | |
(_unused) = ccall fputs("[DEBUG] c9 \n\0", __stderr_FILE "ptr"); | |
Sp = Sp - 8; | |
//tick src<rts/AutoApply.cmm:56:19-36> | |
I32[Sp + 4] = R2; | |
jump stg_ap_p_ret [R2]; | |
cq: // global | |
(_unused) = ccall fputs("[DEBUG] cq \n\0", __stderr_FILE "ptr"); | |
_c2 = %lobits32(I16[I32[R1] + 14]); | |
if (_c2 == 1) {goto ca;} else {goto cc;} | |
ca: // global | |
(_unused) = ccall fputs("[DEBUG] ca \n\0", __stderr_FILE "ptr"); | |
R1 = R1 + 1; | |
jump (I32[I32[R1 & (-4)]]) [R1, R2]; | |
cc: // global | |
(_unused) = ccall fputs("[DEBUG] cc \n\0", __stderr_FILE "ptr"); | |
Sp = Sp - 8; | |
//tick src<rts/AutoApply.cmm:47:23-40> | |
I32[Sp + 4] = R2; | |
if (_c2 >= 4) {goto ce;} else {goto cd;} | |
cd: // global | |
(_unused) = ccall fputs("[DEBUG] cd \n\0", __stderr_FILE "ptr"); | |
R1 = R1 + _c2; | |
goto ce; | |
ce: // global | |
(_unused) = ccall fputs("[DEBUG] ce \n\0", __stderr_FILE "ptr"); | |
Hp = Hp + 16; | |
if (Hp > HpLim) {goto cj;} else {goto cl;} | |
cj: // global | |
(_unused) = ccall fputs("[DEBUG] cj \n\0", __stderr_FILE "ptr"); | |
HpAlloc = 16; | |
//tick src<rts/AutoApply.cmm:51:153-183> | |
I32[Sp] = stg_ap_p_info; | |
jump __stg_gc_enter_1 [R1]; | |
cl: // global | |
(_unused) = ccall fputs("[DEBUG] cl \n\0", __stderr_FILE "ptr"); | |
_cg = Hp - 12; | |
I32[_cg] = stg_PAP_info; | |
//tick src<rts/AutoApply.cmm:51:341-388> | |
I16[_cg + 4] = %lobits16(_c2 - 1); | |
//tick src<rts/AutoApply.cmm:51:395-424> | |
I32[_cg + 8] = R1; | |
//tick src<rts/AutoApply.cmm:51:429-468> | |
I16[_cg + 6] = 1::bits16; | |
//tick src<rts/AutoApply.cmm:51:472-475> | |
_ci = 0; | |
goto cm; | |
cm: // global | |
(_unused) = ccall fputs("[DEBUG] cm \n\0", __stderr_FILE "ptr"); | |
if (_ci < 1) {goto cn;} else {goto cp;} | |
cn: // global | |
(_unused) = ccall fputs("[DEBUG] cn \n\0", __stderr_FILE "ptr"); | |
I32[(_cg + 12) + (_ci << 2)] = I32[Sp + ((_ci + 1) << 2)]; | |
//tick src<rts/AutoApply.cmm:51:567-574> | |
_ci = _ci + 1; | |
goto cm; | |
cp: // global | |
(_unused) = ccall fputs("[DEBUG] cp \n\0", __stderr_FILE "ptr"); | |
R1 = _cg; | |
//tick src<rts/AutoApply.cmm:51:604-622> | |
Sp = Sp + 8; | |
jump (I32[I32[Sp]]) [R1]; | |
} |
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
# | |
################################ | |
# section ""readonly" . cr_buf" { | |
# cr_buf: | |
# I8[] "[DEBUG] cr \n\NUL" | |
# } | |
# section ""readonly" . c3_buf" { | |
# c3_buf: | |
# I8[] "[DEBUG] c3 \n\NUL" | |
# } | |
# section ""readonly" . c5_buf" { | |
# c5_buf: | |
# I8[] "[DEBUG] c5 \n\NUL" | |
# } | |
# section ""readonly" . c6_buf" { | |
# c6_buf: | |
# I8[] "[DEBUG] c6 \n\NUL" | |
# } | |
# section ""readonly" . c8_buf" { | |
# c8_buf: | |
# I8[] "[DEBUG] c8 \n\NUL" | |
# } | |
# section ""readonly" . ut_buf" { | |
# ut_buf: | |
# I8[] "[DEBUG] ut \n\NUL" | |
# } | |
# section ""readonly" . c9_buf" { | |
# c9_buf: | |
# I8[] "[DEBUG] c9 \n\NUL" | |
# } | |
# section ""readonly" . cq_buf" { | |
# cq_buf: | |
# I8[] "[DEBUG] cq \n\NUL" | |
# } | |
# section ""readonly" . ca_buf" { | |
# ca_buf: | |
# I8[] "[DEBUG] ca \n\NUL" | |
# } | |
# section ""readonly" . cc_buf" { | |
# cc_buf: | |
# I8[] "[DEBUG] cc \n\NUL" | |
# } | |
# section ""readonly" . cd_buf" { | |
# cd_buf: | |
# I8[] "[DEBUG] cd \n\NUL" | |
# } | |
# section ""readonly" . ce_buf" { | |
# ce_buf: | |
# I8[] "[DEBUG] ce \n\NUL" | |
# } | |
# section ""readonly" . cj_buf" { | |
# cj_buf: | |
# I8[] "[DEBUG] cj \n\NUL" | |
# } | |
# section ""readonly" . cl_buf" { | |
# cl_buf: | |
# I8[] "[DEBUG] cl \n\NUL" | |
# } | |
# section ""readonly" . cm_buf" { | |
# cm_buf: | |
# I8[] "[DEBUG] cm \n\NUL" | |
# } | |
# section ""readonly" . cn_buf" { | |
# cn_buf: | |
# I8[] "[DEBUG] cn \n\NUL" | |
# } | |
# section ""readonly" . cp_buf" { | |
# cp_buf: | |
# I8[] "[DEBUG] cp \n\NUL" | |
# } | |
# stg_ap_p_fast() { // [R1, R2] | |
# { [] | |
# } | |
# {offset | |
# c1R: // global | |
# //tick src<rts/AutoApply.cmm:(9,17)-(99,1)> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cr_buf, __stderr_FILE); | |
# if (R1 & 3 == 1) goto cb; else goto cd; | |
# cb: // global | |
# //tick src<rts/AutoApply.cmm:13:28-37> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(c3_buf, __stderr_FILE); | |
# call (I32[I32[R1 - 1]])(R1, R2) args: 4, res: 0, upd: 4; | |
# cd: // global | |
# //tick src<rts/AutoApply.cmm:13:44-53> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(c5_buf, __stderr_FILE); | |
# if ((Sp + -8) < SpLim) goto co; else goto cq; | |
# co: // global | |
# //tick src<rts/AutoApply.cmm:19:34-43> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(c6_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:22:14-22> | |
# Sp = Sp - 8; | |
# //tick src<rts/AutoApply.cmm:24:17-30> | |
# I32[Sp + 4] = R2; | |
# //tick src<rts/AutoApply.cmm:26:17-37> | |
# I32[Sp] = stg_ap_p_info; | |
# call __stg_gc_enter_1(R1) args: 4, res: 0, upd: 4; | |
# cq: // global | |
# //tick src<rts/AutoApply.cmm:19:50-59> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(c8_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:30:14-25> | |
# R1 = R1 & (-4); | |
# //tick src<rts/AutoApply.cmm:32:15-50> | |
# _c1::I32 = %MO_UU_Conv_W16_W32(I16[I32[R1] + 8]); | |
# if (_c1::I32 >= 15) goto cM; else goto cD; | |
# cD: // global | |
# //tick src<rts/AutoApply.cmm:33:42-51> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(ut_buf, __stderr_FILE); | |
# if (_c1::I32 < 8) goto cM; else goto cL; | |
# cM: // global | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(c9_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:39:14-22> | |
# Sp = Sp - 8; | |
# //tick src<rts/AutoApply.cmm:41:17-30> | |
# I32[Sp + 4] = R2; | |
# call stg_ap_p_ret(R2) args: 4, res: 0, upd: 4; | |
# cL: // global | |
# //tick src<rts/AutoApply.cmm:36:40-49> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cq_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:45:15-51> | |
# _c2::I32 = %MO_UU_Conv_W16_W32(I16[I32[R1] + 14]); | |
# if (_c2::I32 == 1) goto cW; else goto cY; | |
# cW: // global | |
# //tick src<rts/AutoApply.cmm:46:25-34> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(ca_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:49:14-22> | |
# R1 = R1 + 1; | |
# call (I32[I32[R1 & (-4)]])(R1, R2) args: 4, res: 0, upd: 4; | |
# cY: // global | |
# //tick src<rts/AutoApply.cmm:46:41-50> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cc_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:53:14-22> | |
# Sp = Sp - 8; | |
# //tick src<rts/AutoApply.cmm:55:17-30> | |
# I32[Sp + 4] = R2; | |
# if (_c2::I32 >= 4) goto c1h; else goto c1b; | |
# c1b: // global | |
# //tick src<rts/AutoApply.cmm:56:41-50> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cd_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:59:14-24> | |
# R1 = R1 + _c2::I32; | |
# goto c1h; | |
# c1h: // global | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(ce_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:63:14-23> | |
# Hp = Hp + 16; | |
# if (Hp > HpLim) goto c1m; else goto c1o; | |
# c1m: // global | |
# //tick src<rts/AutoApply.cmm:64:27-36> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cj_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:67:19-23> | |
# HpAlloc = 16; | |
# //tick src<rts/AutoApply.cmm:69:17-37> | |
# I32[Sp] = stg_ap_p_info; | |
# call __stg_gc_enter_1(R1) args: 4, res: 0, upd: 4; | |
# c1o: // global | |
# //tick src<rts/AutoApply.cmm:64:43-52> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cl_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:73:15-24> | |
# //tick src<rts/AutoApply.cmm:74:17-37> | |
# _c3::I32 = Hp - 12; | |
# I32[_c3::I32] = stg_PAP_info; | |
# //tick src<rts/AutoApply.cmm:76:17-47> | |
# I16[_c3::I32 + 4] = %MO_UU_Conv_W32_W16(_c2::I32 - 1); | |
# //tick src<rts/AutoApply.cmm:78:17-31> | |
# I32[_c3::I32 + 8] = R1; | |
# //tick src<rts/AutoApply.cmm:80:17-38> | |
# I16[_c3::I32 + 6] = 1 :: W16; | |
# //tick src<rts/AutoApply.cmm:82:15-18> | |
# _c4::I32 = 0; | |
# goto c1z; | |
# c1z: // global | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cm_buf, __stderr_FILE); | |
# if (_c4::I32 < 1) goto c1E; else goto c1G; | |
# c1E: // global | |
# //tick src<rts/AutoApply.cmm:86:24-33> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cn_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:89:17-74> | |
# I32[(_c3::I32 + 12) + (_c4::I32 << 2)] = I32[Sp + ((_c4::I32 + 1) << 2)]; | |
# //tick src<rts/AutoApply.cmm:91:15-24> | |
# _c4::I32 = _c4::I32 + 1; | |
# goto c1z; | |
# c1G: // global | |
# //tick src<rts/AutoApply.cmm:86:40-49> | |
# (_c5::I32) = call "ccall" arg hints: [PtrHint, | |
# PtrHint] result hints: [] fputs(cp_buf, __stderr_FILE); | |
# //tick src<rts/AutoApply.cmm:95:14-19> | |
# R1 = _c3::I32; | |
# //tick src<rts/AutoApply.cmm:97:14-22> | |
# Sp = Sp + 8; | |
# call (I32[I32[Sp]])(R1) args: 4, res: 0, upd: 4; | |
# } | |
# } | |
.globaltype __InCmmProcGroup, i32 | |
.functype __stg_gc_enter_1 () -> () | |
.functype fputs (i32, i32) -> (i32) | |
.functype stg_ap_p_ret () -> () | |
.hidden stg_ap_p_fast | |
.globl stg_ap_p_fast | |
.section .text.stg_ap_p_fast,"",@ | |
stg_ap_p_fast: | |
.functype stg_ap_p_fast () -> (i32) | |
.local i32, i32, i32, i32, i32 | |
i32.const .Ln1S | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
# c1R | |
i32.const .Ln1T | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cr_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.load 16 | |
i32.const 3 | |
i32.and | |
i32.const 1 | |
i32.eq | |
if i32 | |
# cb | |
i32.const .Ln1U | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const c3_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.load 16 | |
i32.const -1 | |
i32.add | |
i32.load 0 | |
i32.load 0 | |
return | |
else | |
# cd | |
i32.const .Ln1V | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const c5_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.load 832 | |
i32.const -8 | |
i32.add | |
i32.const MainCapability | |
i32.load 836 | |
i32.lt_u | |
if i32 | |
# co | |
i32.const .Ln1W | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const c6_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.const MainCapability | |
i32.load 832 | |
i32.const -8 | |
i32.add | |
i32.store 832 | |
i32.const MainCapability | |
i32.load 832 | |
i32.const 4 | |
i32.add | |
i32.const MainCapability | |
i32.load 20 | |
i32.store 0 | |
i32.const MainCapability | |
i32.load 832 | |
i32.const stg_ap_p_info | |
i32.store 0 | |
i32.const __stg_gc_enter_1 | |
return | |
else | |
# cq | |
i32.const .Ln1X | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const c8_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.const MainCapability | |
i32.load 16 | |
i32.const -4 | |
i32.and | |
i32.store 16 | |
i32.const MainCapability | |
i32.load 16 | |
i32.load 0 | |
i32.const 8 | |
i32.add | |
i32.load16_u 0 | |
local.set 1 | |
local.get 1 | |
i32.const 15 | |
i32.ge_u | |
if | |
else | |
# cD | |
i32.const .Ln1Y | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const ut_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
local.get 1 | |
i32.const 8 | |
i32.lt_u | |
if | |
else | |
# cL | |
i32.const .Ln1Z | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cq_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.load 16 | |
i32.load 0 | |
i32.const 14 | |
i32.add | |
i32.load16_u 0 | |
local.set 2 | |
local.get 2 | |
i32.const 1 | |
i32.eq | |
if | |
# cW | |
i32.const .Ln20 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const ca_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.const MainCapability | |
i32.load 16 | |
i32.const 1 | |
i32.add | |
i32.store 16 | |
i32.const MainCapability | |
i32.load 16 | |
i32.const -4 | |
i32.and | |
i32.load 0 | |
i32.load 0 | |
return | |
else | |
# cY | |
i32.const .Ln21 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cc_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.const MainCapability | |
i32.load 832 | |
i32.const -8 | |
i32.add | |
i32.store 832 | |
i32.const MainCapability | |
i32.load 832 | |
i32.const 4 | |
i32.add | |
i32.const MainCapability | |
i32.load 20 | |
i32.store 0 | |
local.get 2 | |
i32.const 4 | |
i32.ge_u | |
if | |
else | |
# c1b | |
i32.const .Ln22 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cd_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.const MainCapability | |
i32.load 16 | |
local.get 2 | |
i32.add | |
i32.store 16 | |
end_if | |
# c1h | |
i32.const .Ln23 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const ce_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.const MainCapability | |
i32.load 840 | |
i32.const 16 | |
i32.add | |
i32.store 840 | |
i32.const MainCapability | |
i32.load 840 | |
i32.const MainCapability | |
i32.load 844 | |
i32.gt_u | |
if | |
# c1m | |
i32.const .Ln24 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cj_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.const 16 | |
i32.store 868 | |
i32.const MainCapability | |
i32.load 832 | |
i32.const stg_ap_p_info | |
i32.store 0 | |
i32.const __stg_gc_enter_1 | |
return | |
else | |
# c1o | |
i32.const .Ln25 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cl_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.load 840 | |
i32.const -12 | |
i32.add | |
local.set 3 | |
local.get 3 | |
i32.const stg_PAP_info | |
i32.store 0 | |
local.get 3 | |
i32.const 4 | |
i32.add | |
local.get 2 | |
i32.const -1 | |
i32.add | |
i32.const 65535 | |
i32.and | |
i32.store16 0 | |
local.get 3 | |
i32.const 8 | |
i32.add | |
i32.const MainCapability | |
i32.load 16 | |
i32.store 0 | |
local.get 3 | |
i32.const 6 | |
i32.add | |
i32.const 1 | |
i32.store16 0 | |
i32.const 0 | |
local.set 4 | |
loop | |
# c1z | |
i32.const .Ln26 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cm_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
local.get 4 | |
i32.const 1 | |
i32.lt_u | |
if | |
# c1E | |
i32.const .Ln27 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cn_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
local.get 3 | |
i32.const 12 | |
i32.add | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.const MainCapability | |
i32.load 832 | |
local.get 4 | |
i32.const 1 | |
i32.add | |
i32.const 2 | |
i32.shl | |
i32.add | |
i32.load 0 | |
i32.store 0 | |
local.get 4 | |
i32.const 1 | |
i32.add | |
local.set 4 | |
else | |
# c1G | |
i32.const .Ln28 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const cp_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
local.get 3 | |
i32.store 16 | |
i32.const MainCapability | |
i32.const MainCapability | |
i32.load 832 | |
i32.const 8 | |
i32.add | |
i32.store 832 | |
i32.const MainCapability | |
i32.load 832 | |
i32.load 0 | |
i32.load 0 | |
return | |
end_if | |
end_loop | |
end_if | |
end_if | |
end_if | |
end_if | |
# cM | |
i32.const .Ln29 | |
i32.const stderr | |
i32.load 0 | |
call fputs | |
drop | |
i32.const c9_buf | |
i32.const __stderr_FILE | |
call fputs | |
local.set 0 | |
i32.const MainCapability | |
i32.const MainCapability | |
i32.load 832 | |
i32.const -8 | |
i32.add | |
i32.store 832 | |
i32.const MainCapability | |
i32.load 832 | |
i32.const 4 | |
i32.add | |
i32.const MainCapability | |
i32.load 20 | |
i32.store 0 | |
i32.const stg_ap_p_ret | |
return | |
end_if | |
end_if | |
end_function | |
.section .rodata..Ln1S,"",@ | |
.size .Ln1S, 25 | |
.Ln1S: | |
.asciz "[DEBUG] \"stg_ap_p_fast\"\n" | |
.section .rodata..Ln1T,"",@ | |
.size .Ln1T, 22 | |
.Ln1T: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln1U,"",@ | |
.size .Ln1U, 22 | |
.Ln1U: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln1V,"",@ | |
.size .Ln1V, 22 | |
.Ln1V: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln1W,"",@ | |
.size .Ln1W, 22 | |
.Ln1W: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln1X,"",@ | |
.size .Ln1X, 22 | |
.Ln1X: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln1Y,"",@ | |
.size .Ln1Y, 22 | |
.Ln1Y: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln1Z,"",@ | |
.size .Ln1Z, 22 | |
.Ln1Z: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln20,"",@ | |
.size .Ln20, 22 | |
.Ln20: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln21,"",@ | |
.size .Ln21, 22 | |
.Ln21: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln22,"",@ | |
.size .Ln22, 22 | |
.Ln22: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln23,"",@ | |
.size .Ln23, 22 | |
.Ln23: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln24,"",@ | |
.size .Ln24, 22 | |
.Ln24: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln25,"",@ | |
.size .Ln25, 22 | |
.Ln25: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln26,"",@ | |
.size .Ln26, 22 | |
.Ln26: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln27,"",@ | |
.size .Ln27, 22 | |
.Ln27: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln28,"",@ | |
.size .Ln28, 22 | |
.Ln28: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata..Ln29,"",@ | |
.size .Ln29, 22 | |
.Ln29: | |
.asciz "[DEBUG] call \"fputs\"\n" | |
.section .rodata.ca_buf,"",@ | |
.p2align 2 | |
.size ca_buf, 13 | |
ca_buf: | |
.asciz "[DEBUG] ca \n" | |
.section .rodata.cc_buf,"",@ | |
.p2align 2 | |
.size cc_buf, 13 | |
cc_buf: | |
.asciz "[DEBUG] cc \n" | |
.section .rodata.cm_buf,"",@ | |
.p2align 2 | |
.size cm_buf, 13 | |
cm_buf: | |
.asciz "[DEBUG] cm \n" | |
.section .rodata.cn_buf,"",@ | |
.p2align 2 | |
.size cn_buf, 13 | |
cn_buf: | |
.asciz "[DEBUG] cn \n" | |
.section .rodata.cp_buf,"",@ | |
.p2align 2 | |
.size cp_buf, 13 | |
cp_buf: | |
.asciz "[DEBUG] cp \n" | |
.section .rodata.cd_buf,"",@ | |
.p2align 2 | |
.size cd_buf, 13 | |
cd_buf: | |
.asciz "[DEBUG] cd \n" | |
.section .rodata.ce_buf,"",@ | |
.p2align 2 | |
.size ce_buf, 13 | |
ce_buf: | |
.asciz "[DEBUG] ce \n" | |
.section .rodata.cj_buf,"",@ | |
.p2align 2 | |
.size cj_buf, 13 | |
cj_buf: | |
.asciz "[DEBUG] cj \n" | |
.section .rodata.cl_buf,"",@ | |
.p2align 2 | |
.size cl_buf, 13 | |
cl_buf: | |
.asciz "[DEBUG] cl \n" | |
.section .rodata.cr_buf,"",@ | |
.p2align 2 | |
.size cr_buf, 13 | |
cr_buf: | |
.asciz "[DEBUG] cr \n" | |
.section .rodata.ut_buf,"",@ | |
.p2align 2 | |
.size ut_buf, 13 | |
ut_buf: | |
.asciz "[DEBUG] ut \n" | |
.section .rodata.c9_buf,"",@ | |
.p2align 2 | |
.size c9_buf, 13 | |
c9_buf: | |
.asciz "[DEBUG] c9 \n" | |
.section .rodata.cq_buf,"",@ | |
.p2align 2 | |
.size cq_buf, 13 | |
cq_buf: | |
.asciz "[DEBUG] cq \n" | |
.section .rodata.c3_buf,"",@ | |
.p2align 2 | |
.size c3_buf, 13 | |
c3_buf: | |
.asciz "[DEBUG] c3 \n" | |
.section .rodata.c5_buf,"",@ | |
.p2align 2 | |
.size c5_buf, 13 | |
c5_buf: | |
.asciz "[DEBUG] c5 \n" | |
.section .rodata.c6_buf,"",@ | |
.p2align 2 | |
.size c6_buf, 13 | |
c6_buf: | |
.asciz "[DEBUG] c6 \n" | |
.section .rodata.c8_buf,"",@ | |
.p2align 2 | |
.size c8_buf, 13 | |
c8_buf: | |
.asciz "[DEBUG] c8 \n" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment