Diff for /gforth/peeprules.vmg between versions 1.15 and 1.22

version 1.15, 2004/01/19 10:11:26 version 1.22, 2010/05/02 16:21:32
Line 1 Line 1
 \ Gforth superinstructions and stack caching replicas  \ Gforth superinstructions and stack caching replicas
   
 \ Copyright (C) 2003 Free Software Foundation, Inc.  \ Copyright (C) 2003,2004,2005,2007 Free Software Foundation, Inc.
   
 \ This file is part of Gforth.  \ This file is part of Gforth.
   
 \ Gforth is free software; you can redistribute it and/or  \ Gforth is free software; you can redistribute it and/or
 \ modify it under the terms of the GNU General Public License  \ modify it under the terms of the GNU General Public License
 \ as published by the Free Software Foundation; either version 2  \ as published by the Free Software Foundation, either version 3
 \ of the License, or (at your option) any later version.  \ of the License, or (at your option) any later version.
   
 \ This program is distributed in the hope that it will be useful,  \ This program is distributed in the hope that it will be useful,
Line 15 Line 15
 \ GNU General Public License for more details.  \ GNU General Public License for more details.
   
 \ You should have received a copy of the GNU General Public License  \ You should have received a copy of the GNU General Public License
 \ along with this program; if not, write to the Free Software  \ along with this program. If not, see http://www.gnu.org/licenses/.
 \ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.  
   
 \ taken from David Gregg's EuroForth 2001 paper; omitted some sequences  \ taken from David Gregg's EuroForth 2001 paper; omitted some sequences
 \ eliminated for gforth-native:  \ eliminated for gforth-native:
Line 53  super23 = useraddr ! Line 52  super23 = useraddr !
 super25 = @ ;s  super25 = @ ;s
 super26 = lit @ +  super26 = lit @ +
 super27 = dup @  super27 = dup @
   \ super28 = lit execute \ currently not supported
   
 \F 0 [if]  \F 0 [if]
   
Line 63  super27 = dup @ Line 63  super27 = dup @
 \E branch-states ?branch              \ 1134432  \E branch-states ?branch              \ 1134432
 \E prim-states lit@                 \ 1051813  \E prim-states lit@                 \ 1051813
 \E prim-states swap                 \ 737988  \E prim-states swap                 \ 737988
 \  \E S0 S2 state-prim swap  \E S0 S2 state-prim swap
 \  \E S1 S2 state-prim swap  \E S1 S2 state-prim swap
 \  \E S2 S3 state-prim swap  \E S2 S3 state-prim swap
 \  \E S3 S2 state-prim swap  \E S3 S2 state-prim swap
 \E prim-states c@                   \ 651406  \E prim-states c@                   \ 651406
 \E prim-states =                    \ 590006  \E prim-states =                    \ 590006
 \E prim-states 0=                   \ 584487  \E prim-states 0=                   \ 584487
 \E prim-states dup                  \ 566855  \E prim-states dup                  \ 566855
 \E S0 S1 state-prim dup  \E S0 S1 state-prim dup
   \E S1 S1 state-prim dup
 \E prim-states +                    \ 566003  \E prim-states +                    \ 566003
 \E prim-states i                    \ 502908  \E prim-states i                    \ 502908
 \E prim-states +!                   \ 448925  \E prim-states +!                   \ 448925
Line 82  super27 = dup @ Line 83  super27 = dup @
 \E prim-states useraddr             \ 303254  \E prim-states useraddr             \ 303254
 \E prim-states over                 \ 283556  \E prim-states over                 \ 283556
 \E S0 S1 state-prim over  \E S0 S1 state-prim over
 \  \E S1 S2 state-prim over  \E S1 S2 state-prim over
 \  \E S2 S1 state-prim over  \E S2 S1 state-prim over
 \  \E S3 S2 state-prim over  \E S3 S2 state-prim over
 \E prim-states negate               \ 257417  \E prim-states negate               \ 257417
 \E prim-states cells                \ 254644  \E prim-states cells                \ 254644
 \E prim-states rot                  \ 220273  \E prim-states rot                  \ 220273
 \  \E S3 S1 state-prim rot  \E S3 S1 state-prim rot
 \  \E S2 S3 state-prim rot  \E S2 S3 state-prim rot
 \  \E S1 S3 state-prim rot  \E S1 S3 state-prim rot
 \  \E S0 S3 state-prim rot  \E S0 S3 state-prim rot
   \E S4 S2 state-prim rot
   \E S5 S3 state-prim rot
 \E prim-states !                    \ 218672  \E prim-states !                    \ 218672
 \E prim-states 2dup                 \ 211315  \E prim-states 2dup                 \ 211315
 \E S0 S1 state-prim 2dup  \E S0 S1 state-prim 2dup
 \  \E S0 S2 state-prim 2dup  \E S0 S2 state-prim 2dup
 \  \E S1 S3 state-prim 2dup  \E S1 S3 state-prim 2dup
 \  \E S2 S2 state-prim 2dup  \E S2 S2 state-prim 2dup
 \  \E S3 S1 state-prim 2dup  \E S3 S1 state-prim 2dup
   \E S4 S4 state-prim 2dup
   \E S4 S2 state-prim 2dup
 \ \E branch-states lit-perform          \ 188331  \ \E branch-states lit-perform          \ 188331
 \E prim-states <>                   \ 179502  \E prim-states <>                   \ 179502
 \E prim-states c!                   \ 179332  \E prim-states c!                   \ 179332
