locus.c: clarify currGenSerial and new diag in ChainCondemnAuto().
poolamc.c: fix spelling of amcScanNailed_loop diag.
diag.c: (comment only) more todo list.
Copied from Perforce
Change: 163127
ServerID: perforce.ravenbrook.com
un-tagged diags, every diag should end with \n.
poolamc.c: fix spelling of amcScanNailed_loop diag.
Copied from Perforce
Change: 163125
ServerID: perforce.ravenbrook.com
DIAG_SINGLEF, _FIRSTF, _MOREF, and _END: Tagged diagnostics, sent to
pseudo-stream "FilterStream" for buffering and filtering (diag.c,
config.h, mpm.c, mpm.h).
mpm: WriteF now uses Stream_fputc/s, not mps_lib_fputc/s. New
functions WriteF_v and WriteF_firstformat_v. New function
StringEqual(s1, s2).
trace.c, poolamc.c: TraceStart, traceFindGrey, amcScanNailed_loop
are now tagged diags.
Copied from Perforce
Change: 163124
ServerID: perforce.ravenbrook.com
20000 chars (10 screenfuls) in diag varieties, 1 char in others.
Handle diag->buf overflow (in fact was already handled; now tested;
in the always-on safety tests, use a condition that is verbatim
the same as the corresponding AVER).
Diag type: DiagSig, and AVERT(Diag, diag). Neater .rules.debug.
Copied from Perforce
Change: 163114
ServerID: perforce.ravenbrook.com
(tidyup) Move RulesGlobal to head of file; write instructions.
(tidyup) Move StringEqual into mpm.c (with StringLength); add AVER.
(cosmetic) Correct case of names: module-interface names begin
uppercase; local names begin lowercase. Tags should be C identifiers.
Copied from Perforce
Change: 163112
ServerID: perforce.ravenbrook.com
-DIAGTEST/*/*
will filter out all diags whose tags contain "DIAGTEST".
Unit test for PatternOccurs. (PatternOccurs used to be called
StringMatch).
Copied from Perforce
Change: 163111
ServerID: perforce.ravenbrook.com
the whole of a given diag, so memoize it (instead of repeating the
match for every line of the diag).
locus.c: new diag from ChainCondemnAuto.
trace.c: tidy up TraceStart diag, give traceFindGrey diag a tag.
Copied from Perforce
Change: 163077
ServerID: perforce.ravenbrook.com
diagnostic based on something on one of its lines. See RulesGlobalX
for an example. Implementation currently inefficient (scans whole
buffer for each line).
Copied from Perforce
Change: 163073
ServerID: perforce.ravenbrook.com
report helpfully if poor programmer forgot to end a tag.
FilterOutput: really filters now, but only on Tag.
Copied from Perforce
Change: 163070
ServerID: perforce.ravenbrook.com
and mps_lib_EOF.
diag.c:
Diag is a buffer capable of holding a diagnostic.
FilterStream can buffer and filter diagnostics.
Rule is a selection rule for filtering diagnostics.
FilterOutput does output (but does not apply the rules yet).
DiagStream can be switched to either FilterStream() or mps_lib_stdout().
Copied from Perforce
Change: 163067
ServerID: perforce.ravenbrook.com
diag.c: support tagging of diagnostics, and avoid having to
say DIAG_STREAM every time, with new macros:
DIAG_SINGLEF, DIAG_FIRSTF, DIAG_MOREF, DIAG_END.
mpm.c: new WriteF_firstformat_v required by DIAG_MOREF.
Copied from Perforce
Change: 163059
ServerID: perforce.ravenbrook.com
That is:
- TraceStart diagnostic showing chains, GenDescs, and PoolGens;
- TraceCreate calls traceCopySizes() to save a copy of each
GenDesc's newSize in a "newSizeAtCreate" field.
Copied from Perforce
Change: 163046
ServerID: perforce.ravenbrook.com
and ToTextBuffer), and fix DIAG in TraceStart to use ToString.
(Previous hack of using the start-message's buffer only works if
the client has enabled start messages).
Copied from Perforce
Change: 162964
ServerID: perforce.ravenbrook.com
always present in the source, even for builds (eg. non-diag
varieties) in which it is not invoked. (avoids ranlib warning on
xcppgc).
Copied from Perforce
Change: 162948
ServerID: perforce.ravenbrook.com
PoolTrivGrey knows that a white seg is an all-white seg, and
therefore needs no greying.
Copied from Perforce
Change: 162946
ServerID: perforce.ravenbrook.com
to loop. (A rare event, which might prompt a rare defect to appear).
This is diag developed for job001548, but worth leaving on by default
(in diag varieties only, natch).
Copied from Perforce
Change: 162939
ServerID: perforce.ravenbrook.com
trace.c: traceFindGrey_diag: wrap calls in DIAG(), prevent report
overflow, reduce report array to 20 chars, and use WriteF.
Copied from Perforce
Change: 162937
ServerID: perforce.ravenbrook.com
of gens, removing hardwired limit of 3.
vmArenaExtend(): diagnostic: report when VM arena is extended (#if0)
Copied from Perforce
Change: 162933
ServerID: perforce.ravenbrook.com