xo-umbrella2/xo-alloc/README.md
Roland Conybeare 2c8faf6e43 git subrepo clone git@github.com:Rconybea/xo-alloc.git xo-alloc
subrepo:
  subdir:   "xo-alloc"
  merged:   "fc656313"
upstream:
  origin:   "git@github.com:Rconybea/xo-alloc.git"
  branch:   "main"
  commit:   "fc656313"
git-subrepo:
  version:  "0.4.9"
  origin:   "???"
  commit:   "???"
2026-06-06 22:03:21 -04:00

16 lines
803 B
Markdown

# xo-alloc -- arena allocator and incremental garbage collector
# Rules for writing garbage-collected classes.
Topics
* allocation - allocate Objects (inheriting xo::Object) before owned scratch space.
Can relax this if/when abandon the bad-for-locality use of two pointers
into to-space to keep track of grey objects. Want to use stack anyway
so we can do depth-first search.
* destructors - can omit except for finalization
* assignment - MUST USE Object::assign_member() to assign pointers to gc-owned memory.
Only necessary for old->new pointers, so don't need to worry about this
for initialization.
* finalization - not supported (yet)
- padding - use IAlloc::with_padding(z) for hand-allocated objects.