From 5a405cb2e0a33bc514138bc7cf6a32c6fcf0f8aa Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Sun, 23 Feb 2020 00:30:31 -0800 Subject: 6050 --- apps/mu.subx | 60 ++++++++++++++++++++++++++++++++++-------------------------- 1 file changed, 34 insertions(+), 26 deletions(-) (limited to 'apps/mu.subx') diff --git a/apps/mu.subx b/apps/mu.subx index 2c54d141..6aa2333c 100644 --- a/apps/mu.subx +++ b/apps/mu.subx @@ -358,9 +358,43 @@ Tree-right: # (addr tree type-id) Tree-size: # (addr int) 8/imm32 +# Types + Max-type-id: 0x10000/imm32 +Type-id: # (stream (address array byte)) + 0x18/imm32/write + 0/imm32/read + 0x100/imm32/length + # data + "literal"/imm32 # 0 + "int"/imm32 # 1 + "addr"/imm32 # 2 + "array"/imm32 # 3 + "handle"/imm32 # 4 + "bool"/imm32 # 5 + 0/imm32 + 0/imm32 + # 0x20 + 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 + 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 + 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 + 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 + 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 + 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 + 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 + +# Types contain vars with types, but can't specify registers. +Typeinfo-id: # type-id + 0/imm32 +Typeinfo-fields: # (handle list var) + 4/imm32 +Typeinfo-next: # (handle typeinfo) + 8/imm32 +Typeinfo-size: # (addr int) + 0xc/imm32 + == code Entry: @@ -2896,32 +2930,6 @@ $pos-slice:end: 5d/pop-to-ebp c3/return -== data - -Type-id: # (stream (address array byte)) - 0x18/imm32/write - 0/imm32/read - 0x100/imm32/length - # data - "literal"/imm32 # 0 - "int"/imm32 # 1 - "addr"/imm32 # 2 - "array"/imm32 # 3 - "handle"/imm32 # 4 - "bool"/imm32 # 5 - 0/imm32 - 0/imm32 - # 0x20 - 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 - 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 - 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 - 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 - 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 - 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 - 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 0/imm32 - -== code - test-parse-var-with-type: # . prologue 55/push-ebp -- cgit 1.4.1-2-gfad0