aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorGravatar zinc <zinc@downsta.ir> 2026-10-15 02:34:57 +0330
committerGravatar zinc <zinc@downsta.ir> 2026-10-15 02:40:51 +0330
commit4ff9e3b89fa1dca5d5981a22e5d41ac5f36ad11d (patch)
tree9bfe048a3719072864713c0d561ad3ce970ab25c /README.md
parentmerge work/triage: zc0typed.zc without .u on a typed parameter; a //:lines ma... (diff)
genmap: default genome reservation 0x70000 words (the genome had 197 words left); the map constants in rt.zc and the README table move by 0x8000; gc.zc's reclaim bound is 900 (937 with the heap higher, 952 before) and the run-only section rewrites whatever its number
Diffstat (limited to 'README.md')
-rw-r--r--README.md12
1 files changed, 6 insertions, 6 deletions
diff --git a/README.md b/README.md
index 254e769..4ebbe0e 100644
--- a/README.md
+++ b/README.md
@@ -574,12 +574,12 @@ the initial layout reserves code, compiler tables, the genome, and stacks below
0x080000..0x08FFFF type records (65536 words)
0x090000 frame pointer word (ZFP); 0x090002 is the syscall gate
0x090100..0x113FFF compiler data: interned names, symbol table (16384), locals, fixups, tables
-0x114100..0x17C0FF genome: 0x114100 entry, then the symbol table address and the image end (425984 words reserved)
-0x17C100..0x1BC0FF frame stack, grows down from 0x1BC100 (262144 words)
-0x1BC100..0x1CC0FF return stack, grows up
-0x1CC100..0x1D40FF mark stack
-0x1D4100..0x1DCFF0 data stack, grows down
-0x1DD000..0x23CFFF the heap to start with (0x60000 words), then it grows up to MW
+0x114100..0x1840FF genome: 0x114100 entry, then the symbol table address and the image end (458752 words reserved)
+0x184100..0x1C40FF frame stack, grows down from 0x1C4100 (262144 words)
+0x1C4100..0x1D40FF return stack, grows up
+0x1D4100..0x1DC0FF mark stack
+0x1DC100..0x1E4FF0 data stack, grows down
+0x1E5000..0x244FFF the heap to start with (0x60000 words), then it grows up to MW
```
the numbers describe the default build's initial reservations. compact compiler and run-only maps start with smaller reservations and also support growth. `build/bin/genmap` writes matching layouts (see "smaller machines"); `--preset fixed` retains the older bounded heap for compatibility. the host answers `core.syscall(9, k)` with facts about the map (0 total words, 1 heap start, 2 heap end for now, 3 bytes). argument 4 requests memory growth, and argument 5 changes the growth limit within the host's backing constraints.