### Annotation of gforth/peeprules.vmg, revision 1.13

```1.8       anton       1: \ taken from David Gregg's EuroForth 2001 paper; omitted some sequences
1.12      anton       2: \ eliminated for gforth-native:
3: \ 1) sequences containing call
4: \ 2) sequences with immediate arguments not in the first position
1.7       anton       5: super1 = lit +
1.12      anton       6: \ super2 = lit call
1.7       anton       7: super3 = lit @
1.12      anton       8: \ super4 = lit @ call
9: \ super5 = @ call
1.8       anton      10: super6 = lit !
1.12      anton      11: \ super7 = lit lit
12: \ super8 = dup lit
13: \ super9 = ! lit
14: \ super10 = lit ! lit
1.8       anton      15: super11 = ! ;s
16: super12 = lit + @
1.12      anton      17: \ super13 = 0= ?branch
18: \ super14 = dup call
1.8       anton      19: super15 = useraddr @
20: super16 = + @
1.12      anton      21: \ super17 = lit @ ?branch
1.8       anton      22: super18 = lit ! ;s
23: super19 = lit @ and
1.13    ! anton      24: \ super20 = = ?branch
1.12      anton      25: \ super21 = lit lit !
26: \ super22 = @ ?branch
1.8       anton      27: super23 = useraddr !
1.12      anton      28: \ super24 = dup ?branch
1.8       anton      29: super25 = @ ;s
30: super26 = lit @ +
31: super27 = dup @
1.9       anton      32:
1.11      anton      33: \F 0 [if]
1.9       anton      34:
1.10      anton      35: \  \ \E prim-states ;s                   \ 2950159
36: \  \E prim-states lit                  \ 2802835
37: \  \ \E prim-states call                 \ 2558373
38: \  \E prim-states @                    \ 2244351
39: \  \E branch-states ?branch              \ 1134432
40: \  \E prim-states lit@                 \ 1051813
41: \  \E prim-states swap                 \ 737988
1.11      anton      42: \  \  \E S0 S2 state-prim swap
43: \  \  \E S1 S2 state-prim swap
44: \  \  \E S2 S3 state-prim swap
45: \  \  \E S3 S2 state-prim swap
1.10      anton      46: \  \E prim-states c@                   \ 651406
47: \  \E prim-states =                    \ 590006
48: \  \E prim-states 0=                   \ 584487
49: \  \E prim-states dup                  \ 566855
50: \  \E S0 S1 state-prim dup
51: \  \E prim-states +                    \ 566003
52: \  \E prim-states i                    \ 502908
53: \  \E prim-states +!                   \ 448925
54: \  \ \E prim-states branch               \ 409561
55: \  \ \E prim-states (loop)               \ 379646
56: \  \ \E prim-states lp!                  \ 326743
57: \  \E prim-states and                  \ 309427
58: \  \E prim-states useraddr             \ 303254
59: \  \E prim-states over                 \ 283556
60: \  \E S0 S1 state-prim over
1.11      anton      61: \  \  \E S1 S2 state-prim over
62: \  \  \E S2 S1 state-prim over
63: \  \  \E S3 S2 state-prim over
1.10      anton      64: \  \E prim-states negate               \ 257417
65: \  \E prim-states cells                \ 254644
66: \  \E prim-states rot                  \ 220273
1.11      anton      67: \  \  \E S3 S1 state-prim rot
68: \  \  \E S2 S3 state-prim rot
69: \  \  \E S1 S3 state-prim rot
70: \  \  \E S0 S3 state-prim rot
1.10      anton      71: \  \E prim-states !                    \ 218672
72: \  \E prim-states 2dup                 \ 211315
1.11      anton      73: \  \E S0 S1 state-prim 2dup
74: \  \  \E S0 S2 state-prim 2dup
75: \  \  \E S1 S3 state-prim 2dup
76: \  \  \E S2 S2 state-prim 2dup
77: \  \  \E S3 S1 state-prim 2dup
1.10      anton      78: \  \ \E branch-states lit-perform          \ 188331
79: \  \E prim-states <>                   \ 179502
80: \  \E prim-states c!                   \ 179332
81: \  \E prim-states lit+                 \ 179156
82: \  \E prim-states drop                 \ 173995
83: \  \E S0 S0 state-prim drop
84: \  \E prim-states lshift               \ 164671
85: \  \E prim-states /mod                 \ 164670
86: \  \E prim-states >r                   \ 145247
87: \  \E prim-states r>                   \ 133792
88: \  \ \E branch-states does-exec            \ 120944
89: \  \E prim-states cell+                \ 116183
90: \  \E prim-states lp+!#                \ 106697 \ --
91: \  \E prim-states -                    \ 106245
92: \  \E prim-states unloop               \ 98938 \ --
93: \  \E prim-states lp+                  \ 87190 \ --
94: \  \E prim-states >=                   \ 80994
95: \  \E prim-states tuck                 \ 78696
1.11      anton      96: \  \ \E S2 S2 state-prim tuck
1.10      anton      97: \  \E prim-states /string              \ 78595
98: \  \E prim-states char+                \ 77542
99: \  \ \E prim-states ?dup                 \ 76850
100: \  \E prim-states @local0              \ 75322
101: \  \E prim-states min                  \ 75264
102: \  \ \E prim-states compare              \ 65603
103: \  \E branch-states (u+do)               \ 63823
104: \  \ \E prim-states (read-line)          \ 63823
105: \  \E prim-states 2>r                  \ 62646
106: \  \E prim-states 2r>                  \ 62644
107: \  \E prim-states 2r@                  \ 61338
108: \  \E prim-states 2@                   \ 61067
109: \  \E prim-states nip                  \ 54961
110: \  \E S1 S1 state-prim nip
111: \  \E S0 S1 state-prim nip
112: \  \E prim-states within               \ 51075
113: \  \E prim-states 1-                   \ 47441
114: \  \E branch-states execute              \ 46674
115: \  \E prim-states lp-                  \ 45385
116: \  \E branch-states perform              \ 38756
117: \  \E prim-states xor                  \ 35599
118: \  \E prim-states @local#              \ 34586
119: \  \ \E prim-states pick                 \ 32015
120: \  \E prim-states u>                   \ 29373
121: \  \E prim-states -rot                 \ 26211
1.11      anton     122: \  \  \E S3 S2 state-prim -rot
123: \  \  \E S1 S3 state-prim -rot
1.10      anton     124: \  \E prim-states 2drop                \ 25418
125: \  \E S0 S0 state-prim 2drop
126: \  \E S1 S0 state-prim 2drop
127: \  \ \E prim-states (tablelfind)         \ 22243
128: \  \E prim-states or                   \ 21587
129: \  \E prim-states @local2              \ 20859
130: \  \E branch-states (+loop)              \ 20006
131: \  \E prim-states 1+                   \ 17944
132: \  \E prim-states rdrop                \ 17902
133: \  \E branch-states (?do)                \ 17348
134: \  \E prim-states max                  \ 16948
135: \  \E prim-states 2*                   \ 15606
136: \  \ \E prim-states filename-match       \ 15003
137: \  \ \E prim-states (listlfind)          \ 13074
138: \  \ \E prim-states sp@                  \ 12741
139: \  \ \E prim-states fp@                  \ 12384
140: \  \ \E prim-states um/mod               \ 12288
141: \  \E prim-states 2!                   \ 11904
142: \  \ \E prim-states fill                 \ 10781
143: \  \ \E prim-states (parse-white)        \ 10624
144: \  \E branch-states (do)                 \ 10516
145: \  \ \E prim-states (hashkey1)           \ 10239
146: \  \E prim-states u<                   \ 9602
147: \  \ \E prim-states write-file           \ 8973
148: \  \E prim-states count                \ 8873
149: \  \ \E prim-states rp@                  \ 8410
150: \  \E prim-states 0<                   \ 8380
151: \  \E prim-states <                    \ 7741
152: \  \E prim-states @local1              \ 7458
153: \  \ \E prim-states move                 \ 7050
154: \  \E prim-states u>=                  \ 6138
155: \  \E branch-states (+do)                \ 5863
156: \  \ \E prim-states va-return-double     \ 5517
157: \  \E prim-states um*                  \ 5342
158: \  \E prim-states toupper              \ 3517
159: \  \ \E prim-states f@local1             \ 2907
160: \  \ \E prim-states rp!                  \ 2859
161: \  \ \E prim-states ?dup-?branch         \ 2829
162: \  \E prim-states d+                   \ 2671
163: \  \ \E prim-states ftuck                \ 2636
164: \  \ \E prim-states read-file            \ 2623
165: \  \ \E prim-states ms                   \ 2454
166: \  \ \E prim-states (s+loop)             \ 2429
167: \  \ \E prim-states allocate             \ 1869
168: \  \E prim-states *                    \ 1520
169: \  \E prim-states 0<>                  \ 925
170: \  \ \E prim-states noop                 \ 715
171: \  \E prim-states aligned              \ 714
172: \  \E prim-states u<=                  \ 684
173: \  \E prim-states i'                   \ 684
174: \  \E prim-states >                    \ 411
175: \  \ \E prim-states (hashlfind)          \ 397
176: \  \E prim-states 2swap                \ 336
1.11      anton     177: \  \  \E S0 S3 state-prim 2swap
178: \  \  \E S1 S3 state-prim 2swap
1.10      anton     179: \  \E prim-states laddr#               \ 335
180: \  \ \E prim-states faxpy                \ 286
181: \  \ \E prim-states (next)               \ 272
182: \  \ \E prim-states (-loop)-lp+!#        \ 248
183: \  \E prim-states <=                   \ 199
184: \  \E prim-states invert               \ 170
185: \  \E branch-states (-do)                \ 169
186: \  \E prim-states 2over                \ 165
1.11      anton     187: \  \  \E S0 S2 state-prim 2over
188: \  \  \E S1 S3 state-prim 2over
1.10      anton     189: \  \E prim-states under+               \ 154
190: \  \E prim-states dnegate              \ 128
191: \  \E prim-states u<>                  \ 128
192: \  \E prim-states 0>                   \ 122
193: \  \ \E prim-states (loop)-lp+!#         \ 118
194: \  \E prim-states j                    \ 117
195: \  \E prim-states float+               \ 78
196: \  \ \E prim-states (for)                \ 68
197: \  \E prim-states 2rdrop               \ 60 \ --
198: \  \ \E prim-states f!                   \ 14
199: \  \E prim-states >l                   \ 14
200: \  \ \E prim-states close-file           \ 5
201: \  \ \E prim-states call-c               \ 4
202: \  \ \E prim-states reposition-file      \ 3
203: \  \E prim-states /                    \ 3
204: \  \ \E prim-states resize-file          \ 2
205: \  \ \E prim-states free                 \ 2
206: \  \E prim-states 2/                   \ 2
207: \  \ \E prim-states up!                  \ 1
208: \  \ \E prim-states stdin                \ 1
209: \  \ \E prim-states key?-file            \ 1
210: \  \ \E prim-states flush-icache         \ 1
211: \  \ \E prim-states cmove                \ 1
212: \  \ \E prim-states (system)             \ 1
1.9       anton     213:
1.10      anton     214: \  \E ' noop is output-nextp0
215: \  \E ' noop is output-nextp1
1.9       anton     216:
1.10      anton     217: \  \E gen-transitions noop
1.9       anton     218:
1.11      anton     219: \F [ENDIF]
```

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