xo-gc stack: + gc-location-of() primitive
This commit is contained in:
parent
84e1f4e4d3
commit
caf2cb3e9b
4 changed files with 35 additions and 0 deletions
|
|
@ -223,6 +223,9 @@ namespace xo {
|
|||
/** memory (virtual addresses) reserved for generation @p g in role @p r **/
|
||||
size_type reserved(Generation g, role r) const noexcept;
|
||||
|
||||
/** very similar to generation_of(), but satisfies ACollector api **/
|
||||
std::int32_t locate_address(const void * addr) const noexcept;
|
||||
|
||||
// ----- full statistics -----
|
||||
|
||||
/** Report gc statistics as a dictionary.
|
||||
|
|
|
|||
|
|
@ -53,6 +53,10 @@ namespace xo {
|
|||
static size_type committed(const DX1Collector & self, Generation g, role r) noexcept;
|
||||
/** address space reserved for this collector **/
|
||||
static size_type reserved(const DX1Collector & self, Generation g, role r) noexcept;
|
||||
/** Location of object in collector. -1 if not in collector memory.
|
||||
Other negative values represent collector error states (good luck!).
|
||||
Exact meaning of non-negative values up to collector implementation **/
|
||||
static std::int32_t locate_address(const DX1Collector & self, const void * addr) noexcept;
|
||||
/** true if gc responsible for data at @p addr, and data belongs to role @p r **/
|
||||
static bool contains(const DX1Collector & self, role r, const void * addr) noexcept;
|
||||
/** true iff gc-aware object of type @p tseq is installed in this collector **/
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue