about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2019-12-30 01:33:34 -0800
committerKartik Agaram <vc@akkartik.com>2019-12-30 01:33:34 -0800
commitdcb20a225f1ecf45a9e465f1c1c487835589f09e (patch)
treea165da00192365bc2f51f7f9b686868710865461
parent46c947224f1a33e941b0bd1e65730c9abef0a161 (diff)
downloadmu-dcb20a225f1ecf45a9e465f1c1c487835589f09e.tar.gz
5845
-rw-r--r--apps/mu.subx3
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
location_array.cc?h=main&id=f40137f1327ad3203eff5f6894baaa68a700cec1'>f40137f1 ^
8d82da3c ^
b24eb476 ^
8d82da3c ^






6c96a437 ^
8d82da3c ^


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46