diff options
Diffstat (limited to 'apps/mu.subx')
-rw-r--r-- | apps/mu.subx | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/apps/mu.subx b/apps/mu.subx index 856244af..ba8e94db 100644 --- a/apps/mu.subx +++ b/apps/mu.subx @@ -384,7 +384,7 @@ Tree-size: # (addr int) # Types -Type-id: # (stream (address array byte)) +Type-id: # (stream (addr array byte)) 0x1c/imm32/write 0/imm32/read 0x100/imm32/size @@ -3772,7 +3772,7 @@ $parse-var-with-type:abort: cd/syscall 0x80/imm8 # never gets here -parse-type: # ad: (address allocation-descriptor), in: (addr stream byte) -> result/eax: (handle tree type-id) +parse-type: # ad: (addr allocation-descriptor), in: (addr stream byte) -> result/eax: (handle tree type-id) # pseudocode: # var s: slice = next-mu-token(in) # assert s != "" @@ -3896,7 +3896,7 @@ $parse-type:abort: cd/syscall 0x80/imm8 # never gets here -parse-type-tree: # ad: (address allocation-descriptor), in: (addr stream byte) -> result/eax: (handle tree type-id) +parse-type-tree: # ad: (addr allocation-descriptor), in: (addr stream byte) -> result/eax: (handle tree type-id) # pseudocode: # var tmp: (handle tree type-id) = parse-type(ad, in) # if tmp == 0 @@ -7375,9 +7375,9 @@ emit-unconditional-jump-to-depth: # out: (addr buffered-file), vars: (addr stac 8b/-> *(ebp+0xc) 1/r32/ecx # var eax: int = vars->top 8b/-> *ecx 0/r32/eax - # var min/ecx: (address (handle var)) = vars->data + # var min/ecx: (addr handle var) = vars->data 81 0/subop/add %ecx 8/imm32 - # var curr/eax: (address (handle var)) = &vars->data[vars->top - 4] + # var curr/eax: (addr handle var) = &vars->data[vars->top - 4] 81 5/subop/subtract %eax 4/imm32 8d/copy-address *(ecx+eax) 0/r32/eax # edx = depth @@ -7448,9 +7448,9 @@ emit-cleanup-code-until-depth: # out: (addr buffered-file), vars: (addr stack ( 8b/-> *(ebp+0xc) 1/r32/ecx # var eax: int = vars->top 8b/-> *ecx 0/r32/eax - # var min/ecx: (address (handle var)) = vars->data + # var min/ecx: (addr handle var) = vars->data 81 0/subop/add %ecx 8/imm32 - # var curr/eax: (address (handle var)) = &vars->data[vars->top - 4] + # var curr/eax: (addr handle var) = &vars->data[vars->top - 4] 81 5/subop/subtract %eax 4/imm32 8d/copy-address *(ecx+eax) 0/r32/eax # edx = until-block-depth @@ -7531,9 +7531,9 @@ emit-cleanup-code-until-target: # out: (addr buffered-file), vars: (addr stack 8b/-> *(ebp+0xc) 1/r32/ecx # var eax: int = vars->top 8b/-> *ecx 0/r32/eax - # var min/ecx: (address (handle var)) = vars->data + # var min/ecx: (addr handle var) = vars->data 81 0/subop/add %ecx 8/imm32 - # var curr/edx: (address (handle var)) = &vars->data[vars->top - 4] + # var curr/edx: (addr handle var) = &vars->data[vars->top - 4] 81 5/subop/subtract %eax 4/imm32 8d/copy-address *(ecx+eax) 2/r32/edx { @@ -7612,9 +7612,9 @@ already-spilled-this-block?: # v: (handle var), vars: (addr stack (handle var)) 8b/-> *(ebp+0xc) 1/r32/ecx # var eax: int = vars->top 8b/-> *ecx 0/r32/eax - # var min/ecx: (address (handle var)) = vars->data + # var min/ecx: (addr handle var) = vars->data 81 0/subop/add %ecx 8/imm32 - # var curr/edx: (address (handle var)) = &vars->data[vars->top - 4] + # var curr/edx: (addr handle var) = &vars->data[vars->top - 4] 81 5/subop/subtract %eax 4/imm32 8d/copy-address *(ecx+eax) 2/r32/edx # var depth/ebx: int = v->block-depth @@ -7670,7 +7670,7 @@ $already-spilled-this-block?:end: # v is guaranteed to be within vars # 'start' is provided as an optimization, a pointer within vars # *start == v -same-register-spilled-before?: # v: (handle var), vars: (addr stack (handle var)), start: (addr (handle var)) -> result/eax: boolean +same-register-spilled-before?: # v: (handle var), vars: (addr stack (handle var)), start: (addr handle var) -> result/eax: boolean # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp @@ -7686,12 +7686,12 @@ same-register-spilled-before?: # v: (handle var), vars: (addr stack (handle var 8b/-> *(ecx+0x10) 2/r32/edx # Var-register # var depth/ebx: int = v->block-depth 8b/-> *(ecx+8) 3/r32/ebx # Var-block-depth - # var min/ecx: (address (handle var)) = vars->data + # var min/ecx: (addr handle var) = vars->data 8b/-> *(ebp+0xc) 1/r32/ecx 81 0/subop/add %ecx 8/imm32 # TODO: check that start >= min and start < &vars->data[top] # TODO: check that *start == v - # var curr/esi: (address (handle var)) = start + # var curr/esi: (addr handle var) = start 8b/-> *(ebp+0x10) 6/r32/esi # curr -= 4 81 5/subop/subtract %esi 4/imm32 @@ -7906,7 +7906,7 @@ $emit-subx-stmt:end: c3/return # TODO: actually return the length in array elements, rather than the size in bytes -translate-mu-length-stmt: # out: (address buffered-file), stmt: (handle stmt) +translate-mu-length-stmt: # out: (addr buffered-file), stmt: (handle stmt) # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp @@ -7921,7 +7921,7 @@ translate-mu-length-stmt: # out: (address buffered-file), stmt: (handle stmt) # var base/eax: (handle var) = inouts[0] 8b/-> *(ecx+8) 0/r32/eax # Stmt1-inouts or Regvardef-inouts 8b/-> *eax 0/r32/eax # Stmt-var-value - # if base is an (address array ...) in a register + # if base is an (addr array ...) in a register { 81 7/subop/compare *(eax+0x10)) 0/imm32 # Var-register 74/jump-if-= break/disp8 @@ -7953,7 +7953,7 @@ $translate-mu-length-stmt:end: 5d/pop-to-ebp c3/return -translate-mu-index-stmt: # out: (address buffered-file), stmt: (handle stmt) +translate-mu-index-stmt: # out: (addr buffered-file), stmt: (handle stmt) # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp @@ -8005,7 +8005,7 @@ $translate-mu-index-stmt-with-array:error2: cd/syscall 0x80/imm8 # never gets here -translate-mu-index-stmt-with-array-in-register: # out: (address buffered-file), stmt: (handle stmt) +translate-mu-index-stmt-with-array-in-register: # out: (addr buffered-file), stmt: (handle stmt) # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp @@ -8114,7 +8114,7 @@ $translate-mu-index-stmt-with-array-in-register:end: 5d/pop-to-ebp c3/return -translate-mu-index-stmt-with-array-on-stack: # out: (address buffered-file), stmt: (handle stmt) +translate-mu-index-stmt-with-array-on-stack: # out: (addr buffered-file), stmt: (handle stmt) # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp @@ -8225,7 +8225,7 @@ $translate-mu-index-stmt-with-array-on-stack:end: 5d/pop-to-ebp c3/return -translate-mu-compute-index-stmt: # out: (address buffered-file), stmt: (handle stmt) +translate-mu-compute-index-stmt: # out: (addr buffered-file), stmt: (handle stmt) # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp @@ -8270,7 +8270,7 @@ $translate-mu-compute-index-stmt:end: 5d/pop-to-ebp c3/return -translate-mu-get-stmt: # out: (address buffered-file), stmt: (handle stmt) +translate-mu-get-stmt: # out: (addr buffered-file), stmt: (handle stmt) # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp |