File:  [gforth] / gforth / peeprules.vmg
Revision 1.3: download - view: text, annotated - select for diffs
Sat Oct 12 19:06:37 2002 UTC (17 years, 1 month ago) by anton
Branches: MAIN
CVS tags: HEAD
bugfix (use of inst-pointer-update left stack items)
bugfix (now no debugging output at superinstruction end)
refactored output-c-tail...

    1: super2 =  lit @
    2: super6 =  cells lit
    3: super9 =  cells lit +
    4: super10 =  cells lit + @
    5: super11 =  cells lit + @ lit
    6: super12 =  cells lit + @ lit @
    7: super13 =  cells lit + @ lit @ and
    8: super16 =  lit @ +
    9: super18 =  i call
   10: super19 =  dup lit
   11: super20 =  lit @ lit
   12: super21 =  cells lit + @ lit @ and lit
   13: super22 =  cells lit + @ lit @ and lit @
   14: super23 =  cells lit + @ lit @ and lit @ =
   15: super24 =  cells lit + @ lit @ and lit @ = ;s
   16: super26 =  useraddr @
   17: super27 =  over cells
   18: super28 =  over cells +
   19: super29 =  over cells + dup
   20: super30 =  over cells + dup @
   21: super31 =  useraddr @ ;s
   22: super36 =  dup lit @
   23: super37 =  @ ;s
   24: super38 =  lit @ *
   25: super39 =  lit @ @
   26: super40 =  lit @ @ ;s
   27: super41 =  + lit
   28: super42 =  lit @ ?branch
   29: super43 =  over +
   30: super44 =  over + dup
   31: super45 =  lit @ call
   32: super47 =  lit @ * ;s
   33: super48 =  lit @ lit @
   34: super49 =  ! ;s
   35: super51 =  lit call
   36: super53 =  lit @ + dup
   37: super54 =  lit @ and
   38: super55 =  2drop drop
   39: super56 =  lit @ cells
   40: super57 =  dup lit @ and
   41: super58 =  2drop drop lit
   42: super59 =  + lit call
   43: super60 =  lit @ cells lit
   44: super61 =  lit @ cells lit +
   45: super62 =  dup lit @ and dup
   46: super63 =  dup lit @ and dup lit
   47: super64 =  dup lit @ and dup lit @
   48: super65 =  dup lit @ and dup lit @ =
   49: super66 =  dup lit @ and dup lit @ = swap
   50: super67 =  dup lit @ and dup lit @ = swap lit
   51: super68 =  dup lit @ and dup lit @ = swap lit @
   52: super69 =  dup lit @ and dup lit @ = swap lit @ =
   53: super70 =  dup lit @ and dup lit @ = swap lit @ = or
   54: super71 =  dup lit @ and dup lit @ = swap lit @ = or ?branch
   55: super72 =  >r over
   56: super73 =  >r over +
   57: super74 =  >r over + dup
   58: super75 =  >r over + dup cells
   59: super76 =  >r over + dup cells lit
   60: super77 =  >r over + dup cells lit +
   61: super78 =  >r over + dup cells lit + @
   62: super79 =  >r over + dup cells lit + @ r>
   63: super80 =  >r over + dup cells lit + @ r> +
   64: super81 =  >r over + dup cells lit + @ r> + over
   65: super82 =  >r over + dup cells lit + @ r> + over cells
   66: super83 =  >r over + dup cells lit + @ r> + over cells lit
   67: super84 =  >r over + dup cells lit + @ r> + over cells lit +
   68: super85 =  >r over + dup cells lit + @ r> + over cells lit + @
   69: super86 =  >r over + dup cells lit + @ r> + over cells lit + @ ?branch
   70: super87 =  lit @ =
   71: super88 =  2drop drop lit ;s
   72: super90 =  cells lit + @ lit @ and ;s
   73: super91 =  swap lit
   74: super92 =  swap lit @
   75: super93 =  lit lit
   76: super94 =  lit !
   77: super95 =  dup call
   78: super96 =  over + dup cells
   79: super97 =  over + dup cells lit
   80: super98 =  over + dup cells lit +
   81: super99 =  over + dup cells lit + @
   82: super100 =  lit @ + ;s
   83: super102 =  + dup
   84: super103 =  lit -
   85: super104 =  + dup 1-
   86: super105 =  + dup 1- call
   87: super106 =  lit - ;s
   88: super107 =  within lit
   89: super108 =  within lit and
   90: super110 =  nip nip
   91: super111 =  lit @ and lit
   92: super112 =  swap lit @ *
   93: super113 =  swap lit @ * +
   94: super114 =  swap lit @ * + ;s
   95: super115 =  drop ;s
   96: super116 =  lit @ lit @ and
   97: super118 =  lit @ + call
   98: super119 =  lit @ + dup call
   99: super120 =  over + dup @
  100: super121 =  cells lit @
  101: super122 =  cells lit @ +
  102: super123 =  cells lit @ + ;s
  103: super124 =  lit @ + dup lit
  104: super125 =  drop (loop)
  105: super126 =  @ 2dup
  106: super127 =  @ 2dup <
  107: super128 =  @ 2dup < ?branch
  108: super129 =  lit 2@
  109: super132 =  + ;s
  110: super133 =  lit @ and lit @
  111: super134 =  lit @ and lit @ =
  112: super135 =  lit @ and lit @ = ?branch
  113: super136 =  lit @ = and
  114: super137 =  2drop ;s
  115: super139 =  nip nip ;s
  116: super140 =  2@ call
  117: super141 =  lit 2@ rot
  118: super142 =  lit 2@ rot xor
  119: super143 =  lit 2@ rot xor >r
  120: super144 =  lit 2@ rot xor >r xor
  121: super145 =  lit 2@ rot xor >r xor r>
  122: super146 =  lit 2@ rot xor >r xor r> lit
  123: super147 =  lit 2@ rot xor >r xor r> lit 2!
  124: super148 =  lit 2@ rot xor >r xor r> lit 2! ;s
  125: super149 =  lit @ = and +
  126: super150 =  lit @ = and + ;s
  127: super151 =  + lit @
  128: super152 =  lit lit !
  129: super153 =  lit @ lit call
  130: super154 =  2dup call
  131: super155 =  lit @ = ;s
  132: super156 =  lit ! lit
  133: super158 =  dup lit cells
  134: super159 =  dup lit cells +
  135: super160 =  dup lit cells + 2@
  136: super161 =  dup lit cells + 2@ rot
  137: super162 =  swap call
  138: super163 =  lit ! lit !
  139: super164 =  lit @ branch
  140: super165 =  lit @ 1+
  141: super166 =  dup cells
  142: super167 =  dup cells lit
  143: super168 =  dup cells lit +
  144: super169 =  dup cells lit + @
  145: super170 =  lit @ 1+ lit
  146: super171 =  dup lit !
  147: super172 =  dup 2@
  148: super173 =  + lit @ =
  149: super174 =  + lit @ = ?branch
  150: super175 =  lit @ + dup lit call
  151: super176 =  lit @ lit @ and 0=
  152: super177 =  lit @ lit @ and 0= ?branch
  153: super178 =  drop lit
  154: super179 =  drop lit @
  155: super181 =  cells swap
  156: super182 =  cells swap cells
  157: super183 =  cells swap cells lit
  158: super184 =  cells swap cells lit +
  159: super185 =  nip nip lit
  160: super186 =  nip nip lit @
  161: super187 =  nip nip lit @ and
  162: super188 =  nip nip lit @ and dup
  163: super189 =  nip nip lit @ and dup lit
  164: super190 =  nip nip lit @ and dup lit @
  165: super191 =  nip nip lit @ and dup lit @ =
  166: super192 =  nip nip lit @ and dup lit @ = swap
  167: super193 =  nip nip lit @ and dup lit @ = swap lit
  168: super194 =  nip nip lit @ and dup lit @ = swap lit @
  169: super195 =  nip nip lit @ and dup lit @ = swap lit @ =
  170: super196 =  nip nip lit @ and dup lit @ = swap lit @ = or
  171: super197 =  nip nip lit @ and dup lit @ = swap lit @ = or ;s
  172: super198 =  over call
  173: super199 =  lit @ + dup lit +
  174: super200 =  lit @ lit @ lit
  175: super201 =  cells lit + @ 0=
  176: super202 =  cells lit + @ 0= ;s
  177: super203 =  lit @ and lit *
  178: super204 =  lit @ and lit * +
  179: super205 =  lit @ and lit * + lit
  180: super206 =  lit @ and lit * + lit call
  181: super207 =  lit @ dup
  182: super208 =  lit @ dup lit
  183: super209 =  0= ?branch
  184: super210 =  or over
  185: super211 =  or over lit
  186: super212 =  lit @ lit @ lit !
  187: super213 =  lit @ lit @ lit ! lit
  188: super214 =  lit @ lit @ lit ! lit !
  189: super215 =  lit @ lit @ lit ! lit ! lit
  190: super216 =  lit @ lit @ lit ! lit ! lit @
  191: super217 =  lit @ lit @ lit ! lit ! lit @ 0=
  192: super218 =  lit @ lit @ lit ! lit ! lit @ 0= lit
  193: super219 =  lit @ lit @ lit ! lit ! lit @ 0= lit !
  194: super220 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit
  195: super221 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @
  196: super222 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate
  197: super223 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit
  198: super224 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit !
  199: super225 =  lit @ lit @ lit ! lit ! lit @ 0= lit ! lit @ negate lit ! ;s
  200: super226 =  lit @ 1+ lit !
  201: super227 =  dup lit ! cells
  202: super228 =  dup lit ! cells lit
  203: super229 =  dup lit ! cells lit +
  204: super230 =  dup lit ! cells lit + @
  205: super231 =  dup lit ! cells lit + @ dup
  206: super232 =  dup lit ! cells lit + @ dup lit
  207: super233 =  dup lit ! cells lit + @ dup lit !
  208: super234 =  dup lit ! cells lit + @ dup lit ! ;s
  209: super235 =  lit @ and cells
  210: super236 =  lit @ and cells lit
  211: super237 =  lit @ and cells lit +
  212: super238 =  over lit
  213: super239 =  dup 2@ lit
  214: super240 =  dup 2@ lit 2@
  215: super241 =  dup 2@ lit 2@ d=
  216: super242 =  lit @ and dup
  217: super243 =  lit @ and dup lit
  218: super244 =  dup lit @ call
  219: super245 =  lit /mod
  220: super246 =  lit /mod rot
  221: super247 =  lit /mod rot lit
  222: super248 =  lit /mod rot lit /mod
  223: super249 =  lit /mod rot lit /mod swap
  224: super250 =  lit /mod rot lit /mod swap >r
  225: super251 =  lit /mod rot lit /mod swap >r -
  226: super252 =  lit /mod rot lit /mod swap >r - swap
  227: super253 =  lit /mod rot lit /mod swap >r - swap r>
  228: super254 =  lit /mod rot lit /mod swap >r - swap r> -
  229: super255 =  lit /mod rot lit /mod swap >r - swap r> - swap
  230: super256 =  lit /mod rot lit /mod swap >r - swap r> - swap ;s
  231: super257 =  lit and
  232: super258 =  dup lit @ =
  233: super260 =  dup lit @ = over
  234: super261 =  dup lit @ = over lit
  235: super262 =  dup lit @ = over lit @
  236: super263 =  dup lit @ = over lit @ =
  237: super264 =  dup lit @ = over lit @ = or
  238: super265 =  lit @ and dup lit call
  239: super267 =  abs swap
  240: super268 =  abs swap abs
  241: super269 =  abs swap abs =
  242: super270 =  abs swap abs = ;s
  243: super271 =  lit @ + lit
  244: super272 =  dup lit cells + 2@ rot @
  245: super273 =  dup lit cells + 2@ rot @ ;s
  246: super274 =  lit ! call
  247: super275 =  cells lit + !
  248: super276 =  cells lit + ! ;s
  249: super277 =  0= swap
  250: super278 =  0= swap 0=
  251: super279 =  0= swap 0= xor
  252: super280 =  0= swap 0= xor ;s
  253: super281 =  lit lit call
  254: super282 =  lit lit ! call
  255: super284 =  lit @ + dup cells
  256: super285 =  lit @ + dup cells lit
  257: super286 =  lit @ + dup cells lit +
  258: super287 =  lit @ + dup cells lit + @
  259: super288 =  dup lit cells + 2@ rot 2@
  260: super289 =  dup lit cells + 2@ rot 2@ ;s
  261: super290 =  dup 2@ lit 2@ d= ?branch
  262: super291 =  dup cells lit + @ call
  263: super292 =  lit @ swap
  264: super293 =  2drop drop lit @
  265: super294 =  lit @ i
  266: super295 =  lit @ dup lit @
  267: super296 =  lit @ i call
  268: super297 =  lit @ = ?branch
  269: super298 =  lit @ * lit
  270: super299 =  lit @ * lit @
  271: super300 =  lit @ lit @ 2>r
  272: super301 =  or ;s
  273: super302 =  lit lit ! lit
  274: super303 =  lit @ + dup lit + 2@
  275: super304 =  lit @ + dup lit + 2@ rot
  276: super305 =  lit @ + dup lit + 2@ rot lit
  277: super306 =  lit @ + dup lit + 2@ rot lit +
  278: super307 =  lit @ + dup lit + 2@ rot lit + @
  279: super308 =  lit @ + dup lit + 2@ rot lit + @ ;s
  280: super309 =  lit @ lit @ and cells
  281: super310 =  lit @ lit @ and cells lit
  282: super311 =  lit @ lit @ and cells lit +
  283: super312 =  lit @ lit @ *
  284: super313 =  lit @ lit @ * lit
  285: super314 =  lit @ lit @ * lit +
  286: super315 =  lit @ lit @ * lit + ;s
  287: super316 =  lit ! lit ! call
  288: super317 =  lit @ 1+ lit ! ;s
  289: super318 =  i cells
  290: super319 =  i cells lit
  291: super320 =  i cells lit +
  292: super321 =  i cells lit + @
  293: super322 =  i cells lit + @ dup
  294: super323 =  i cells lit + @ dup lit
  295: super324 =  lit @ lit lit
  296: super325 =  lit @ lit lit @
  297: super326 =  lit @ lit lit @ *
  298: super327 =  lit fill
  299: super328 =  lit fill ;s
  300: super329 =  lit @ 0=
  301: super330 =  lit @ 0= ?branch
  302: super331 =  i cells lit + @ dup lit @
  303: super332 =  lit @ 1-
  304: super333 =  lit @ 1- lit
  305: super334 =  lit @ 1- lit !
  306: super335 =  lit @ 1- lit ! ;s
  307: super336 =  lit @ + lit +
  308: super337 =  lit @ + lit + @
  309: super338 =  lit @ + lit + @ ;s
  310: super339 =  lit @ lit *
  311: super340 =  lit @ lit * lit
  312: super341 =  i cells lit + @ dup lit @ =
  313: super342 =  i cells lit + @ dup lit @ = ?branch
  314: super343 =  lit @ lit lit @ * call
  315: super344 =  lit @ + dup lit + @
  316: super345 =  lit @ + dup lit + @ swap
  317: super346 =  lit @ + dup lit + @ swap lit
  318: super347 =  lit @ + dup lit + @ swap lit +
  319: super348 =  lit @ + dup lit + @ swap lit + @
  320: super349 =  lit @ + dup lit + @ swap lit + @ ;s
  321: super350 =  lit and +
  322: super352 =  lit @ lit * lit @
  323: super353 =  lit @ lit * lit @ *
  324: super354 =  lit @ lit * lit @ * lit
  325: super355 =  lit @ lit * lit @ * lit +
  326: super356 =  lit @ lit * lit @ * lit + ;s
  327: super357 =  tuck !
  328: super358 =  tuck ! lit
  329: super359 =  tuck ! lit cells
  330: super360 =  tuck ! lit cells +
  331: super361 =  tuck ! lit cells + 2!
  332: super362 =  tuck ! lit cells + 2! ;s
  333: super363 =  swap lit @ +
  334: super364 =  swap lit @ + swap
  335: super365 =  swap lit @ + swap 2@
  336: super366 =  swap lit @ + swap 2@ d0=
  337: super367 =  swap lit @ + swap 2@ d0= ?branch
  338: super368 =  lit lit @
  339: super369 =  lit @ * lit @ lit
  340: super370 =  lit @ * lit @ lit and
  341: super371 =  lit @ * lit @ lit and lit
  342: super372 =  lit @ * lit @ lit and lit @
  343: super373 =  lit @ * lit @ lit and lit @ +
  344: super374 =  lit @ * lit @ lit and lit @ + +
  345: super375 =  lit @ * lit @ lit and lit @ + + ;s
  346: super376 =  lit and ;s
  347: super377 =  dup lit call
  348: super378 =  over lit @
  349: super379 =  dup 0<
  350: super380 =  >r call
  351: super381 =  lit *
  352: super382 =  lit * +
  353: super383 =  or over lit +
  354: super384 =  or over lit + call
  355: super385 =  + call
  356: super387 =  or swap
  357: super388 =  or swap lit
  358: super389 =  r> 2r>
  359: super390 =  lit @ dup lit @ *
  360: super391 =  lit @ dup lit @ * +
  361: super392 =  lit @ dup lit @ * + lit
  362: super393 =  lit @ dup lit @ * + lit @
  363: super394 =  lit @ dup lit @ * + lit @ *
  364: super395 =  lit @ dup lit @ * + lit @ * lit
  365: super396 =  lit @ dup lit @ * + lit @ * lit +
  366: super397 =  lit @ dup lit @ * + lit @ * lit + ;s
  367: super398 =  over + dup lit
  368: super399 =  over + dup lit @
  369: super400 =  over + dup lit @ =
  370: super401 =  over + dup lit @ = over
  371: super402 =  over + dup lit @ = over cells
  372: super403 =  over + dup lit @ = over cells lit
  373: super404 =  over + dup lit @ = over cells lit +
  374: super405 =  over + dup lit @ = over cells lit + @
  375: super406 =  over + dup lit @ = over cells lit + @ or
  376: super407 =  over + dup lit @ = over cells lit + @ or ?branch
  377: super408 =  lit +
  378: super409 =  + lit @ lit
  379: super410 =  lit @ + @
  380: super411 =  lit @ + @ ;s
  381: super412 =  lit @ lit @ and ?branch
  382: super413 =  lit ! lit lit
  383: super414 =  lit ! lit lit !
  384: super415 =  swap lit @ and
  385: super416 =  nip swap
  386: super417 =  nip swap negate
  387: super418 =  nip swap negate call
  388: super419 =  swap lit @ and ?branch
  389: super420 =  lit lit ! lit @
  390: super421 =  - lit
  391: super422 =  - lit cells
  392: super423 =  - lit cells -
  393: super424 =  - lit cells - call
  394: super425 =  lit ! lit lit ! ;s
  395: super426 =  lit @ dup lit cells
  396: super427 =  lit @ dup lit cells -
  397: super428 =  lit @ dup lit cells - @
  398: super429 =  lit @ dup lit cells - @ lit
  399: super430 =  lit @ dup lit cells - @ lit !
  400: super431 =  lit @ dup lit cells - @ lit ! dup

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