1 mes 2,2,2 ; wordsize 2, pointersize 2
3 rom 't.p\000' ; the name of the source file
4 hol 552,-32768,0 ; externals and buf occupy 552 bytes
5 exp $sum ; sum can be called from other modules
6 pro $sum,2 ; procedure sum; 2 bytes local storage
7 lin 8 ; code from source line 8
8 ldl 0 ; load two locals ( a and b )
10 ret 2 ; return the result
11 end 2 ; end of procedure ( still two bytes local storage )
13 rom 1,99,2 ; descriptor of array a[]
14 exp $test ; the compiler exports all level 0 procedures
15 pro $test,226 ; procedure test, 226 bytes local storage
17 rom 4.8F8 ; assemble Floating point 4.8 (8 bytes) in
19 rom 0.5F8 ; same for 0.5
20 mes 3,-226,2,2 ; compiler temporary not referenced indirect
21 mes 3,-24,2,0 ; the same is true for i, j, b and c in test
25 mes 3,-20,8,0 ; and for x and y
27 lin 20 ; maintain source line number
30 lni ; was lin 21 prior to optimization
36 stl -2 ; i := 3 * j + 6
37 lni ; was lin 22 prior to optimization
42 lni ; was lin 23 prior to optimization
50 lni ; was lin 24 prior to optimization
53 lni ; was lin 25 prior to optimization
56 lni ; was lin 26 prior to optimization
70 inl -2 ; increment i and loop
78 lni ; was lin 28 prior to optimization
82 lni ; was lin 29 prior to optimization
89 lni ; was lin 30 prior to optimization
96 asp 4 ; remove parameters from stack
97 lfr 2 ; get function result
102 zle *5 ; while i > 0 do
106 stl -4 ; j := j + r.r1
112 stl -226 ; make copy of address of r
124 lin 34 ; note the absence of the unnecessary jump
125 lae 22 ; address of output structure
127 cal $_wri ; write integer with default width
128 asp 4 ; pop parameters
132 cal $_wsi ; write integer width 6
139 cal $_wrf ; write fixed format real, width 9, precision 3
143 cal $_wrb ; write boolean, default width
148 ret 0 ; return, no result
151 pro $_main,0 ; main program
153 con 2,-1,22 ; description of external files
156 fil .1 ; maintain source file name
157 lae .6 ; description of external files
158 lae 0 ; base of hol area to relocate buffer addresses
159 cal $_ini ; initialize files, etc...
166 lni ; was lin 38 prior to optimization
169 lni ; was lin 39 prior to optimization
170 lae 10 ; address of r
174 cal $_hlt ; cleanup and finish
177 mes 4,40 ; length of source file is 40 lines
178 mes 5 ; reals were used