Line 117  super27 = dup @ Line 122  super27 = dup @
 \E prim-states lp+                  \ 87190 \ --  \E prim-states lp+                  \ 87190 \ --
 \E prim-states >=                   \ 80994  \E prim-states >=                   \ 80994
 \E prim-states tuck                 \ 78696  \E prim-states tuck                 \ 78696
 \ \E S2 S2 state-prim tuck  \E S2 S2 state-prim tuck
   \E S3 S3 state-prim tuck
 \E prim-states /string              \ 78595  \E prim-states /string              \ 78595
 \E prim-states char+                \ 77542  \E prim-states char+                \ 77542
 \ \E prim-states ?dup                 \ 76850  \E prim-states ?dup                 \ 76850
 \E prim-states @local0              \ 75322  \E prim-states @local0              \ 75322
 \E prim-states min                  \ 75264  \E prim-states min                  \ 75264
 \ \E prim-states compare              \ 65603  \ \E prim-states compare              \ 65603
Line 133  super27 = dup @ Line 139  super27 = dup @
 \E prim-states nip                  \ 54961  \E prim-states nip                  \ 54961
 \E S1 S1 state-prim nip  \E S1 S1 state-prim nip
 \E S0 S1 state-prim nip  \E S0 S1 state-prim nip
   \E S2 S2 state-prim nip
 \E prim-states within               \ 51075  \E prim-states within               \ 51075
 \E prim-states 1-                   \ 47441  \E prim-states 1-                   \ 47441
 \E branch-states execute              \ 46674  \E branch-states execute              \ 46674
Line 143  super27 = dup @ Line 150  super27 = dup @
 \ \E prim-states pick                 \ 32015  \ \E prim-states pick                 \ 32015
 \E prim-states u>                   \ 29373  \E prim-states u>                   \ 29373
 \E prim-states -rot                 \ 26211  \E prim-states -rot                 \ 26211
 \  \E S3 S2 state-prim -rot  \E S3 S2 state-prim -rot
 \  \E S1 S3 state-prim -rot  \E S1 S3 state-prim -rot
   \E S4 S3 state-prim -rot
   \E S2 S4 state-prim -rot
   \E S3 S5 state-prim -rot
 \E prim-states 2drop                \ 25418  \E prim-states 2drop                \ 25418
 \E S0 S0 state-prim 2drop  \E S0 S0 state-prim 2drop
 \E S1 S0 state-prim 2drop  \E S1 S0 state-prim 2drop
Line 179  super27 = dup @ Line 189  super27 = dup @
 \E branch-states (+do)                \ 5863  \E branch-states (+do)                \ 5863
 \ \E prim-states va-return-double     \ 5517  \ \E prim-states va-return-double     \ 5517
 \E prim-states um*                  \ 5342  \E prim-states um*                  \ 5342
 \E prim-states toupper              \ 3517  \ \E prim-states toupper              \ 3517
 \ \E prim-states f@local1             \ 2907  \ \E prim-states f@local1             \ 2907
 \ \E prim-states rp!                  \ 2859  \ \E prim-states rp!                  \ 2859
 \ \E prim-states ?dup-?branch         \ 2829  \ \E prim-states ?dup-?branch         \ 2829
Line 198  super27 = dup @ Line 208  super27 = dup @
 \E prim-states >                    \ 411  \E prim-states >                    \ 411
 \ \E prim-states (hashlfind)          \ 397  \ \E prim-states (hashlfind)          \ 397
 \E prim-states 2swap                \ 336  \E prim-states 2swap                \ 336
 \  \E S0 S3 state-prim 2swap  \E S0 S3 state-prim 2swap
 \  \E S1 S3 state-prim 2swap  \E S1 S3 state-prim 2swap
   \E S2 S4 state-prim 2swap
   \E S4 S2 state-prim 2swap
 \E prim-states laddr#               \ 335  \E prim-states laddr#               \ 335
 \ \E prim-states faxpy                \ 286  \ \E prim-states faxpy                \ 286
 \ \E prim-states (next)               \ 272  \ \E prim-states (next)               \ 272
Line 208  super27 = dup @ Line 220  super27 = dup @
 \E prim-states invert               \ 170  \E prim-states invert               \ 170
 \E branch-states (-do)                \ 169  \E branch-states (-do)                \ 169
 \E prim-states 2over                \ 165  \E prim-states 2over                \ 165
 \  \E S0 S2 state-prim 2over  \E S0 S2 state-prim 2over
 \  \E S1 S3 state-prim 2over  \E S1 S3 state-prim 2over
   \E S2 S4 state-prim 2over
   \E S3 S5 state-prim 2over
   \E S4 S2 state-prim 2over
   \E S5 S3 state-prim 2over
   \E S6 S4 state-prim 2over
 \E prim-states under+               \ 154  \E prim-states under+               \ 154
 \E prim-states dnegate              \ 128  \E prim-states dnegate              \ 128
 \E prim-states u<>                  \ 128  \E prim-states u<>                  \ 128
Line 234  super27 = dup @ Line 251  super27 = dup @
 \ \E prim-states flush-icache         \ 1  \ \E prim-states flush-icache         \ 1
 \ \E prim-states cmove                \ 1  \ \E prim-states cmove                \ 1
 \ \E prim-states (system)             \ 1  \ \E prim-states (system)             \ 1
   \E S0 S0 state-prim abi-call
   \E S0 S0 state-prim ;abi-code-exec
   
 \E ' noop is output-nextp0  \E ' noop is output-nextp0
 \E ' noop is output-nextp1  \E ' noop is output-nextp1

Removed from v.1.15  
changed lines
  Added in v.1.22


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