Advertisement
chemoelectric

Somewhat verbose (but more explicit than usual) ATS2

Apr 2nd, 2023
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 63.06 KB | Source Code | 0 0
  1. #include "share/atspre_staload.hats"
  2.  
  3. #define STACK_MAX 1000
  4.  
  5. stadef integer_kind = int32_kind
  6. typedef integer = g0int integer_kind
  7. extern castfn g0int2int_int_integer : g0int int_kind -<> integer
  8. implement g0int2int<int_kind,integer_kind> i = g0int2int_int_integer i
  9. val zero = g0int2int<int_kind,integer_kind> 0
  10. val one = g0int2int<int_kind,integer_kind> 1
  11.  
  12. stadef stack_ptr_kind = int_kind
  13. typedef stack_ptr = g1int stack_ptr_kind
  14. vtypedef stack_vt = array (integer, STACK_MAX)
  15. val stack_bottom = g1int2int<int_kind,stack_ptr_kind> 0
  16. val stack_max = g1int2int<int_kind,stack_ptr_kind> STACK_MAX
  17.  
  18. macdef check_stack (i) = assertloc (g1int_lte<stack_ptr_kind> (stack_bottom, ,(i)) * g1int_lt<stack_ptr_kind> (,(i), stack_max))
  19.  
  20. val output = stdout_ref
  21.  
  22. implement
  23. main0 () =
  24. let
  25. fnx
  26. start_here (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  27. kont0 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  28. and
  29. kont0 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  30. let (* push *)
  31. val () = check_stack sp
  32. val i = sp and sp = succ sp
  33. in
  34. stack[i] := g0int2int<intknd,integer_kind> (420);
  35. kont5 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  36. end
  37. and
  38. kont5 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  39. let (* neg *)
  40. val i = pred sp
  41. val () = check_stack i
  42. in
  43. stack[i] := g0int_neg<integer_kind> stack[i];
  44. kont6 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  45. end
  46. and
  47. kont6 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  48. let (* store *)
  49. val sp = pred sp
  50. val () = check_stack sp
  51. val var0 = stack[sp]
  52. in
  53. kont11 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  54. end
  55. and
  56. kont11 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  57. let (* push *)
  58. val () = check_stack sp
  59. val i = sp and sp = succ sp
  60. in
  61. stack[i] := g0int2int<intknd,integer_kind> (300);
  62. kont16 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  63. end
  64. and
  65. kont16 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  66. let (* store *)
  67. val sp = pred sp
  68. val () = check_stack sp
  69. val var1 = stack[sp]
  70. in
  71. kont21 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  72. end
  73. and
  74. kont21 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  75. let (* push *)
  76. val () = check_stack sp
  77. val i = sp and sp = succ sp
  78. in
  79. stack[i] := g0int2int<intknd,integer_kind> (300);
  80. kont26 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  81. end
  82. and
  83. kont26 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  84. let (* store *)
  85. val sp = pred sp
  86. val () = check_stack sp
  87. val var2 = stack[sp]
  88. in
  89. kont31 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  90. end
  91. and
  92. kont31 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  93. let (* push *)
  94. val () = check_stack sp
  95. val i = sp and sp = succ sp
  96. in
  97. stack[i] := g0int2int<intknd,integer_kind> (300);
  98. kont36 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  99. end
  100. and
  101. kont36 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  102. let (* neg *)
  103. val i = pred sp
  104. val () = check_stack i
  105. in
  106. stack[i] := g0int_neg<integer_kind> stack[i];
  107. kont37 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  108. end
  109. and
  110. kont37 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  111. let (* store *)
  112. val sp = pred sp
  113. val () = check_stack sp
  114. val var3 = stack[sp]
  115. in
  116. kont42 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  117. end
  118. and
  119. kont42 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  120. let (* push *)
  121. val () = check_stack sp
  122. val i = sp and sp = succ sp
  123. in
  124. stack[i] := g0int2int<intknd,integer_kind> (7);
  125. kont47 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  126. end
  127. and
  128. kont47 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  129. let (* store *)
  130. val sp = pred sp
  131. val () = check_stack sp
  132. val var4 = stack[sp]
  133. in
  134. kont52 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  135. end
  136. and
  137. kont52 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  138. let (* push *)
  139. val () = check_stack sp
  140. val i = sp and sp = succ sp
  141. in
  142. stack[i] := g0int2int<intknd,integer_kind> (15);
  143. kont57 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  144. end
  145. and
  146. kont57 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  147. let (* store *)
  148. val sp = pred sp
  149. val () = check_stack sp
  150. val var5 = stack[sp]
  151. in
  152. kont62 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  153. end
  154. and
  155. kont62 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  156. let (* push *)
  157. val () = check_stack sp
  158. val i = sp and sp = succ sp
  159. in
  160. stack[i] := g0int2int<intknd,integer_kind> (200);
  161. kont67 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  162. end
  163. and
  164. kont67 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  165. let (* store *)
  166. val sp = pred sp
  167. val () = check_stack sp
  168. val var6 = stack[sp]
  169. in
  170. kont72 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  171. end
  172. and
  173. kont72 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  174. let (* fetch *)
  175. val i = sp and sp = succ sp
  176. val () = check_stack sp
  177. in
  178. stack[i] := var2;
  179. kont77 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  180. end
  181. and
  182. kont77 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  183. let (* store *)
  184. val sp = pred sp
  185. val () = check_stack sp
  186. val var7 = stack[sp]
  187. in
  188. kont82 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  189. end
  190. and
  191. kont82 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  192. let (* fetch *)
  193. val i = sp and sp = succ sp
  194. val () = check_stack sp
  195. in
  196. stack[i] := var7;
  197. kont87 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  198. end
  199. and
  200. kont87 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  201. let (* fetch *)
  202. val i = sp and sp = succ sp
  203. val () = check_stack sp
  204. in
  205. stack[i] := var3;
  206. kont92 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  207. end
  208. and
  209. kont92 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  210. let (* gt *)
  211. val j = pred sp
  212. val i = pred j
  213. val () = check_stack j and () = check_stack i
  214. val sp = j
  215. in
  216. stack[i] := (if g0int_gt<integer_kind> (stack[i], stack[j]) then one else zero);
  217. kont93 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  218. end
  219. and
  220. kont93 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  221. let (* jz *)
  222. val sp = pred sp
  223. val () = check_stack sp
  224. in
  225. if g0int_eq<integer_kind> (stack[sp], zero) then
  226. kont423 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  227. else
  228. kont98 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  229. end
  230. and
  231. kont98 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  232. let (* fetch *)
  233. val i = sp and sp = succ sp
  234. val () = check_stack sp
  235. in
  236. stack[i] := var0;
  237. kont103 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  238. end
  239. and
  240. kont103 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  241. let (* store *)
  242. val sp = pred sp
  243. val () = check_stack sp
  244. val var8 = stack[sp]
  245. in
  246. kont108 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  247. end
  248. and
  249. kont108 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  250. let (* fetch *)
  251. val i = sp and sp = succ sp
  252. val () = check_stack sp
  253. in
  254. stack[i] := var8;
  255. kont113 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  256. end
  257. and
  258. kont113 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  259. let (* fetch *)
  260. val i = sp and sp = succ sp
  261. val () = check_stack sp
  262. in
  263. stack[i] := var1;
  264. kont118 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  265. end
  266. and
  267. kont118 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  268. let (* lt *)
  269. val j = pred sp
  270. val i = pred j
  271. val () = check_stack j and () = check_stack i
  272. val sp = j
  273. in
  274. stack[i] := (if g0int_lt<integer_kind> (stack[i], stack[j]) then one else zero);
  275. kont119 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  276. end
  277. and
  278. kont119 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  279. let (* jz *)
  280. val sp = pred sp
  281. val () = check_stack sp
  282. in
  283. if g0int_eq<integer_kind> (stack[sp], zero) then
  284. kont396 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  285. else
  286. kont124 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  287. end
  288. and
  289. kont124 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  290. let (* push *)
  291. val () = check_stack sp
  292. val i = sp and sp = succ sp
  293. in
  294. stack[i] := g0int2int<intknd,integer_kind> (0);
  295. kont129 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  296. end
  297. and
  298. kont129 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  299. let (* store *)
  300. val sp = pred sp
  301. val () = check_stack sp
  302. val var9 = stack[sp]
  303. in
  304. kont134 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  305. end
  306. and
  307. kont134 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  308. let (* push *)
  309. val () = check_stack sp
  310. val i = sp and sp = succ sp
  311. in
  312. stack[i] := g0int2int<intknd,integer_kind> (0);
  313. kont139 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  314. end
  315. and
  316. kont139 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  317. let (* store *)
  318. val sp = pred sp
  319. val () = check_stack sp
  320. val var10 = stack[sp]
  321. in
  322. kont144 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  323. end
  324. and
  325. kont144 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  326. let (* push *)
  327. val () = check_stack sp
  328. val i = sp and sp = succ sp
  329. in
  330. stack[i] := g0int2int<intknd,integer_kind> (32);
  331. kont149 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  332. end
  333. and
  334. kont149 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  335. let (* store *)
  336. val sp = pred sp
  337. val () = check_stack sp
  338. val var11 = stack[sp]
  339. in
  340. kont154 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  341. end
  342. and
  343. kont154 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  344. let (* push *)
  345. val () = check_stack sp
  346. val i = sp and sp = succ sp
  347. in
  348. stack[i] := g0int2int<intknd,integer_kind> (0);
  349. kont159 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  350. end
  351. and
  352. kont159 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  353. let (* store *)
  354. val sp = pred sp
  355. val () = check_stack sp
  356. val var12 = stack[sp]
  357. in
  358. kont164 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  359. end
  360. and
  361. kont164 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  362. let (* fetch *)
  363. val i = sp and sp = succ sp
  364. val () = check_stack sp
  365. in
  366. stack[i] := var12;
  367. kont169 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  368. end
  369. and
  370. kont169 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  371. let (* fetch *)
  372. val i = sp and sp = succ sp
  373. val () = check_stack sp
  374. in
  375. stack[i] := var6;
  376. kont174 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  377. end
  378. and
  379. kont174 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  380. let (* lt *)
  381. val j = pred sp
  382. val i = pred j
  383. val () = check_stack j and () = check_stack i
  384. val sp = j
  385. in
  386. stack[i] := (if g0int_lt<integer_kind> (stack[i], stack[j]) then one else zero);
  387. kont175 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  388. end
  389. and
  390. kont175 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  391. let (* jz *)
  392. val sp = pred sp
  393. val () = check_stack sp
  394. in
  395. if g0int_eq<integer_kind> (stack[sp], zero) then
  396. kont369 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  397. else
  398. kont180 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  399. end
  400. and
  401. kont180 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  402. let (* fetch *)
  403. val i = sp and sp = succ sp
  404. val () = check_stack sp
  405. in
  406. stack[i] := var10;
  407. kont185 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  408. end
  409. and
  410. kont185 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  411. let (* fetch *)
  412. val i = sp and sp = succ sp
  413. val () = check_stack sp
  414. in
  415. stack[i] := var10;
  416. kont190 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  417. end
  418. and
  419. kont190 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  420. let (* mul *)
  421. val j = pred sp
  422. val i = pred j
  423. val () = check_stack j and () = check_stack i
  424. val sp = j
  425. in
  426. stack[i] := g0int_mul<integer_kind> (stack[i], stack[j]);
  427. kont191 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  428. end
  429. and
  430. kont191 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  431. let (* push *)
  432. val () = check_stack sp
  433. val i = sp and sp = succ sp
  434. in
  435. stack[i] := g0int2int<intknd,integer_kind> (200);
  436. kont196 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  437. end
  438. and
  439. kont196 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  440. let (* div *)
  441. val j = pred sp
  442. val i = pred j
  443. val () = check_stack j and () = check_stack i
  444. val sp = j
  445. in
  446. stack[i] := g0int_div<integer_kind> (stack[i], stack[j]);
  447. kont197 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  448. end
  449. and
  450. kont197 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  451. let (* store *)
  452. val sp = pred sp
  453. val () = check_stack sp
  454. val var13 = stack[sp]
  455. in
  456. kont202 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  457. end
  458. and
  459. kont202 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  460. let (* fetch *)
  461. val i = sp and sp = succ sp
  462. val () = check_stack sp
  463. in
  464. stack[i] := var9;
  465. kont207 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  466. end
  467. and
  468. kont207 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  469. let (* fetch *)
  470. val i = sp and sp = succ sp
  471. val () = check_stack sp
  472. in
  473. stack[i] := var9;
  474. kont212 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  475. end
  476. and
  477. kont212 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  478. let (* mul *)
  479. val j = pred sp
  480. val i = pred j
  481. val () = check_stack j and () = check_stack i
  482. val sp = j
  483. in
  484. stack[i] := g0int_mul<integer_kind> (stack[i], stack[j]);
  485. kont213 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  486. end
  487. and
  488. kont213 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  489. let (* push *)
  490. val () = check_stack sp
  491. val i = sp and sp = succ sp
  492. in
  493. stack[i] := g0int2int<intknd,integer_kind> (200);
  494. kont218 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  495. end
  496. and
  497. kont218 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  498. let (* div *)
  499. val j = pred sp
  500. val i = pred j
  501. val () = check_stack j and () = check_stack i
  502. val sp = j
  503. in
  504. stack[i] := g0int_div<integer_kind> (stack[i], stack[j]);
  505. kont219 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  506. end
  507. and
  508. kont219 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  509. let (* store *)
  510. val sp = pred sp
  511. val () = check_stack sp
  512. val var14 = stack[sp]
  513. in
  514. kont224 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  515. end
  516. and
  517. kont224 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  518. let (* fetch *)
  519. val i = sp and sp = succ sp
  520. val () = check_stack sp
  521. in
  522. stack[i] := var13;
  523. kont229 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  524. end
  525. and
  526. kont229 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  527. let (* fetch *)
  528. val i = sp and sp = succ sp
  529. val () = check_stack sp
  530. in
  531. stack[i] := var14;
  532. kont234 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  533. end
  534. and
  535. kont234 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  536. let (* add *)
  537. val j = pred sp
  538. val i = pred j
  539. val () = check_stack j and () = check_stack i
  540. val sp = j
  541. in
  542. stack[i] := g0int_add<integer_kind> (stack[i], stack[j]);
  543. kont235 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  544. end
  545. and
  546. kont235 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  547. let (* push *)
  548. val () = check_stack sp
  549. val i = sp and sp = succ sp
  550. in
  551. stack[i] := g0int2int<intknd,integer_kind> (800);
  552. kont240 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  553. end
  554. and
  555. kont240 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  556. let (* gt *)
  557. val j = pred sp
  558. val i = pred j
  559. val () = check_stack j and () = check_stack i
  560. val sp = j
  561. in
  562. stack[i] := (if g0int_gt<integer_kind> (stack[i], stack[j]) then one else zero);
  563. kont241 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  564. end
  565. and
  566. kont241 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  567. let (* jz *)
  568. val sp = pred sp
  569. val () = check_stack sp
  570. in
  571. if g0int_eq<integer_kind> (stack[sp], zero) then
  572. kont298 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  573. else
  574. kont246 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  575. end
  576. and
  577. kont246 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  578. let (* push *)
  579. val () = check_stack sp
  580. val i = sp and sp = succ sp
  581. in
  582. stack[i] := g0int2int<intknd,integer_kind> (48);
  583. kont251 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  584. end
  585. and
  586. kont251 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  587. let (* fetch *)
  588. val i = sp and sp = succ sp
  589. val () = check_stack sp
  590. in
  591. stack[i] := var12;
  592. kont256 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  593. end
  594. and
  595. kont256 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  596. let (* add *)
  597. val j = pred sp
  598. val i = pred j
  599. val () = check_stack j and () = check_stack i
  600. val sp = j
  601. in
  602. stack[i] := g0int_add<integer_kind> (stack[i], stack[j]);
  603. kont257 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  604. end
  605. and
  606. kont257 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  607. let (* store *)
  608. val sp = pred sp
  609. val () = check_stack sp
  610. val var11 = stack[sp]
  611. in
  612. kont262 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  613. end
  614. and
  615. kont262 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  616. let (* fetch *)
  617. val i = sp and sp = succ sp
  618. val () = check_stack sp
  619. in
  620. stack[i] := var12;
  621. kont267 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  622. end
  623. and
  624. kont267 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  625. let (* push *)
  626. val () = check_stack sp
  627. val i = sp and sp = succ sp
  628. in
  629. stack[i] := g0int2int<intknd,integer_kind> (9);
  630. kont272 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  631. end
  632. and
  633. kont272 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  634. let (* gt *)
  635. val j = pred sp
  636. val i = pred j
  637. val () = check_stack j and () = check_stack i
  638. val sp = j
  639. in
  640. stack[i] := (if g0int_gt<integer_kind> (stack[i], stack[j]) then one else zero);
  641. kont273 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  642. end
  643. and
  644. kont273 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  645. let (* jz *)
  646. val sp = pred sp
  647. val () = check_stack sp
  648. in
  649. if g0int_eq<integer_kind> (stack[sp], zero) then
  650. kont288 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  651. else
  652. kont278 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  653. end
  654. and
  655. kont278 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  656. let (* push *)
  657. val () = check_stack sp
  658. val i = sp and sp = succ sp
  659. in
  660. stack[i] := g0int2int<intknd,integer_kind> (64);
  661. kont283 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  662. end
  663. and
  664. kont283 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  665. let (* store *)
  666. val sp = pred sp
  667. val () = check_stack sp
  668. val var11 = stack[sp]
  669. in
  670. kont288 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  671. end
  672. and
  673. kont288 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  674. let (* fetch *)
  675. val i = sp and sp = succ sp
  676. val () = check_stack sp
  677. in
  678. stack[i] := var6;
  679. kont293 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  680. end
  681. and
  682. kont293 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  683. let (* store *)
  684. val sp = pred sp
  685. val () = check_stack sp
  686. val var12 = stack[sp]
  687. in
  688. kont298 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  689. end
  690. and
  691. kont298 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  692. let (* fetch *)
  693. val i = sp and sp = succ sp
  694. val () = check_stack sp
  695. in
  696. stack[i] := var10;
  697. kont303 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  698. end
  699. and
  700. kont303 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  701. let (* fetch *)
  702. val i = sp and sp = succ sp
  703. val () = check_stack sp
  704. in
  705. stack[i] := var9;
  706. kont308 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  707. end
  708. and
  709. kont308 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  710. let (* mul *)
  711. val j = pred sp
  712. val i = pred j
  713. val () = check_stack j and () = check_stack i
  714. val sp = j
  715. in
  716. stack[i] := g0int_mul<integer_kind> (stack[i], stack[j]);
  717. kont309 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  718. end
  719. and
  720. kont309 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  721. let (* push *)
  722. val () = check_stack sp
  723. val i = sp and sp = succ sp
  724. in
  725. stack[i] := g0int2int<intknd,integer_kind> (100);
  726. kont314 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  727. end
  728. and
  729. kont314 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  730. let (* div *)
  731. val j = pred sp
  732. val i = pred j
  733. val () = check_stack j and () = check_stack i
  734. val sp = j
  735. in
  736. stack[i] := g0int_div<integer_kind> (stack[i], stack[j]);
  737. kont315 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  738. end
  739. and
  740. kont315 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  741. let (* fetch *)
  742. val i = sp and sp = succ sp
  743. val () = check_stack sp
  744. in
  745. stack[i] := var7;
  746. kont320 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  747. end
  748. and
  749. kont320 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  750. let (* add *)
  751. val j = pred sp
  752. val i = pred j
  753. val () = check_stack j and () = check_stack i
  754. val sp = j
  755. in
  756. stack[i] := g0int_add<integer_kind> (stack[i], stack[j]);
  757. kont321 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  758. end
  759. and
  760. kont321 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  761. let (* store *)
  762. val sp = pred sp
  763. val () = check_stack sp
  764. val var9 = stack[sp]
  765. in
  766. kont326 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  767. end
  768. and
  769. kont326 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  770. let (* fetch *)
  771. val i = sp and sp = succ sp
  772. val () = check_stack sp
  773. in
  774. stack[i] := var13;
  775. kont331 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  776. end
  777. and
  778. kont331 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  779. let (* fetch *)
  780. val i = sp and sp = succ sp
  781. val () = check_stack sp
  782. in
  783. stack[i] := var14;
  784. kont336 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  785. end
  786. and
  787. kont336 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  788. let (* sub *)
  789. val j = pred sp
  790. val i = pred j
  791. val () = check_stack j and () = check_stack i
  792. val sp = j
  793. in
  794. stack[i] := g0int_sub<integer_kind> (stack[i], stack[j]);
  795. kont337 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  796. end
  797. and
  798. kont337 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  799. let (* fetch *)
  800. val i = sp and sp = succ sp
  801. val () = check_stack sp
  802. in
  803. stack[i] := var8;
  804. kont342 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  805. end
  806. and
  807. kont342 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  808. let (* add *)
  809. val j = pred sp
  810. val i = pred j
  811. val () = check_stack j and () = check_stack i
  812. val sp = j
  813. in
  814. stack[i] := g0int_add<integer_kind> (stack[i], stack[j]);
  815. kont343 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  816. end
  817. and
  818. kont343 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  819. let (* store *)
  820. val sp = pred sp
  821. val () = check_stack sp
  822. val var10 = stack[sp]
  823. in
  824. kont348 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  825. end
  826. and
  827. kont348 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  828. let (* fetch *)
  829. val i = sp and sp = succ sp
  830. val () = check_stack sp
  831. in
  832. stack[i] := var12;
  833. kont353 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  834. end
  835. and
  836. kont353 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  837. let (* push *)
  838. val () = check_stack sp
  839. val i = sp and sp = succ sp
  840. in
  841. stack[i] := g0int2int<intknd,integer_kind> (1);
  842. kont358 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  843. end
  844. and
  845. kont358 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  846. let (* add *)
  847. val j = pred sp
  848. val i = pred j
  849. val () = check_stack j and () = check_stack i
  850. val sp = j
  851. in
  852. stack[i] := g0int_add<integer_kind> (stack[i], stack[j]);
  853. kont359 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  854. end
  855. and
  856. kont359 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  857. let (* store *)
  858. val sp = pred sp
  859. val () = check_stack sp
  860. val var12 = stack[sp]
  861. in
  862. kont364 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  863. end
  864. and
  865. kont364 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  866. let (* jmp *)
  867. in
  868. kont164 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  869. end
  870. and
  871. kont369 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  872. let (* fetch *)
  873. val i = sp and sp = succ sp
  874. val () = check_stack sp
  875. in
  876. stack[i] := var11;
  877. kont374 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  878. end
  879. and
  880. kont374 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  881. let (* prtc *)
  882. val sp = pred sp
  883. val () = check_stack sp
  884. in
  885. fprint_val<uchar> (output, int2uchar0 (g0i2i stack[sp]));
  886. kont375 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  887. end
  888. and
  889. kont375 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  890. let (* fetch *)
  891. val i = sp and sp = succ sp
  892. val () = check_stack sp
  893. in
  894. stack[i] := var8;
  895. kont380 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  896. end
  897. and
  898. kont380 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  899. let (* fetch *)
  900. val i = sp and sp = succ sp
  901. val () = check_stack sp
  902. in
  903. stack[i] := var4;
  904. kont385 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  905. end
  906. and
  907. kont385 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  908. let (* add *)
  909. val j = pred sp
  910. val i = pred j
  911. val () = check_stack j and () = check_stack i
  912. val sp = j
  913. in
  914. stack[i] := g0int_add<integer_kind> (stack[i], stack[j]);
  915. kont386 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  916. end
  917. and
  918. kont386 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  919. let (* store *)
  920. val sp = pred sp
  921. val () = check_stack sp
  922. val var8 = stack[sp]
  923. in
  924. kont391 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  925. end
  926. and
  927. kont391 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  928. let (* jmp *)
  929. in
  930. kont108 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  931. end
  932. and
  933. kont396 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  934. let (* push *)
  935. val () = check_stack sp
  936. val i = sp and sp = succ sp
  937. in
  938. stack[i] := g0int2int<intknd,integer_kind> (10);
  939. kont401 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  940. end
  941. and
  942. kont401 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  943. let (* prtc *)
  944. val sp = pred sp
  945. val () = check_stack sp
  946. in
  947. fprint_val<uchar> (output, int2uchar0 (g0i2i stack[sp]));
  948. kont402 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  949. end
  950. and
  951. kont402 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  952. let (* fetch *)
  953. val i = sp and sp = succ sp
  954. val () = check_stack sp
  955. in
  956. stack[i] := var7;
  957. kont407 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  958. end
  959. and
  960. kont407 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  961. let (* fetch *)
  962. val i = sp and sp = succ sp
  963. val () = check_stack sp
  964. in
  965. stack[i] := var5;
  966. kont412 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  967. end
  968. and
  969. kont412 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  970. let (* sub *)
  971. val j = pred sp
  972. val i = pred j
  973. val () = check_stack j and () = check_stack i
  974. val sp = j
  975. in
  976. stack[i] := g0int_sub<integer_kind> (stack[i], stack[j]);
  977. kont413 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  978. end
  979. and
  980. kont413 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  981. let (* store *)
  982. val sp = pred sp
  983. val () = check_stack sp
  984. val var7 = stack[sp]
  985. in
  986. kont418 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  987. end
  988. and
  989. kont418 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  990. let (* jmp *)
  991. in
  992. kont82 (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  993. end
  994. and
  995. kont423 (stack : &stack_vt, sp : stack_ptr, var0 : integer, var1 : integer, var2 : integer, var3 : integer, var4 : integer, var5 : integer, var6 : integer, var7 : integer, var8 : integer, var9 : integer, var10 : integer, var11 : integer, var12 : integer, var13 : integer, var14 : integer) : void =
  996. let (* halt *)
  997. in
  998. ()
  999. end
  1000.  
  1001. var stack : stack_vt = @[integer][STACK_MAX] (zero)
  1002. val sp : stack_ptr = stack_bottom
  1003. val var0 : integer = zero
  1004. val var1 : integer = zero
  1005. val var2 : integer = zero
  1006. val var3 : integer = zero
  1007. val var4 : integer = zero
  1008. val var5 : integer = zero
  1009. val var6 : integer = zero
  1010. val var7 : integer = zero
  1011. val var8 : integer = zero
  1012. val var9 : integer = zero
  1013. val var10 : integer = zero
  1014. val var11 : integer = zero
  1015. val var12 : integer = zero
  1016. val var13 : integer = zero
  1017. val var14 : integer = zero
  1018. in
  1019. start_here (stack, sp, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, var11, var12, var13, var14)
  1020. end
  1021.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement