xo-gc xo-alloc: refactor for file organization

This commit is contained in:
Roland Conybeare 2025-12-22 23:31:12 -05:00
commit 8b5e2dd59f
13 changed files with 21 additions and 21 deletions

View file

@ -24,8 +24,7 @@ Abstraction tower for *xo-alloc2* components
| IAllocator_DArena |
+--------------------------------+
| IAllocator_Xfer |
+--------------------------------+
| IAllocator_ImplType |
| IAllocator_Any |
+--------------+-----------------+
| | DArena |
| AAllocator +-----------------+

View file

@ -5,13 +5,11 @@ xo-alloc2 documentation
xo-alloc2 is intended to provide fast vm-aware arena allocation.
Next-generation version of xo-alloc.
At present (Dec 2025) xo-alloc is fully functional,
while xo-alloc2 is aspirational.
Features:
* allocates uncommitted virtual memory, and commits on demand.
* ses THP (Transparent Huge Pages) when available.
* uses THP (Transparent Huge Pages) when available.
Implemented using FOMO (faceted rust-like object model) from xo-facet

View file

@ -5,9 +5,9 @@
#pragma once
#include "gcobject/AGCObject.hpp"
#include "gcobject/IGCObject_Any.hpp"
#include "gcobject/IGCObject_Xfer.hpp"
#include "gcobject/RGCObject.hpp"
#include "AGCObject.hpp"
#include "detail/IGCObject_Any.hpp"
#include "detail/IGCObject_Xfer.hpp"
#include "detail/RGCObject.hpp"
/* end GCObject.hpp */

View file

@ -5,7 +5,7 @@
#pragma once
#include "gcobject/IGCObject_Any.hpp"
#include "IGCObject_Any.hpp"
#include <xo/facet/facet_implementation.hpp>
#include <xo/facet/typeseq.hpp>
@ -34,9 +34,12 @@ namespace xo {
virtual int32_t _typeseq() const noexcept = 0;
virtual size_type allocated(Copaque d, generation g, role r) const noexcept = 0;
virtual size_type reserved(Copaque d, generation g, role r) const noexcept = 0;
virtual size_type committed(Copaque d, generation g, role r) const noexcept = 0;
virtual size_type allocated(Copaque d,
generation g, role r) const noexcept = 0;
virtual size_type reserved(Copaque d,
generation g, role r) const noexcept = 0;
virtual size_type committed(Copaque d,
generation g, role r) const noexcept = 0;
/** install interface @p iface for representation with typeseq @p tseq
* in collector @p d.

View file

@ -3,7 +3,7 @@
* @author Roland Conybeare, Dec 2025
**/
#include "gcobject/IGCObject_Any.hpp"
#include "detail/IGCObject_Any.hpp"
#include <iostream>
namespace xo {

View file

@ -6,8 +6,8 @@
#pragma once
#include <xo/alloc2/alloc/AAllocator.hpp>
#include <xo/gc/gcobject/AGCObject.hpp>
#include <xo/gc/gcobject/IGCObject_Xfer.hpp>
#include <xo/gc/AGCObject.hpp>
#include <xo/gc/detail/IGCObject_Xfer.hpp>
#include "DFloat.hpp"
namespace xo {

View file

@ -6,8 +6,8 @@
#pragma once
#include "xo/alloc2/alloc/AAllocator.hpp"
#include <xo/gc/gcobject/AGCObject.hpp>
#include <xo/gc/gcobject/IGCObject_Xfer.hpp>
#include <xo/gc/AGCObject.hpp>
#include <xo/gc/detail/IGCObject_Xfer.hpp>
#include "DInteger.hpp"
namespace xo {

View file

@ -8,8 +8,8 @@
#include <xo/alloc2/alloc/AAllocator.hpp>
#include <xo/alloc2/alloc/RAllocator.hpp>
#include <xo/gc/Collector.hpp>
#include <xo/gc/gcobject/AGCObject.hpp>
#include <xo/gc/gcobject/IGCObject_Xfer.hpp>
#include <xo/gc/AGCObject.hpp>
#include <xo/gc/detail/IGCObject_Xfer.hpp>
#include "DList.hpp"
namespace xo {

View file

@ -11,7 +11,7 @@ Library dependency tower for *xo-tokenizer*:
.. ditaa::
+-----------------+
| xo_unit |
| xo_tokenizer |
+-----------------+
| xo_indentlog |
+-----------------+