diff options
author | Kartik Agaram <vc@akkartik.com> | 2020-09-26 20:47:52 -0700 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2020-09-26 20:47:52 -0700 |
commit | e46cfc2e0c053c3dc2ca17e52126a97f29ce618b (patch) | |
tree | e276fe8d098290b472a5bfbde96e66bac95847ec /apps | |
parent | 42349345f4fcab2ce4db4ed25ce96745d938f47b (diff) | |
download | mu-e46cfc2e0c053c3dc2ca17e52126a97f29ce618b.tar.gz |
6867
Segfault fixed. This shouldn't have been so hard.
Diffstat (limited to 'apps')
-rw-r--r-- | apps/tile/rpn.mu | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/apps/tile/rpn.mu b/apps/tile/rpn.mu index 417bc9a0..47383642 100644 --- a/apps/tile/rpn.mu +++ b/apps/tile/rpn.mu @@ -11,6 +11,8 @@ fn evaluate defs: (addr handle function), bindings: (addr table), scratch: (addr break-if-= # update curr-text emit-word curr, curr-text +#? print-stream-to-real-screen curr-text +#? print-string-to-real-screen "\n" $evaluate:process-word: { # if curr-text is an operator, perform it { @@ -127,9 +129,10 @@ fn perform-call _callee: (addr function), caller-stack: (addr int-stack), defs: # perform call var stack-storage: int-stack var stack/edi: (addr int-stack) <- address stack-storage - print-string-to-real-screen "about to enter recursive eval\n" + initialize-int-stack stack, 0x10 +#? print-string-to-real-screen "about to enter recursive eval\n" evaluate defs, table, body, 0, stack - print-string-to-real-screen "exited recursive eval\n" +#? print-string-to-real-screen "exited recursive eval\n" # stitch result from stack into caller var result/eax: int <- pop-int-stack stack push-int-stack caller-stack, result |