Richard Brooksby
Richard Brooksby
Partially resolved by [Perforce changelist 199686](https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+199686) (see https://github.com/Ravenbrook/mps/pull/166#issuecomment-1772605138 ). We could introduce further rewrite rules to resolve this further.
See also review issues in https://github.com/Ravenbrook/mps/pull/223#pullrequestreview-1432893665
We now have proof that the statement from the manual is false. A cold-end marker obtained this way does not necessarily include roots in the same stack frame. So the...
Even with https://github.com/Ravenbrook/mps/commit/b4d548562a7226978982c51df51bad473b314585 in place, extcon.c fails with gcc 11.3.0 under Ubuntu 22, apparently because gcc inlines test_main into main and reorders the locals. https://github.com/Ravenbrook/mps/commit/24e4c8614d8d4f956c6332335b6e6bf0e56305b3 contains a temporary workaround.
https://github.com/Ravenbrook/mps/commit/627ded3fc9eb253d2eba8075762be8daced3608e contains a further workaround that was necessary on clang 14.
Also: > m. This text is accurate but needs tags and cross-references to/from the code. rule.generic.ref, rule.code.justified _Originally posted by @rptb1 in https://github.com/Ravenbrook/mps/pull/214#discussion_r1230941816_
A few pointers. You can retrieve some statistics from [mps_message_type_gc()](https://memory-pool-system.readthedocs.io/en/latest/topic/collection.html#c.mps_message_type_gc). You can gain a very large amount of information via [Telemetry](https://memory-pool-system.readthedocs.io/en/latest/topic/telemetry.html). The MPS can collect a lot of [statistics](https://github.com/Ravenbrook/mps/blob/554513b16461ec0bbf82856dfe6b0528518c3658/code/config.h#L116-L123) in...
Objects registered for finalization cannot die until their finalization message is deleted. You can copy a reference to those objects [out of the finalization message](https://memory-pool-system.readthedocs.io/en/latest/topic/finalization.html#c.mps_message_finalization_ref) before deleting the message, if...
You could create a weak reference to the object. When that reference gets zeroed, the MPS has determined that it is not reachable from any root (except via weak references)....
We do not currently have a system whereby you can receive a message when a weak reference is zeroed. In theory you could modify the [Manual Rank Guardian](https://github.com/Ravenbrook/mps/blob/master/design/poolmrg.txt) pool class...