1export2function $bubble_sort(l %.1, w %.3) {3@start.14 %.2 =l alloc8 85 storel %.1, %.26 %.4 =l alloc4 47 storew %.3, %.48 %.5 =l alloc4 19 %.11 =l alloc4 410 %.30 =l alloc4 411 jmp @body.212@body.213 %.6 =w cnew 0, 014 storeb %.6, %.515 jmp @while_cond.316@while_cond.317 %.7 =w loadub %.518 %.8 =w extub %.719 %.9 =w ceqw %.8, 020 jnz %.9, @while_body.4, @while_join.521@while_body.422 %.10 =w cnew 1, 023 storeb %.10, %.524 storew 0, %.1125 jmp @for_cond.626@for_cond.627 %.12 =w loadw %.1128 %.13 =w loadw %.429 %.14 =w sub %.13, 130 %.15 =w cultw %.12, %.1431 jnz %.15, @for_body.7, @for_join.932@for_body.733 %.16 =l loadl %.234 %.17 =w loadw %.1135 %.18 =l extsw %.1736 %.19 =l mul %.18, 437 %.20 =l add %.16, %.1938 %.21 =w loadw %.2039 %.22 =l loadl %.240 %.23 =w loadw %.1141 %.24 =w add %.23, 142 %.25 =l extsw %.2443 %.26 =l mul %.25, 444 %.27 =l add %.22, %.2645 %.28 =w loadw %.2746 %.29 =w csgtw %.21, %.2847 jnz %.29, @if_true.10, @if_false.1148@if_true.1049 %.31 =l loadl %.250 %.32 =w loadw %.1151 %.33 =l extsw %.3252 %.34 =l mul %.33, 453 %.35 =l add %.31, %.3454 %.36 =w loadw %.3555 storew %.36, %.3056 %.37 =l loadl %.257 %.38 =w loadw %.1158 %.39 =w add %.38, 159 %.40 =l extsw %.3960 %.41 =l mul %.40, 461 %.42 =l add %.37, %.4162 %.43 =w loadw %.4263 %.44 =l loadl %.264 %.45 =w loadw %.1165 %.46 =l extsw %.4566 %.47 =l mul %.46, 467 %.48 =l add %.44, %.4768 storew %.43, %.4869 %.49 =w loadw %.3070 %.50 =l loadl %.271 %.51 =w loadw %.1172 %.52 =w add %.51, 173 %.53 =l extsw %.5274 %.54 =l mul %.53, 475 %.55 =l add %.50, %.5476 storew %.49, %.5577 %.56 =w cnew 0, 078 storeb %.56, %.579 jmp @if_false.1180@if_false.1181 jmp @for_cont.882@for_cont.883 %.57 =w loadw %.1184 %.58 =w add %.57, 185 storew %.58, %.1186 jmp @for_cond.687@for_join.988 jmp @while_cond.389@while_join.590 ret91}92export93function w $rand(l %.1) {94@start.1295 %.2 =l alloc8 896 storel %.1, %.297 jmp @body.1398@body.1399 %.3 =l loadl %.2100 %.4 =l loadl %.3101 %.5 =l mul 6364136223846793005, %.4102 %.6 =l extsw 1103 %.7 =l add %.5, %.6104 %.8 =l loadl %.2105 storel %.7, %.8106 %.9 =l loadl %.2107 %.10 =l loadl %.9108 ret %.10109}110export111function $fillary(l %.1, w %.3) {112@start.14113 %.2 =l alloc8 8114 storel %.1, %.2115 %.4 =l alloc4 4116 storew %.3, %.4117 %.5 =l alloc8 8118 %.7 =l alloc4 4119 jmp @body.15120@body.15121 %.6 =l extsw 42122 storel %.6, %.5123 storew 0, %.7124 jmp @for_cond.16125@for_cond.16126 %.8 =w loadw %.7127 %.9 =w loadw %.4128 %.10 =w cultw %.8, %.9129 jnz %.10, @for_body.17, @for_join.19130@for_body.17131 %.11 =w call $rand(l %.5)132 %.12 =l loadl %.2133 %.13 =w loadw %.7134 %.14 =l extuw %.13135 %.15 =l mul %.14, 4136 %.16 =l add %.12, %.15137 storew %.11, %.16138 jmp @for_cont.18139@for_cont.18140 %.17 =w loadw %.7141 %.18 =w add %.17, 1142 storew %.18, %.7143 jmp @for_cond.16144@for_join.19145 ret146}147export148function w $entry(w %.1) {149@start.20150 %.2 =l alloc4 4151 storew %.1, %.2152 %.9 =l alloc4 4153 jmp @body.21154@body.21155 %.3 =w loadw %.2156 %.4 =l extuw %.3157 %.5 =l mul %.4, 4158 %.6 =l alloc4 %.5159 %.7 =w loadw %.2160 call $fillary(l %.6, w %.7)161 %.8 =w loadw %.2162 call $bubble_sort(l %.6, w %.8)163 storew 0, %.9164 jmp @for_cond.22165@for_cond.22166 %.10 =w loadw %.9167 %.11 =w loadw %.2168 %.12 =w sub %.11, 1169 %.13 =w cultw %.10, %.12170 jnz %.13, @for_body.23, @for_join.25171@for_body.23172 %.14 =w loadw %.9173 %.15 =l extuw %.14174 %.16 =l mul %.15, 4175 %.17 =l add %.6, %.16176 %.18 =w loadw %.17177 %.19 =w loadw %.9178 %.20 =w add %.19, 1179 %.21 =l extuw %.20180 %.22 =l mul %.21, 4181 %.23 =l add %.6, %.22182 %.24 =w loadw %.23183 %.25 =w csgtw %.18, %.24184 jnz %.25, @if_true.26, @if_false.27185@if_true.26186 ret 1187@if_false.27188 jmp @for_cont.24189@for_cont.24190 %.26 =w loadw %.9191 %.27 =w add %.26, 1192 storew %.27, %.9193 jmp @for_cond.22194@for_join.25195 ret 0196}197export198function w $main() {199@start.28200 jmp @body.29201@body.29202 %.1 =w call $entry(w 1000)203 ret 0204}