Diff for /gforth/peeprules.vmg between versions 1.3 and 1.9

version 1.3, 2002/10/12 19:06:37 version 1.9, 2003/10/09 20:25:59
Line 1 Line 1
super2 =  lit @  \ taken from David Gregg's EuroForth 2001 paper; omitted some sequences
super6 =  cells lit  super1 = lit +
super9 =  cells lit +  super2 = lit call
super10 =  cells lit + @  super3 = lit @
super11 =  cells lit + @ lit  super4 = lit @ call
super12 =  cells lit + @ lit @  super5 = @ call
super13 =  cells lit + @ lit @ and  super6 = lit !
super16 =  lit @ +  super7 = lit lit
super18 =  i call  super8 = dup lit
super19 =  dup lit  super9 = ! lit
super20 =  lit @ lit  super10 = lit ! lit
super21 =  cells lit + @ lit @ and lit  super11 = ! ;s
super22 =  cells lit + @ lit @ and lit @  super12 = lit + @
super23 =  cells lit + @ lit @ and lit @ =  super13 = 0= ?branch
super24 =  cells lit + @ lit @ and lit @ = ;s  super14 = dup call
super27 =  over cells  super16 = + @
super28 =  over cells +  super17 = lit @ ?branch
super29 =  over cells + dup  super18 = lit ! ;s
super30 =  over cells + dup @  super19 = lit @ and
super31 =  useraddr @ ;s  super20 = = ?branch
super36 =  dup lit @  super21 = lit lit !
super37 =  @ ;s  super22 = @ ?branch
super38 =  lit @ *  super23 = useraddr !
super39 =  lit @ @  super24 = dup ?branch
super40 =  lit @ @ ;s  super25 = @ ;s
super41 =  + lit  super26 = lit @ +
super42 =  lit @ ?branch  super27 = dup @
super43 =  over +
super44 =  over + dup  \F 0 [if]
super45 =  lit @ call
super47 =  lit @ * ;s  \ \E prim-states ;s                   \ 2950159
super48 =  lit @ lit @  \E prim-states lit                  \ 2802835
super49 =  ! ;s  \ \E prim-states call                 \ 2558373
super51 =  lit call  \E prim-states @                    \ 2244351
super53 =  lit @ + dup  \E branch-states ?branch              \ 1134432
super54 =  lit @ and  \E prim-states lit@                 \ 1051813
super55 =  2drop drop  \E prim-states swap                 \ 737988
super56 =  lit @ cells  \E S0 S2 state-prim swap
super57 =  dup lit @ and  \E S1 S2 state-prim swap
super58 =  2drop drop lit  \E S2 S3 state-prim swap
super59 =  + lit call  \E S3 S2 state-prim swap
super60 =  lit @ cells lit  \E prim-states c@                   \ 651406
super61 =  lit @ cells lit +  \E prim-states =                    \ 590006
super62 =  dup lit @ and dup  \E prim-states 0=                   \ 584487
super63 =  dup lit @ and dup lit  \E prim-states dup                  \ 566855
super64 =  dup lit @ and dup lit @  \E S0 S1 state-prim dup
super65 =  dup lit @ and dup lit @ =  \E prim-states +                    \ 566003
super66 =  dup lit @ and dup lit @ = swap  \E prim-states i                    \ 502908
super67 =  dup lit @ and dup lit @ = swap lit  \E prim-states +!                   \ 448925
super68 =  dup lit @ and dup lit @ = swap lit @  \ \E prim-states branch               \ 409561
super69 =  dup lit @ and dup lit @ = swap lit @ =  \ \E prim-states (loop)               \ 379646
super70 =  dup lit @ and dup lit @ = swap lit @ = or  \ \E prim-states lp!                  \ 326743
super71 =  dup lit @ and dup lit @ = swap lit @ = or ?branch  \E prim-states and                  \ 309427
super72 =  >r over  \E prim-states useraddr             \ 303254
super73 =  >r over +  \E prim-states over                 \ 283556
super74 =  >r over + dup  \E S0 S1 state-prim over
super75 =  >r over + dup cells  \E S1 S2 state-prim over
super76 =  >r over + dup cells lit  \E S2 S1 state-prim over
super77 =  >r over + dup cells lit +  \E S3 S2 state-prim over
super78 =  >r over + dup cells lit + @  \E prim-states negate               \ 257417
super79 =  >r over + dup cells lit + @ r>  \E prim-states cells                \ 254644
super80 =  >r over + dup cells lit + @ r> +  \E prim-states rot                  \ 220273
super81 =  >r over + dup cells lit + @ r> + over  \E S3 S1 state-prim rot
super82 =  >r over + dup cells lit + @ r> + over cells  \E S2 S3 state-prim rot
super83 =  >r over + dup cells lit + @ r> + over cells lit  \E S1 S3 state-prim rot
super84 =  >r over + dup cells lit + @ r> + over cells lit +  \E S0 S3 state-prim rot
super85 =  >r over + dup cells lit + @ r> + over cells lit + @  \E prim-states !                    \ 218672
super86 =  >r over + dup cells lit + @ r> + over cells lit + @ ?branch  \E prim-states 2dup                 \ 211315
super87 =  lit @ =  \E S0 S2 state-prim 2dup
super88 =  2drop drop lit ;s  \E S1 S3 state-prim 2dup
super90 =  cells lit + @ lit @ and ;s  \E S2 S2 state-prim 2dup
super91 =  swap lit  \E S3 S1 state-prim 2dup
super92 =  swap lit @  \ \E branch-states lit-perform          \ 188331
super93 =  lit lit  \E prim-states <>                   \ 179502
super94 =  lit !  \E prim-states c!                   \ 179332
super95 =  dup call  \E prim-states lit+                 \ 179156
super96 =  over + dup cells  \E prim-states drop                 \ 173995
super97 =  over + dup cells lit  \E S0 S0 state-prim drop
super98 =  over + dup cells lit +  \E prim-states lshift               \ 164671
super99 =  over + dup cells lit + @  \E prim-states /mod                 \ 164670
super100 =  lit @ + ;s  \E prim-states >r                   \ 145247
super102 =  + dup  \E prim-states r>                   \ 133792
super103 =  lit -  \ \E branch-states does-exec            \ 120944
super104 =  + dup 1-  \E prim-states cell+                \ 116183
super105 =  + dup 1- call  \E prim-states lp+!#                \ 106697 \ --
super106 =  lit - ;s  \E prim-states -                    \ 106245
super107 =  within lit  \E prim-states unloop               \ 98938 \ --
super108 =  within lit and  \E prim-states lp+                  \ 87190 \ --
super110 =  nip nip  \E prim-states >=                   \ 80994
super111 =  lit @ and lit  \E prim-states tuck                 \ 78696
super112 =  swap lit @ *  \E S2 S2 state-prim tuck
super113 =  swap lit @ * +  \E prim-states /string              \ 78595
super114 =  swap lit @ * + ;s  \E prim-states char+                \ 77542
super115 =  drop ;s  \ \E prim-states ?dup                 \ 76850
super116 =  lit @ lit @ and  \E prim-states @local0              \ 75322
super118 =  lit @ + call  \E prim-states min                  \ 75264
super119 =  lit @ + dup call  \ \E prim-states compare              \ 65603
super120 =  over + dup @  \E branch-states (u+do)               \ 63823
super121 =  cells lit @  \ \E prim-states (read-line)          \ 63823
super122 =  cells lit @ +  \E prim-states 2>r                  \ 62646
super123 =  cells lit @ + ;s  \E prim-states 2r>                  \ 62644
super124 =  lit @ + dup lit  \E prim-states 2r@                  \ 61338
super125 =  drop (loop)  \E prim-states 2@                   \ 61067
super126 =  @ 2dup  \E prim-states nip                  \ 54961
super127 =  @ 2dup <  \E S1 S1 state-prim nip
super128 =  @ 2dup < ?branch  \E S0 S1 state-prim nip
super129 =  lit 2@  \E prim-states within               \ 51075
super132 =  + ;s  \E prim-states 1-                   \ 47441
super133 =  lit @ and lit @  \E branch-states execute              \ 46674
super134 =  lit @ and lit @ =  \E prim-states lp-                  \ 45385
super135 =  lit @ and lit @ = ?branch  \E branch-states perform              \ 38756
super136 =  lit @ = and  \E prim-states xor                  \ 35599
super137 =  2drop ;s  \E prim-states @local#              \ 34586
super139 =  nip nip ;s  \ \E prim-states pick                 \ 32015
super140 =  2@ call  \E prim-states u>                   \ 29373
super141 =  lit 2@ rot  \E prim-states -rot                 \ 26211
super142 =  lit 2@ rot xor  \E S3 S2 state-prim -rot
super143 =  lit 2@ rot xor >r  \E S1 S3 state-prim -rot
super144 =  lit 2@ rot xor >r xor  \E prim-states 2drop                \ 25418
super145 =  lit 2@ rot xor >r xor r>  \E S0 S0 state-prim 2drop
super146 =  lit 2@ rot xor >r xor r> lit  \E S1 S0 state-prim 2drop
super147 =  lit 2@ rot xor >r xor r> lit 2!  \ \E prim-states (tablelfind)         \ 22243
super148 =  lit 2@ rot xor >r xor r> lit 2! ;s  \E prim-states or                   \ 21587
super149 =  lit @ = and +  \E prim-states @local2              \ 20859
super150 =  lit @ = and + ;s  \E branch-states (+loop)              \ 20006
super151 =  + lit @  \E prim-states 1+                   \ 17944
super152 =  lit lit !  \E prim-states rdrop                \ 17902
super153 =  lit @ lit call  \E branch-states (?do)                \ 17348
super154 =  2dup call  \E prim-states max                  \ 16948
super155 =  lit @ = ;s  \E prim-states 2*                   \ 15606
super156 =  lit ! lit  \ \E prim-states filename-match       \ 15003
super158 =  dup lit cells  \ \E prim-states (listlfind)          \ 13074
super159 =  dup lit cells +  \ \E prim-states sp@                  \ 12741
super160 =  dup lit cells + 2@  \ \E prim-states fp@                  \ 12384
super161 =  dup lit cells + 2@ rot  \ \E prim-states um/mod               \ 12288
super162 =  swap call  \E prim-states 2!                   \ 11904
super163 =  lit ! lit !  \ \E prim-states fill                 \ 10781
super164 =  lit @ branch  \ \E prim-states (parse-white)        \ 10624
super165 =  lit @ 1+  \E branch-states (do)                 \ 10516
super166 =  dup cells  \ \E prim-states (hashkey1)           \ 10239
super167 =  dup cells lit  \E prim-states u<                   \ 9602
super168 =  dup cells lit +  \ \E prim-states write-file           \ 8973
super169 =  dup cells lit + @  \E prim-states count                \ 8873
super170 =  lit @ 1+ lit  \ \E prim-states rp@                  \ 8410
super171 =  dup lit !  \E prim-states 0<                   \ 8380
super172 =  dup 2@  \E prim-states <                    \ 7741
super173 =  + lit @ =  \E prim-states @local1              \ 7458
super174 =  + lit @ = ?branch  \ \E prim-states move                 \ 7050
super175 =  lit @ + dup lit call  \E prim-states u>=                  \ 6138
super176 =  lit @ lit @ and 0=  \E branch-states (+do)                \ 5863
super177 =  lit @ lit @ and 0= ?branch  \ \E prim-states va-return-double     \ 5517
super178 =  drop lit  \E prim-states um*                  \ 5342
super179 =  drop lit @  \E prim-states toupper              \ 3517
super181 =  cells swap  \ \E prim-states f@local1             \ 2907
super182 =  cells swap cells  \ \E prim-states rp!                  \ 2859
super183 =  cells swap cells lit  \ \E prim-states ?dup-?branch         \ 2829
super184 =  cells swap cells lit +  \E prim-states d+                   \ 2671
super185 =  nip nip lit  \ \E prim-states ftuck                \ 2636
super186 =  nip nip lit @  \ \E prim-states read-file            \ 2623
super187 =  nip nip lit @ and  \ \E prim-states ms                   \ 2454
super188 =  nip nip lit @ and dup  \ \E prim-states (s+loop)             \ 2429
super189 =  nip nip lit @ and dup lit  \ \E prim-states allocate             \ 1869
super190 =  nip nip lit @ and dup lit @  \E prim-states *                    \ 1520
super191 =  nip nip lit @ and dup lit @ =  \E prim-states 0<>                  \ 925
super192 =  nip nip lit @ and dup lit @ = swap  \ \E prim-states noop                 \ 715
super193 =  nip nip lit @ and dup lit @ = swap lit  \E prim-states aligned              \ 714
super194 =  nip nip lit @ and dup lit @ = swap lit @  \E prim-states u<=                  \ 684
super195 =  nip nip lit @ and dup lit @ = swap lit @ =  \E prim-states i'                   \ 684
super196 =  nip nip lit @ and dup lit @ = swap lit @ = or  \E prim-states >                    \ 411
super197 =  nip nip lit @ and dup lit @ = swap lit @ = or ;s  \ \E prim-states (hashlfind)          \ 397
super198 =  over call  \E prim-states 2swap                \ 336
super199 =  lit @ + dup lit +  \E S0 S3 state-prim 2swap
super200 =  lit @ lit @ lit  \E S1 S3 state-prim 2swap
super201 =  cells lit + @ 0=  \E prim-states laddr#               \ 335
super202 =  cells lit + @ 0= ;s  \ \E prim-states faxpy                \ 286
super203 =  lit @ and lit *  \ \E prim-states (next)               \ 272
super204 =  lit @ and lit * +  \ \E prim-states (-loop)-lp+!#        \ 248
super205 =  lit @ and lit * + lit  \E prim-states <=                   \ 199
super206 =  lit @ and lit * + lit call  \E prim-states invert               \ 170
super207 =  lit @ dup  \E branch-states (-do)                \ 169
super208 =  lit @ dup lit  \E prim-states 2over                \ 165
super209 =  0= ?branch  \E S0 S2 state-prim 2over
super210 =  or over  \E S1 S3 state-prim 2over
super211 =  or over lit  \E prim-states under+               \ 154
super212 =  lit @ lit @ lit !  \E prim-states dnegate              \ 128
super213 =  lit @ lit @ lit ! lit  \E prim-states u<>                  \ 128
super214 =  lit @ lit @ lit ! lit !  \E prim-states 0>                   \ 122
super215 =  lit @ lit @ lit ! lit ! lit  \ \E prim-states (loop)-lp+!#         \ 118
super216 =  lit @ lit @ lit ! lit ! lit @  \E prim-states j                    \ 117
super217 =  lit @ lit @ lit ! lit ! lit @ 0=  \E prim-states float+               \ 78
super218 =  lit @ lit @ lit ! lit ! lit @ 0= lit  \ \E prim-states (for)                \ 68
super219 =  lit @ lit @ lit ! lit ! lit @ 0= lit !  \E prim-states 2rdrop               \ 60 \ --
super220 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit  \ \E prim-states f!                   \ 14
super221 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @  \E prim-states >l                   \ 14
super222 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate  \ \E prim-states close-file           \ 5
super223 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit  \ \E prim-states call-c               \ 4
super224 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit !  \ \E prim-states reposition-file      \ 3
super225 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit ! ;s  \E prim-states /                    \ 3
super226 =  lit @ 1+ lit !  \ \E prim-states resize-file          \ 2
super227 =  dup lit ! cells  \ \E prim-states free                 \ 2
super228 =  dup lit ! cells lit  \E prim-states 2/                   \ 2
super229 =  dup lit ! cells lit +  \ \E prim-states up!                  \ 1
super230 =  dup lit ! cells lit + @  \ \E prim-states stdin                \ 1
super231 =  dup lit ! cells lit + @ dup  \ \E prim-states key?-file            \ 1
super232 =  dup lit ! cells lit + @ dup lit  \ \E prim-states flush-icache         \ 1
super233 =  dup lit ! cells lit + @ dup lit !  \ \E prim-states cmove                \ 1
super234 =  dup lit ! cells lit + @ dup lit ! ;s  \ \E prim-states (system)             \ 1
super235 =  lit @ and cells
super236 =  lit @ and cells lit  \E ' noop is output-nextp0
super237 =  lit @ and cells lit +  \E ' noop is output-nextp1
super238 =  over lit
super239 =  dup 2@ lit  \E gen-transitions noop
super240 =  dup 2@ lit 2@
super241 =  dup 2@ lit 2@ d=  \F [ENDIF]
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

 Removed from v.1.3 changed lines Added in v.1.9

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>