aboutsummaryrefslogtreecommitdiff
path: root/notes
diff options
context:
space:
mode:
authorDrahflow <drahflow@gmx.de>2013-01-09 02:44:10 +0100
committerDrahflow <drahflow@gmx.de>2013-01-09 02:44:10 +0100
commitdcf987b6da372b55c36628b88f5d8e70596be6cb (patch)
treedef742bbad00ef57c10e36d11877ab6bde9da57e /notes
parent10ee55d9c70b411494117ea9f9a075fbfd28e57d (diff)
Function memory layout
Diffstat (limited to 'notes')
-rw-r--r--notes16
1 files changed, 15 insertions, 1 deletions
diff --git a/notes b/notes
index 99dcba4..b45aec3 100644
--- a/notes
+++ b/notes
@@ -168,7 +168,21 @@ Small set in between
=== Extension Area ===
* Length in bytes (including header)
- bit 63-60: 0 0 1 1
+ bit 63-60: 0 1 0 0
bit 59: reserved for GC
* data
[ <reference> ]*
+
+=== Function ===
+* Length in bytes (including header)
+ bit 63-60: 0 1 0 1
+ bit 59: reserved for GC
+* scope pointer
+* type pointer (0 if untyped)
+* code pointer
+
+=== Function Code ===
+* Length in bytes (including header)
+ bit 63-60: 0 1 1 0
+ bit 59: reserved for GC
+* [ <opcode> ]*