aboutsummaryrefslogtreecommitdiff
path: root/src
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 /src
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 'src')
-rw-r--r--src/runtime/rt.zc18
-rw-r--r--src/tools/genmap.c2
2 files changed, 10 insertions, 10 deletions
diff --git a/src/runtime/rt.zc b/src/runtime/rt.zc
index 968be87..099ca2e 100644
--- a/src/runtime/rt.zc
+++ b/src/runtime/rt.zc
@@ -37,20 +37,20 @@ unbounded;
// across targets and image sizes.
// @map-rt
-const MW = 0x1DD000;
+const MW = 0x1E5000;
const CODE_END = 0x80000;
-const HEAP_LO = 0x1DD000;
-const HEAP_HI = 0x23D000;
+const HEAP_LO = 0x1E5000;
+const HEAP_HI = 0x245000;
const HEAP_GROW = 0x1;
const ZFP = 0x90000;
const GORG = 0x114100;
-const FBOT = 0x17C100;
-const FTOP = 0x1BC100;
-const RS0 = 0x1BC100;
-const MARK0 = 0x1CC100;
+const FBOT = 0x184100;
+const FTOP = 0x1C4100;
+const RS0 = 0x1C4100;
+const MARK0 = 0x1D4100;
const MARKN = 0x8000;
-const DSLO = 0x1D4100;
-const DSHI = 0x1DCFF0;
+const DSLO = 0x1DC100;
+const DSHI = 0x1E4FF0;
const MAGIC = 0x2B7E1516;
// @end-map
diff --git a/src/tools/genmap.c b/src/tools/genmap.c
index 6d8db55..519852b 100644
--- a/src/tools/genmap.c
+++ b/src/tools/genmap.c
@@ -242,7 +242,7 @@ static void preset_default(Spec *s)
s->compiler = 1;
s->heap_top = 1; s->code_end = 0x80000; s->types = 65536;
s->heap = 0x60000; s->total = 0x8000000;
- s->genome = 0x68000; s->frame = 0x40000; s->ret = 0x10000; s->mark = 0x8000;
+ s->genome = 0x70000; s->frame = 0x40000; s->ret = 0x10000; s->mark = 0x8000;
s->data = 0x7FF0;
tables_big(s);
}