Schematika reader, using facet object model
  • C++ 98%
  • CMake 2%
Find a file
2025-12-03 15:36:59 -05:00
cmake + LinearAlloc + utest 2025-07-29 07:17:35 -05:00
docs xo-alloc: doc improvements 2025-11-15 12:25:03 -05:00
include/xo/alloc xo-alloc / xo-ordinaltree: + concepts + allocator-aware 2025-12-03 15:36:59 -05:00
src/alloc xo-alloc / xo-ordinaltree: work on dual-alloc-policy trees 2025-12-02 10:37:07 -05:00
utest xo-alloc / xo-ordinaltree: + concepts + allocator-aware 2025-12-03 15:36:59 -05:00
CMakeLists.txt xo-alloc: reserve virtual memory, commit pages on demand 2025-08-12 00:14:30 -05:00
README.md xo-interpreter: prep for xo-symboltable 2025-11-17 22:31:10 -05:00

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.