diff options
Diffstat (limited to 'interpret.e')
| -rw-r--r-- | interpret.e | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/interpret.e b/interpret.e index 7884feb..eabbb09 100644 --- a/interpret.e +++ b/interpret.e @@ -139,7 +139,7 @@ here @ swap :rax mov-reg64-imm64 :rax push-reg64 - next + pack-next 8 packalign here ! ; @@ -410,6 +410,16 @@ latest @ dup hide-entry ~ (pointer to [ entry, pointer to ] entry, pointer to ; entry) +: ;asm + here @ pack-next 8 packalign here ! + latest @ dup unhide-entry entry-to-execution-token dup 8 + swap ! + ~ See above. + [ 2 pick entry-to-execution-token , ] + ; make-immediate +latest @ dup hide-entry +~ (pointer to [ entry, pointer to ], pointer to ;, pointer to ;asm) + + ~ Although we will eventually define the word "'" to give us the symbol of ~ a word, it will rely on being able to compile a literal. Rather than do lots ~ of string processing later, we choose to define this word now to avoid |