| latestxt interpret/compile-int @ r@ >body = and |
latestxt interpret/compile-int @ r@ >body = and |
| latestxt interpret/compile-comp @ r> = and |
latestxt interpret/compile-comp @ r> = and |
| 0= abort" not created with create-interpret/compile" |
0= abort" not created with create-interpret/compile" |
| cell+ cell+ maxaligned /does-handler + \ to does-code |
cell+ cell+ maxaligned \ to does-code |
| swap @ does-code! ; |
swap @ does-code! ; |
| |
|
| : (interpretation>1) ( addr R:retaddr -- ) |
: (interpretation>1) ( addr R:retaddr -- ) |
| |
|
| : interpretation> ( compilation. -- orig colon-sys ) \ gforth |
: interpretation> ( compilation. -- orig colon-sys ) \ gforth |
| here 4 cells + POSTPONE literal POSTPONE (interpretation>1) POSTPONE ahead |
here 4 cells + POSTPONE literal POSTPONE (interpretation>1) POSTPONE ahead |
| dodoes, defstart dead-code off 0 set-locals-size-list ; immediate restrict |
defstart dead-code off 0 set-locals-size-list ; immediate restrict |
| |
|
| : <interpretation ( compilation. orig colon-sys -- ) \ gforth |
: <interpretation ( compilation. orig colon-sys -- ) \ gforth |
| ?struc POSTPONE exit |
?struc POSTPONE exit |
| |
|
| : compilation> ( compilation. -- orig colon-sys ) \ gforth |
: compilation> ( compilation. -- orig colon-sys ) \ gforth |
| here 4 cells + POSTPONE literal POSTPONE (compilation>1) POSTPONE ahead |
here 4 cells + POSTPONE literal POSTPONE (compilation>1) POSTPONE ahead |
| dodoes, defstart dead-code off 0 set-locals-size-list POSTPONE >body ; immediate restrict |
defstart dead-code off 0 set-locals-size-list POSTPONE >body ; immediate restrict |
| |
|
| comp' <interpretation drop |
comp' <interpretation drop |
| Alias <compilation ( compilation. orig colon-sys -- ) \ gforth |
Alias <compilation ( compilation. orig colon-sys -- ) \ gforth |