diff options
-rw-r--r-- | apps/mu.subx | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/apps/mu.subx b/apps/mu.subx index 79642e08..efe7faa6 100644 --- a/apps/mu.subx +++ b/apps/mu.subx @@ -2326,6 +2326,7 @@ $stmt-has-outputs:end: 5d/pop-to-ebp c3/return +# return first 'name' from the top (back) of 'vars' and abort if not found lookup-var: # name: (address slice), vars : (address stack (handle var)) -> result/eax: (handle var) # . prologue 55/push-ebp @@ -2354,6 +2355,7 @@ $lookup-var:abort: cd/syscall 0x80/imm8 # never gets here +# return first 'name' from the top (back) of 'vars', and 0/null if not found lookup-var-helper: # name: (address array byte), vars : (address stack (handle var)) -> result/eax: (handle var) # pseudocode: # var curr : (address handle var) = &vars->data[vars->top - 4] @@ -2420,6 +2422,7 @@ $lookup-var-helper:error1: cd/syscall 0x80/imm8 # never gets here +# return first 'name' from the top (back) of 'vars' and create a new var for a fn output if not found lookup-or-define-var: # name: (address slice), vars : (address stack (handle var)), fn : (handle function) -> result/eax: (handle var) # . prologue 55/push-ebp |