b1d2ae6f19
xo-gc stack: refactor + streamline.
...
Retiring unused Collector typealiases.
Fix #include topology.
Fix/improve write barrier setup.
2026-05-02 13:49:29 -04:00
b780d1da4c
refactor focusing on xo-alloc2/ xo-gc/ write-barrier
...
ability to inform allocator of gco->gco mutation, via AAllocator i/face.
2026-05-01 19:54:26 -04:00
de13d02ed1
xo-object2: obj<ACollector> argument to DArray::push_back()
2026-04-28 23:17:00 -04:00
c3c9d9c94d
xo-gc: doc: + comment on GCObjectVisitor entry points
2026-04-12 15:38:42 -04:00
e04fbda824
xo-gc: bugfixes for GCObjectStore, unit test exapnded
...
In particular: drop casual assignment to DList.rest_,
will break acyclic assumption of DList.size()
2026-04-11 16:51:52 -04:00
5a0314d8d6
xo-interpreter2 stack: + reason arg to visit_gco_children()
...
Helps streamline DX1Collector in xo-gc/.
Want both forward and verify entry points for the same
representation.
2026-04-10 01:10:03 -04:00
a6d23ddb83
xo-gc: retire Collector.forward_inplace + mock x-gc utest
...
W/ MockCollector supporting AGCObjectVisitor facet
2026-04-07 21:16:55 -04:00
d7c2ae295a
xo-gc: cosmetic: rename xo::mm::role -> xo::mm::Role
2026-04-06 23:33:05 -04:00
b794f225b2
refactor: xo-gc: + GCObjectVisitor.generation_of()
...
Concession to narrow MutationLogStore to only use GCObjectVisitor
instead of assuming X1Collector.
2026-04-06 23:18:45 -04:00
cb87e78cd8
xo-gc stack: refactor: + alloc_info() method
...
replicated form AAllocator facet
2026-04-06 17:15:30 -04:00
3489699f5d
refactor: use GCObjectVisitor api w/ gco_shallow_move
2026-04-06 15:21:48 -04:00
db4ccfd911
refactor: make shallow_move() available from AGCObjectVisitor
2026-04-06 00:11:08 -04:00
90ab86f69c
refactor: + narrower interface for gc pointer forwarding
...
add AGCObjectVisitor, instead of requiring ACollector.
2026-04-05 23:53:02 -04:00
df0bbe1b31
xo-gc stack: refactor: introduce GCObjectVisitor facet
...
Plan using to properly level GCObjectStore and MutationLogStore
below Collector.
[WIP] not used yet
2026-04-05 18:07:14 -04:00
8f360b74e2
refactor: retire GCObject.shallow_size()
...
Not needed. Rely on size stored in gc-owned object header
2026-04-04 17:30:03 -04:00
fefb15fbad
refactor: void return type for Collector.forward_children()
2026-04-04 16:54:46 -04:00
4ddef4fb29
refactor: rename RCollector.std_copy_for -> std_move_for
2026-04-04 16:37:17 -04:00
4e4687bc2a
refactor: rename shallow_copy -> shallow_move + streamline
...
Use RCollector.std_copy_for where appropriate
2026-04-04 16:33:35 -04:00
46c1efa952
refactor: rename GCObject.shallow_copy -> shallow_move
...
resolve conflict since relying on move constructor in std_copy_for
2026-04-04 15:00:53 -04:00
b88d181906
refactor: make AGCObject.shallow_copy() non-const
...
prep for moving to ACollector interface
2026-04-04 14:38:14 -04:00
ea734fb3f4
xo-gc stack: + ACollector.shallow_copy()
2026-04-03 18:33:09 -04:00
47b0a56830
xo-alloc2: tidy: generation.hpp -> Generation.hpp
2026-04-03 00:04:34 -04:00
c91fc4fbed
xo-procedure2 stack: + report-gc-object-ages() primitive
2026-03-30 14:51:51 -04:00
909c1e485a
xo-gc stack: + gc-location-of() primitive
2026-03-29 19:47:15 -04:00
b8e7ff8b7a
xo-gc stack: + gc-report-object-types() primitive
2026-03-29 17:19:23 -04:00
3a263d7f98
xo-gc stack: + request-gc-statistics() primitive
...
1. xo-gc now depends on xo-object2.
2. use genfacet for ICollector_DX1Collector
3. moves xo-gc utest previously in xo-object2 to more natural
location in xo-gc/
2026-03-29 13:44:19 -04:00
ece5fdb032
xo-alloc2: in forward_inplace() helper strip const for facet lookup
2026-03-28 13:17:16 -04:00
53afef9626
xo-gc stack: genfacet for Collector + facet registry bugfix
2026-03-27 22:33:21 -04:00
417ec9de13
xo-alloc2: + ACollector2
...
temporary, planning to codegen Collector facet
2026-03-27 20:56:46 -04:00
ec1b6173d9
xo-gc stack: + contains() method
2026-03-26 14:58:14 -04:00
8aa718695c
xo-gc: generation -> Generation + bugfix idle test
2026-03-26 11:30:16 -04:00
99f5fd9c5e
xo-procedure: + set-car primitive
2026-03-25 00:10:42 -04:00
f056faa0db
xo-gc: + ACollector.assign_member()
2026-03-24 22:11:25 -04:00
f3f8505a65
xo-interpreter2 stack: refactor + bugfix operator expr
2026-03-12 20:26:08 -05:00
af0be72853
xo-object2 stack: refactor/tidy after GCObject -> alloc2
2026-03-05 20:11:05 +11:00
e33ab0ae98
xo-gc xo-alloc2: move Collector faceet gc/ -> alloc2/ for levelling
2026-03-04 22:26:31 +11:00
3b89f367d7
xo-gc: refactor to extract DX1Collector etc from xo-alloc2/
2025-12-22 22:24:10 -05:00
0a596294b2
xo-alloc2: + AllocRange aux class, for alloc_range()
2025-12-21 15:23:39 -05:00
181ae9f12b
xo-alloc2: + Allocator.alloc_range() with DArena input
2025-12-18 18:34:54 -05:00
d8ed0d6235
xo-alloc2: work on alloc iteration.
2025-12-18 11:22:36 -05:00
bf27314688
xo-alloc2: DX1CollectorIterator infra [WIP]
2025-12-17 20:16:46 -05:00
2dec6dbee8
xo-alloc2: rename: AllocatorError -> AllocError
2025-12-16 17:18:38 -05:00
56bdaec94c
xo-alloc2: + Allocator::alloc_info()
...
Also extend unit test
2025-12-16 16:44:44 -05:00
92fc2a4961
xo-alloc2: refactor - explicit AllocHeader class
2025-12-16 11:43:41 -05:00
1fd5d544f2
xo-alloc2 : work on X1Collector unit test [WIP]
2025-12-15 22:43:21 -05:00
0c2cd7a64e
xo-alloc2: + comments
2025-12-15 01:05:38 -05:00
31a8a8ae48
xo-alloc2: progress on forwarding objects [WIP]
2025-12-15 00:56:49 -05:00
257fc258ae
xo-alloc2: ICollector_Xfer + ICollector_DX1Collector [WIP]
2025-12-14 18:30:46 -05:00
b26212c5aa
xo-alloc2: still more header org-streamlining
2025-12-14 17:28:19 -05:00
8134cd27d4
xo-alloc2: streamline headers (more reorg)
2025-12-14 17:04:45 -05:00