1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-28 08:11:05 -08:00

Better cross-reference.

Copied from Perforce
 Change: 187426
 ServerID: perforce.ravenbrook.com
This commit is contained in:
Gareth Rees 2014-10-31 15:10:00 +00:00
parent 87eeceac03
commit 45db0ef1bf
2 changed files with 9 additions and 9 deletions

View file

@ -46,7 +46,7 @@ Res StackScan(ScanState ss, Addr *stackBot)
AVERT(ScanState, ss);
arena = ss->arena;
/* See <design/ss/#anal.entry-points> */
/* See <design/ss/#sol.entry-points.fragile> */
AVER(arena->scAtArenaEnter);
if (arena->scAtArenaEnter) {
res = stackScanInner(arena, ss, stackBot, arena->scAtArenaEnter);

View file

@ -74,6 +74,14 @@ mail.richard.2012-08-03.14-36_.
_`.sol.entry-points`: To meet `.req.stack.entry`_, the mutator's
registers and stack must be recorded when the mutator enters the MPS.
_`.sol.entry-points.fragile`: The analysis of which entry points might
need to save the context (see `.anal.entry-points`_ below) is fragile.
It might be incorrect now, or become incomplete if we refactor the
internals of tracing and polling. As a defence against errors of this
form, ``StackScan()`` asserts that the context was saved, but if the
client program continues from the assertion, it saves the context
anyway and continues.
_`.sol.registers`: Implementations spill the root registers onto the
stack so that they can be scanned there.
@ -110,14 +118,6 @@ introduces a dependency on that library.
.. _here: http://stackoverflow.com/questions/3592914/how-can-i-implement-cooperative-lightweight-threading-with-c-on-mac-os-x
_`.sol.entry-points.fragile`: The analysis of which entry points might
need to save the context (see `.anal.entry-points`_ below) is fragile.
It might be incorrect now, or become incomplete if we refactor the
internals of tracing and polling. As a defence against errors of this
form, ``StackScan()`` asserts that the context was saved, but if the
client program continues from the assertion, it saves the context
anyway and continues.
Analysis
--------