vstr.clumac 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. ;CLU Compiler Version 3.76
  2. .symtab 8000.,4095.
  3. .insrt clusys;alpha >
  4. ; 3
  5. tdesc t$1,vstream,[]
  6. string s$1,name
  7. tdesc t$2,word,[]
  8. string s$2,sum
  9. tdesc t$3,heap,[ttype(tint)]
  10. string s$3,vals
  11. sdesc t$4,record,[s$1,ttype(tstr),s$2,t$2,s$3,t$3]
  12. ; vstream
  13. cluster vstream,t$1,t$4,[]
  14. ; 13
  15. ptdesc t$5,[ttype(tstr)],[t$1],[]
  16. ; create
  17. proc f$1,[v$1],[],[],t$5,[]
  18. ; 14
  19. args [v$1(er)]
  20. args [$zero]
  21. pcdesc f$7,vstream$%int2big,1.
  22. pcall f$7
  23. args [rr]
  24. pdesc f$8,int$lt
  25. typarg [f$8]
  26. pcdesc f$9,[t$3,create],1.
  27. pcall f$9
  28. args [rr]
  29. recgen [3.,2.,1.]
  30. cvtup rr
  31. $rtn rr
  32. corp vstream$create,[s]
  33. ; 20
  34. ptdesc t$6,[t$1,ttype(tint)],[],[]
  35. ; addnum
  36. proc f$2,[v$2,v$3],[],[],t$6,[]
  37. ; 21
  38. args [v$2(er)]
  39. pcdesc f$10,[t$4,get_vals],1.
  40. pcall f$10
  41. args [rr]
  42. args [v$3(er)]
  43. pcdesc f$11,[t$3,insert],2.
  44. pcall f$11
  45. ; 22
  46. args [v$2(er)]
  47. args [v$2(er)]
  48. pcdesc f$12,[t$4,get_sum],1.
  49. pcall f$12
  50. args [rr]
  51. args [v$3(er)]
  52. pcall f$7
  53. args [rr]
  54. pcdesc f$13,word$add,2.
  55. pcall f$13
  56. args [rr]
  57. pcdesc f$14,[t$4,set_sum],2.
  58. pcall f$14
  59. $rtnc $none
  60. corp vstream$addnum,[s,v]
  61. ; 25
  62. tdesc t$7,stream,[]
  63. ptdesc t$8,[t$1,t$7],[],[]
  64. ; output
  65. proc f$3,[v$4,v$5],[v$6],[tbad],t$8,[]
  66. ; 26
  67. args [v$4(er)]
  68. pcall f$10
  69. args [rr]
  70. pcdesc f$15,vstream$%h2a,1.
  71. pcall f$15
  72. assn v$6(er),rr
  73. ; 27
  74. string s$4,Statistics on
  75. link c$1,s$4
  76. args [c$1(lr)]
  77. args [v$5(er)]
  78. pcdesc f$16,stream$puts,2.
  79. pcall f$16
  80. ; 28
  81. args [v$4(er)]
  82. pcdesc f$17,[t$4,get_name],1.
  83. pcall f$17
  84. args [rr]
  85. args [v$5(er)]
  86. pcdesc f$18,stream$putl,2.
  87. pcall f$18
  88. ; 29
  89. string s$5, Count =
  90. link c$2,s$5
  91. args [c$2(lr)]
  92. args [v$5(er)]
  93. pcall f$16
  94. ; 30
  95. args [v$6(er)]
  96. tdesc t$9,array,[ttype(tint)]
  97. pcdesc f$19,[t$9,size],1.
  98. pcall f$19
  99. args [rr]
  100. pcdesc f$20,int$unparse,1.
  101. pcall f$20
  102. args [rr]
  103. args [v$5(er)]
  104. pcall f$18
  105. ; 31
  106. string s$6, Nonzero Count =
  107. link c$3,s$6
  108. args [c$3(lr)]
  109. args [v$5(er)]
  110. pcall f$16
  111. ; 32
  112. args [v$6(er)]
  113. pcdesc f$21,vstream$%nzc,1.
  114. pcall f$21
  115. args [rr]
  116. pcall f$20
  117. args [rr]
  118. args [v$5(er)]
  119. pcall f$18
  120. ; 33
  121. string s$7, Total =
  122. link c$4,s$7
  123. args [c$4(lr)]
  124. args [v$5(er)]
  125. pcall f$16
  126. ; 34
  127. args [v$4(er)]
  128. pcall f$12
  129. args [rr]
  130. pcdesc f$22,word$unparse,1.
  131. pcall f$22
  132. args [rr]
  133. args [v$5(er)]
  134. pcall f$18
  135. ; 35
  136. string s$8, Low Value =
  137. link c$5,s$8
  138. args [c$5(lr)]
  139. args [v$5(er)]
  140. pcall f$16
  141. ; 36
  142. args [v$6(er)]
  143. pcdesc f$23,[t$9,bottom],1.
  144. pcall f$23
  145. args [rr]
  146. pcall f$20
  147. args [rr]
  148. args [v$5(er)]
  149. pcall f$18
  150. ; 37
  151. string s$9, High Value =
  152. link c$6,s$9
  153. args [c$6(lr)]
  154. args [v$5(er)]
  155. pcall f$16
  156. ; 38
  157. args [v$6(er)]
  158. pcdesc f$24,[t$9,top],1.
  159. pcall f$24
  160. args [rr]
  161. pcall f$20
  162. args [rr]
  163. args [v$5(er)]
  164. pcall f$18
  165. ; 39
  166. string s$10, Average =
  167. link c$7,s$10
  168. args [c$7(lr)]
  169. args [v$5(er)]
  170. pcall f$16
  171. ; 40
  172. args [v$4(er)]
  173. pcall f$12
  174. args [rr]
  175. args [v$6(er)]
  176. pcall f$19
  177. args [rr]
  178. pcall f$7
  179. args [rr]
  180. pcdesc f$25,word$div,2.
  181. pcall f$25
  182. args [rr]
  183. pcall f$22
  184. args [rr]
  185. args [v$5(er)]
  186. pcall f$18
  187. ; 41
  188. string s$11, Median =
  189. link c$8,s$11
  190. args [c$8(lr)]
  191. args [v$5(er)]
  192. pcall f$16
  193. ; 42
  194. args [v$6(er)]
  195. args [v$6(er)]
  196. pcall f$19
  197. args [rr]
  198. args [$two]
  199. pcdesc f$26,int$div,2.
  200. pcall f$26
  201. args [rr]
  202. pcdesc f$27,[t$9,fetch],2.
  203. pcall f$27
  204. args [rr]
  205. pcall f$20
  206. args [rr]
  207. args [v$5(er)]
  208. pcall f$18
  209. ; 43
  210. string s$12, 90% value =
  211. link c$9,s$12
  212. args [c$9(lr)]
  213. args [v$5(er)]
  214. pcall f$16
  215. ; 44
  216. args [v$6(er)]
  217. args [v$6(er)]
  218. pcall f$19
  219. args [rr]
  220. link c$10,tint+9.
  221. args [c$10(lr)]
  222. pcdesc f$28,int$mul,2.
  223. pcall f$28
  224. args [rr]
  225. link c$11,tint+10.
  226. args [c$11(lr)]
  227. pcall f$26
  228. args [rr]
  229. pcall f$27
  230. args [rr]
  231. pcall f$20
  232. args [rr]
  233. args [v$5(er)]
  234. pcall f$18
  235. ; 45
  236. args [$nulls]
  237. args [v$5(er)]
  238. pcall f$18
  239. $rtnc $none
  240. corp vstream$output,[x,s]
  241. ; 48
  242. ptdesc t$10,[t$3],[t$9],[]
  243. ; %h2a
  244. proc f$4,[v$7],[v$8],[tbad],t$10,[]
  245. ; 49
  246. args [$zero]
  247. pcdesc f$29,[t$9,create],1.
  248. pcall f$29
  249. assn v$8(er),rr
  250. ; 50
  251. $loop
  252. args [v$7(er)]
  253. pcdesc f$30,[t$3,empty],1.
  254. pcall f$30
  255. args [rr]
  256. pcdesc f$31,bool$not,1.
  257. pcall f$31
  258. $iff
  259. $then $go l1
  260. $fi
  261. ; 51
  262. args [v$8(er)]
  263. args [v$7(er)]
  264. pcdesc f$32,[t$3,remove],1.
  265. pcall f$32
  266. args [rr]
  267. pcdesc f$33,[t$9,addh],2.
  268. pcall f$33
  269. $pool
  270. $label l1
  271. ; 53
  272. assn rr,v$8(er)
  273. $rtn rr
  274. corp vstream$%h2a,[x]
  275. ; 56
  276. ptdesc t$11,[t$9],[ttype(tint)],[]
  277. ; %nzc
  278. proc f$5,[v$9],[v$10,v$11],[tbad,tbad],t$11,[]
  279. ; 57
  280. assn v$10(er),$zero
  281. ; 58
  282. args [v$9(er)]
  283. pcdesc f$34,[t$9,elements],1.
  284. pcall f$34
  285. $for l2,[v$11(er)]
  286. ; 59
  287. $if
  288. args [v$11(er)]
  289. args [$zero]
  290. pcdesc f$35,int$equal,2.
  291. pcall f$35
  292. args [rr]
  293. pcall f$31
  294. $test
  295. $then
  296. args [v$10(er)]
  297. args [$one]
  298. pcdesc f$36,int$add,2.
  299. pcall f$36
  300. assn v$10(er),rr
  301. $fi
  302. $rof l2
  303. ; 61
  304. assn rr,v$10(er)
  305. $rtn rr
  306. corp vstream$%nzc,[a]
  307. ; 64
  308. ptdesc t$12,[ttype(tint)],[t$2],[]
  309. ; %int2big
  310. proc f$6,[v$12],[],[],t$12,[]
  311. ; 65
  312. $if
  313. args [v$12(er)]
  314. args [$zero]
  315. pcdesc f$37,int$ge,2.
  316. pcall f$37
  317. $test
  318. $then
  319. ; 66
  320. args [$zero]
  321. args [v$12(er)]
  322. pcdesc f$38,word$create,2.
  323. pcall f$38
  324. $rtn rr
  325. $else
  326. ; 67
  327. args [$one]
  328. pcdesc f$39,int$minus,1.
  329. pcall f$39
  330. args [rr]
  331. args [v$12(er)]
  332. pcall f$38
  333. $rtn rr
  334. $fi
  335. corp vstream$%int2big,[i]
  336. retsulc vstream
  337. .insrt clusys;omega >