--- gforth/peeprules.vmg 2002/02/04 21:25:17 1.2 +++ gforth/peeprules.vmg 2002/10/12 19:06:37 1.3 @@ -1 +1,400 @@ - +super2 = lit @ +super6 = cells lit +super9 = cells lit + +super10 = cells lit + @ +super11 = cells lit + @ lit +super12 = cells lit + @ lit @ +super13 = cells lit + @ lit @ and +super16 = lit @ + +super18 = i call +super19 = dup lit +super20 = lit @ lit +super21 = cells lit + @ lit @ and lit +super22 = cells lit + @ lit @ and lit @ +super23 = cells lit + @ lit @ and lit @ = +super24 = cells lit + @ lit @ and lit @ = ;s +super26 = useraddr @ +super27 = over cells +super28 = over cells + +super29 = over cells + dup +super30 = over cells + dup @ +super31 = useraddr @ ;s +super36 = dup lit @ +super37 = @ ;s +super38 = lit @ * +super39 = lit @ @ +super40 = lit @ @ ;s +super41 = + lit +super42 = lit @ ?branch +super43 = over + +super44 = over + dup +super45 = lit @ call +super47 = lit @ * ;s +super48 = lit @ lit @ +super49 = ! ;s +super51 = lit call +super53 = lit @ + dup +super54 = lit @ and +super55 = 2drop drop +super56 = lit @ cells +super57 = dup lit @ and +super58 = 2drop drop lit +super59 = + lit call +super60 = lit @ cells lit +super61 = lit @ cells lit + +super62 = dup lit @ and dup +super63 = dup lit @ and dup lit +super64 = dup lit @ and dup lit @ +super65 = dup lit @ and dup lit @ = +super66 = dup lit @ and dup lit @ = swap +super67 = dup lit @ and dup lit @ = swap lit +super68 = dup lit @ and dup lit @ = swap lit @ +super69 = dup lit @ and dup lit @ = swap lit @ = +super70 = dup lit @ and dup lit @ = swap lit @ = or +super71 = dup lit @ and dup lit @ = swap lit @ = or ?branch +super72 = >r over +super73 = >r over + +super74 = >r over + dup +super75 = >r over + dup cells +super76 = >r over + dup cells lit +super77 = >r over + dup cells lit + +super78 = >r over + dup cells lit + @ +super79 = >r over + dup cells lit + @ r> +super80 = >r over + dup cells lit + @ r> + +super81 = >r over + dup cells lit + @ r> + over +super82 = >r over + dup cells lit + @ r> + over cells +super83 = >r over + dup cells lit + @ r> + over cells lit +super84 = >r over + dup cells lit + @ r> + over cells lit + +super85 = >r over + dup cells lit + @ r> + over cells lit + @ +super86 = >r over + dup cells lit + @ r> + over cells lit + @ ?branch +super87 = lit @ = +super88 = 2drop drop lit ;s +super90 = cells lit + @ lit @ and ;s +super91 = swap lit +super92 = swap lit @ +super93 = lit lit +super94 = lit ! +super95 = dup call +super96 = over + dup cells +super97 = over + dup cells lit +super98 = over + dup cells lit + +super99 = over + dup cells lit + @ +super100 = lit @ + ;s +super102 = + dup +super103 = lit - +super104 = + dup 1- +super105 = + dup 1- call +super106 = lit - ;s +super107 = within lit +super108 = within lit and +super110 = nip nip +super111 = lit @ and lit +super112 = swap lit @ * +super113 = swap lit @ * + +super114 = swap lit @ * + ;s +super115 = drop ;s +super116 = lit @ lit @ and +super118 = lit @ + call +super119 = lit @ + dup call +super120 = over + dup @ +super121 = cells lit @ +super122 = cells lit @ + +super123 = cells lit @ + ;s +super124 = lit @ + dup lit +super125 = drop (loop) +super126 = @ 2dup +super127 = @ 2dup < +super128 = @ 2dup < ?branch +super129 = lit 2@ +super132 = + ;s +super133 = lit @ and lit @ +super134 = lit @ and lit @ = +super135 = lit @ and lit @ = ?branch +super136 = lit @ = and +super137 = 2drop ;s +super139 = nip nip ;s +super140 = 2@ call +super141 = lit 2@ rot +super142 = lit 2@ rot xor +super143 = lit 2@ rot xor >r +super144 = lit 2@ rot xor >r xor +super145 = lit 2@ rot xor >r xor r> +super146 = lit 2@ rot xor >r xor r> lit +super147 = lit 2@ rot xor >r xor r> lit 2! +super148 = lit 2@ rot xor >r xor r> lit 2! ;s +super149 = lit @ = and + +super150 = lit @ = and + ;s +super151 = + lit @ +super152 = lit lit ! +super153 = lit @ lit call +super154 = 2dup call +super155 = lit @ = ;s +super156 = lit ! lit +super158 = dup lit cells +super159 = dup lit cells + +super160 = dup lit cells + 2@ +super161 = dup lit cells + 2@ rot +super162 = swap call +super163 = lit ! lit ! +super164 = lit @ branch +super165 = lit @ 1+ +super166 = dup cells +super167 = dup cells lit +super168 = dup cells lit + +super169 = dup cells lit + @ +super170 = lit @ 1+ lit +super171 = dup lit ! +super172 = dup 2@ +super173 = + lit @ = +super174 = + lit @ = ?branch +super175 = lit @ + dup lit call +super176 = lit @ lit @ and 0= +super177 = lit @ lit @ and 0= ?branch +super178 = drop lit +super179 = drop lit @ +super181 = cells swap +super182 = cells swap cells +super183 = cells swap cells lit +super184 = cells swap cells lit + +super185 = nip nip lit +super186 = nip nip lit @ +super187 = nip nip lit @ and +super188 = nip nip lit @ and dup +super189 = nip nip lit @ and dup lit +super190 = nip nip lit @ and dup lit @ +super191 = nip nip lit @ and dup lit @ = +super192 = nip nip lit @ and dup lit @ = swap +super193 = nip nip lit @ and dup lit @ = swap lit +super194 = nip nip lit @ and dup lit @ = swap lit @ +super195 = nip nip lit @ and dup lit @ = swap lit @ = +super196 = nip nip lit @ and dup lit @ = swap lit @ = or +super197 = nip nip lit @ and dup lit @ = swap lit @ = or ;s +super198 = over call +super199 = lit @ + dup lit + +super200 = lit @ lit @ lit +super201 = cells lit + @ 0= +super202 = cells lit + @ 0= ;s +super203 = lit @ and lit * +super204 = lit @ and lit * + +super205 = lit @ and lit * + lit +super206 = lit @ and lit * + lit call +super207 = lit @ dup +super208 = lit @ dup lit +super209 = 0= ?branch +super210 = or over +super211 = or over lit +super212 = lit @ lit @ lit ! +super213 = lit @ lit @ lit ! lit +super214 = lit @ lit @ lit ! lit ! +super215 = lit @ lit @ lit ! lit ! lit +super216 = lit @ lit @ lit ! lit ! lit @ +super217 = lit @ lit @ lit ! lit ! lit @ 0= +super218 = lit @ lit @ lit ! lit ! lit @ 0= lit +super219 = lit @ lit @ lit ! lit ! lit @ 0= lit ! +super220 = lit @ lit @ lit ! lit ! lit @ 0= lit ! lit +super221 = lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ +super222 = lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate +super223 = lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit +super224 = lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit ! +super225 = lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit ! ;s +super226 = lit @ 1+ lit ! +super227 = dup lit ! cells +super228 = dup lit ! cells lit +super229 = dup lit ! cells lit + +super230 = dup lit ! cells lit + @ +super231 = dup lit ! cells lit + @ dup +super232 = dup lit ! cells lit + @ dup lit +super233 = dup lit ! cells lit + @ dup lit ! +super234 = dup lit ! cells lit + @ dup lit ! ;s +super235 = lit @ and cells +super236 = lit @ and cells lit +super237 = lit @ and cells lit + +super238 = over lit +super239 = dup 2@ lit +super240 = dup 2@ lit 2@ +super241 = dup 2@ lit 2@ d= +super242 = lit @ and dup +super243 = lit @ and dup lit +super244 = dup lit @ call +super245 = lit /mod +super246 = lit /mod rot +super247 = lit /mod rot lit +super248 = lit /mod rot lit /mod +super249 = lit /mod rot lit /mod swap +super250 = lit /mod rot lit /mod swap >r +super251 = lit /mod rot lit /mod swap >r - +super252 = lit /mod rot lit /mod swap >r - swap +super253 = lit /mod rot lit /mod swap >r - swap r> +super254 = lit /mod rot lit /mod swap >r - swap r> - +super255 = lit /mod rot lit /mod swap >r - swap r> - swap +super256 = lit /mod rot lit /mod swap >r - swap r> - swap ;s +super257 = lit and +super258 = dup lit @ = +super260 = dup lit @ = over +super261 = dup lit @ = over lit +super262 = dup lit @ = over lit @ +super263 = dup lit @ = over lit @ = +super264 = dup lit @ = over lit @ = or +super265 = lit @ and dup lit call +super267 = abs swap +super268 = abs swap abs +super269 = abs swap abs = +super270 = abs swap abs = ;s +super271 = lit @ + lit +super272 = dup lit cells + 2@ rot @ +super273 = dup lit cells + 2@ rot @ ;s +super274 = lit ! call +super275 = cells lit + ! +super276 = cells lit + ! ;s +super277 = 0= swap +super278 = 0= swap 0= +super279 = 0= swap 0= xor +super280 = 0= swap 0= xor ;s +super281 = lit lit call +super282 = lit lit ! call +super284 = lit @ + dup cells +super285 = lit @ + dup cells lit +super286 = lit @ + dup cells lit + +super287 = lit @ + dup cells lit + @ +super288 = dup lit cells + 2@ rot 2@ +super289 = dup lit cells + 2@ rot 2@ ;s +super290 = dup 2@ lit 2@ d= ?branch +super291 = dup cells lit + @ call +super292 = lit @ swap +super293 = 2drop drop lit @ +super294 = lit @ i +super295 = lit @ dup lit @ +super296 = lit @ i call +super297 = lit @ = ?branch +super298 = lit @ * lit +super299 = lit @ * lit @ +super300 = lit @ lit @ 2>r +super301 = or ;s +super302 = lit lit ! lit +super303 = lit @ + dup lit + 2@ +super304 = lit @ + dup lit + 2@ rot +super305 = lit @ + dup lit + 2@ rot lit +super306 = lit @ + dup lit + 2@ rot lit + +super307 = lit @ + dup lit + 2@ rot lit + @ +super308 = lit @ + dup lit + 2@ rot lit + @ ;s +super309 = lit @ lit @ and cells +super310 = lit @ lit @ and cells lit +super311 = lit @ lit @ and cells lit + +super312 = lit @ lit @ * +super313 = lit @ lit @ * lit +super314 = lit @ lit @ * lit + +super315 = lit @ lit @ * lit + ;s +super316 = lit ! lit ! call +super317 = lit @ 1+ lit ! ;s +super318 = i cells +super319 = i cells lit +super320 = i cells lit + +super321 = i cells lit + @ +super322 = i cells lit + @ dup +super323 = i cells lit + @ dup lit +super324 = lit @ lit lit +super325 = lit @ lit lit @ +super326 = lit @ lit lit @ * +super327 = lit fill +super328 = lit fill ;s +super329 = lit @ 0= +super330 = lit @ 0= ?branch +super331 = i cells lit + @ dup lit @ +super332 = lit @ 1- +super333 = lit @ 1- lit +super334 = lit @ 1- lit ! +super335 = lit @ 1- lit ! ;s +super336 = lit @ + lit + +super337 = lit @ + lit + @ +super338 = lit @ + lit + @ ;s +super339 = lit @ lit * +super340 = lit @ lit * lit +super341 = i cells lit + @ dup lit @ = +super342 = i cells lit + @ dup lit @ = ?branch +super343 = lit @ lit lit @ * call +super344 = lit @ + dup lit + @ +super345 = lit @ + dup lit + @ swap +super346 = lit @ + dup lit + @ swap lit +super347 = lit @ + dup lit + @ swap lit + +super348 = lit @ + dup lit + @ swap lit + @ +super349 = lit @ + dup lit + @ swap lit + @ ;s +super350 = lit and + +super352 = lit @ lit * lit @ +super353 = lit @ lit * lit @ * +super354 = lit @ lit * lit @ * lit +super355 = lit @ lit * lit @ * lit + +super356 = lit @ lit * lit @ * lit + ;s +super357 = tuck ! +super358 = tuck ! lit +super359 = tuck ! lit cells +super360 = tuck ! lit cells + +super361 = tuck ! lit cells + 2! +super362 = tuck ! lit cells + 2! ;s +super363 = swap lit @ + +super364 = swap lit @ + swap +super365 = swap lit @ + swap 2@ +super366 = swap lit @ + swap 2@ d0= +super367 = swap lit @ + swap 2@ d0= ?branch +super368 = lit lit @ +super369 = lit @ * lit @ lit +super370 = lit @ * lit @ lit and +super371 = lit @ * lit @ lit and lit +super372 = lit @ * lit @ lit and lit @ +super373 = lit @ * lit @ lit and lit @ + +super374 = lit @ * lit @ lit and lit @ + + +super375 = lit @ * lit @ lit and lit @ + + ;s +super376 = lit and ;s +super377 = dup lit call +super378 = over lit @ +super379 = dup 0< +super380 = >r call +super381 = lit * +super382 = lit * + +super383 = or over lit + +super384 = or over lit + call +super385 = + call +super387 = or swap +super388 = or swap lit +super389 = r> 2r> +super390 = lit @ dup lit @ * +super391 = lit @ dup lit @ * + +super392 = lit @ dup lit @ * + lit +super393 = lit @ dup lit @ * + lit @ +super394 = lit @ dup lit @ * + lit @ * +super395 = lit @ dup lit @ * + lit @ * lit +super396 = lit @ dup lit @ * + lit @ * lit + +super397 = lit @ dup lit @ * + lit @ * lit + ;s +super398 = over + dup lit +super399 = over + dup lit @ +super400 = over + dup lit @ = +super401 = over + dup lit @ = over +super402 = over + dup lit @ = over cells +super403 = over + dup lit @ = over cells lit +super404 = over + dup lit @ = over cells lit + +super405 = over + dup lit @ = over cells lit + @ +super406 = over + dup lit @ = over cells lit + @ or +super407 = over + dup lit @ = over cells lit + @ or ?branch +super408 = lit + +super409 = + lit @ lit +super410 = lit @ + @ +super411 = lit @ + @ ;s +super412 = lit @ lit @ and ?branch +super413 = lit ! lit lit +super414 = lit ! lit lit ! +super415 = swap lit @ and +super416 = nip swap +super417 = nip swap negate +super418 = nip swap negate call +super419 = swap lit @ and ?branch +super420 = lit lit ! lit @ +super421 = - lit +super422 = - lit cells +super423 = - lit cells - +super424 = - lit cells - call +super425 = lit ! lit lit ! ;s +super426 = lit @ dup lit cells +super427 = lit @ dup lit cells - +super428 = lit @ dup lit cells - @ +super429 = lit @ dup lit cells - @ lit +super430 = lit @ dup lit cells - @ lit ! +super431 = lit @ dup lit cells - @ lit ! dup