1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-25 06:50:46 -08:00
Commit graph

489 commits

Author SHA1 Message Date
Richard Kistruck
9457df93db Mps br/timing: zmess.c subsumes and replaces fin1658a.c
Also improve comments in zmess.c.

Copied from Perforce
 Change: 166994
 ServerID: perforce.ravenbrook.com
2008-12-19 14:47:54 +00:00
Richard Kistruck
b0790cf19a Mps br/timing: rename z001989a.c as zmess.c
Copied from Perforce
 Change: 166993
 ServerID: perforce.ravenbrook.com
2008-12-19 14:27:48 +00:00
Richard Kistruck
538d4990e7 Mps br/timing: rename z001989a.c as zmessco.c
Copied from Perforce
 Change: 166991
 ServerID: perforce.ravenbrook.com
2008-12-19 14:08:14 +00:00
Richard Kistruck
179962bb9c Mps br/timing traceanc.c: timca_remote: undo testing-only additions
to TraceIdMessagesCreate.

Copied from Perforce
 Change: 166960
 ServerID: perforce.ravenbrook.com
2008-12-17 17:27:01 +00:00
Richard Kistruck
eb1cca20e4 Mps br/timing z001989a.c: timca_remote -- traceidmessagescreate alloc remote control
In low memory situations, ControlAlloc may be unable to allocate 
memory for GC messages.  This needs to work flawlessly, but is 
hard to test.  To simulate it for testing purposes, do macro-magic 
in traceanc.c, before the definition of TraceIdMessagesCreate.
Test all designed behaviour of TraceIdMessagesCreate failing.
See <design/message-gc#lifecycle>.

Copied from Perforce
 Change: 166959
 ServerID: perforce.ravenbrook.com
2008-12-17 17:17:55 +00:00
Richard Kistruck
bf3c873639 Mps br/timing (revert previous local-only change @166956)
Copied from Perforce
 Change: 166957
 ServerID: perforce.ravenbrook.com
2008-12-16 18:01:18 +00:00
Richard Kistruck
bace1c7bc1 Mps br/timing (local only - must revert) hack trace.c so it does not
pre-allocate GC messages after the first trace, and verify that 
everything still works, droppedMessages is incremented, and reported 
as non-zero (in diagnostic varieties only) by global.c on 
ArenaDestroy.  Test passes.

Copied from Perforce
 Change: 166956
 ServerID: perforce.ravenbrook.com
2008-12-16 17:59:50 +00:00
Richard Kistruck
33546a36cc Mps br/timing global.c: report dropped messages (currently in diagnostic varieties only)
Copied from Perforce
 Change: 166955
 ServerID: perforce.ravenbrook.com
2008-12-16 17:54:53 +00:00
Richard Kistruck
99b95ba8da Mps br/timing (local only) diag.c: turn off tracestart and tracefindgrey
Copied from Perforce
 Change: 166954
 ServerID: perforce.ravenbrook.com
2008-12-16 17:53:46 +00:00
Richard Kistruck
cbe281b73c Mps br/timing z001989a.c: "!" means get but don't discarrd messages,
to check MPS copes okay.  See .discard.
Also: improve comments.

Copied from Perforce
 Change: 166953
 ServerID: perforce.ravenbrook.com
2008-12-16 17:46:45 +00:00
Richard Kistruck
cd8f0ed2ad Mps br/timing global.c: new diag "globalspreparetodestroy", reports if message queue not empty.
Copied from Perforce
 Change: 166952
 ServerID: perforce.ravenbrook.com
2008-12-16 16:20:16 +00:00
Richard Kistruck
aac003454d Mps br/timing traceanc.c: tracestartmessagedelete must controlfree,
NOT call traceStartMessageInit.

Copied from Perforce
 Change: 166951
 ServerID: perforce.ravenbrook.com
2008-12-16 16:14:17 +00:00
Richard Kistruck
9092e0b2bb Mps br/diag arena.c: arenadestroy diag = controldescribe.
(p4 integ -f //info.ravenbrook.com/project/mps/branch/2008-03-11/auto_header/code/arena.chttps://github.com/Ravenbrook/mps/issues/3,https://github.com/Ravenbrook/mps/issues/5 arena.c)

Copied from Perforce
 Change: 166950
 ServerID: perforce.ravenbrook.com
2008-12-16 16:09:43 +00:00
Richard Kistruck
c57379f7ab Mps br/timing z001989a.c: oops, re-enable test of delayeed getting
of messages.  Demonstrates fix for job001989.

Copied from Perforce
 Change: 166919
 ServerID: perforce.ravenbrook.com
2008-12-11 16:08:47 +00:00
Richard Kistruck
ac7a39432c Mps br/timing traceidmessages: create them at mps_arena_create time,
re-create them immediately after a trace sends its last message.
Store them, one per TraceId, in ArenaStruct.  Cope correctly if they 
cannot be created (ControlAlloc fails).  Destroy them correctly on 
mps_arena_destroy.  See job001989 and design/message-gc#lifecycle
(not yet written).

Copied from Perforce
 Change: 166918
 ServerID: perforce.ravenbrook.com
2008-12-11 16:06:14 +00:00
Richard Kistruck
f5e8b732ad mps br/timing traceanc: (tidying only) improve comments and variable
names.

Copied from Perforce
 Change: 166915
 ServerID: perforce.ravenbrook.com
2008-12-10 10:32:29 +00:00
Richard Kistruck
72dae9faed Mps br/timing traceanc: trace.c needs tracestartwhytostring
(for .variety.di only, as it happens)

Copied from Perforce
 Change: 166912
 ServerID: perforce.ravenbrook.com
2008-12-09 17:18:09 +00:00
Richard Kistruck
77ea63625a Mps br/timing: traceanc.c -- all this ancillary stuff was making
trace.c very cluttered.  Put it here instead.

Copied from Perforce
 Change: 166911
 ServerID: perforce.ravenbrook.com
2008-12-09 16:55:22 +00:00
Richard Kistruck
bfdd2aca9f Mps br/timing: delete w3{al,pp}mv.nmk -- they are long dead.
Copied from Perforce
 Change: 166907
 ServerID: perforce.ravenbrook.com
2008-12-09 16:03:03 +00:00
Richard Kistruck
b7c8350b53 Mps br/timing traceanc.c (create) ancillary trace-related code that
is not essential to Trace objects.  (p4 integ'd from trace.c to 
preserve ancestry).

Copied from Perforce
 Change: 166900
 ServerID: perforce.ravenbrook.com
2008-12-08 15:37:40 +00:00
Richard Kistruck
0bae3c904b Mps br/timing z001989a: report() checks found message types match
expected ones, in order.  Temporarily ifdef-out failing job001989 
tests.

Copied from Perforce
 Change: 166884
 ServerID: perforce.ravenbrook.com
2008-12-06 10:37:38 +00:00
Richard Kistruck
f70f64c16b Mps br/timing z001989a: get collection begin/end messages.
FAILS: thereby demonstrating defect job001989.

Copied from Perforce
 Change: 166881
 ServerID: perforce.ravenbrook.com
2008-12-05 22:14:56 +00:00
Richard Kistruck
c1419eddb7 Mps br/timing z001989a: make f drop ref for one object, lo or hi alternately.
Copied from Perforce
 Change: 166880
 ServerID: perforce.ravenbrook.com
2008-12-05 21:45:43 +00:00
Richard Kistruck
30c6ad1d7d Mps br/timing: z001989a.c: each script should run with a new arena
and objects.  So functions are now:
main
testscriptA
testscriptB
testscriptC
FAILS: intended failure of final script (to show that it does catch 
failures).

Copied from Perforce
 Change: 166877
 ServerID: perforce.ravenbrook.com
2008-12-05 18:04:03 +00:00
Richard Kistruck
eead2f757b Mps br/timing: new test z001989a.c, for job001989: mps _gc_start messages may cause assert or infinite loop
Add it to makefiles.
Make a start on test file:
  main
  main2
  test
  testscript
So far, only counts messages, does not get _gc or _gs_start, does not 
yet test finalization messages.  But works, so useful checkpoint.

Copied from Perforce
 Change: 166876
 ServerID: perforce.ravenbrook.com
2008-12-05 17:07:26 +00:00
Richard Kistruck
d70fc55aa7 Mps br/timing: new test z001989a.c, for job001989: mps _gc_start messages may cause assert or infinite loop
Copied from Perforce
 Change: 166875
 ServerID: perforce.ravenbrook.com
2008-12-05 14:54:16 +00:00
Richard Kistruck
f44928d383 Mps br/timing: clear up mistakes in fin1658a.c
use DYLAN_* and make_dylan_vector facilities from fmtdytst
remove exact root p -- illegal reference to an incomplete object
use stack scanning instead
rename root as myroot to avoid confusion with mps root objects

Copied from Perforce
 Change: 166864
 ServerID: perforce.ravenbrook.com
2008-12-04 16:24:57 +00:00
Richard Kistruck
e4dfcfcd12 Mps br/timing: hack finaltest.c, to show gcstart bug job001989
Copied from Perforce
 Change: 166855
 ServerID: perforce.ravenbrook.com
2008-12-02 15:03:45 +00:00
Richard Kistruck
b08941eb4f Mps br/timing: (cosmetic):
message.c: rename MessageClocked() as MessageIsClocked()
check.h: better name in future improvement comments

Copied from Perforce
 Change: 166801
 ServerID: perforce.ravenbrook.com
2008-11-24 16:53:12 +00:00
Richard Kistruck
c7cc77b06b Mps br/timing: move field "messagetype type" out of messagestruct
and into MessageClassStruct.

Copied from Perforce
 Change: 166795
 ServerID: perforce.ravenbrook.com
2008-11-24 15:44:27 +00:00
Richard Kistruck
92ed922a71 Mps br/timing: exp-166704
Copied from Perforce
 Change: 166704
 ServerID: perforce.ravenbrook.com
2008-11-12 17:00:11 +00:00
Richard Kistruck
a563a76204 Mps br/timing: mps_alert_collection_set() -- client sets a callback
function; MPS calls it synchronously on collection start/stop 
(immediately after posting start/stop message).  The callback 
receives two ints: alertcode (start|stop; see mps.h), and whycode 
(trace->why).  Note: callback is also called for heap walk 
start/stop.
amcss.c: show start/stop alerts.

Copied from Perforce
 Change: 166703
 ServerID: perforce.ravenbrook.com
2008-11-12 15:07:04 +00:00
Richard Kistruck
08fb5a0526 Mps br/timing: messageclocked(), used in messagecheck and to prevent
numerous messages (namely: finalization messages) being timestamped.

Copied from Perforce
 Change: 166702
 ServerID: perforce.ravenbrook.com
2008-11-12 10:02:52 +00:00
Richard Kistruck
c2d5420ea6 Mps br/timing: new clocknow() wrapper for mps_clock(), clockspersec();
use Clock in arena step (not Word).

Copied from Perforce
 Change: 166701
 ServerID: perforce.ravenbrook.com
2008-11-12 09:26:48 +00:00
Richard Kistruck
38d28de534 Mps br/timing: new type "clock", internal equivalent of mps_clock_t.
Used for a field in messages.  (More uses to follow).

Copied from Perforce
 Change: 166697
 ServerID: perforce.ravenbrook.com
2008-11-11 16:57:30 +00:00
Richard Kistruck
32031684e2 Mps br/timing: mpsi_check(): check that external and internal messsage types match.
Copied from Perforce
 Change: 166696
 ServerID: perforce.ravenbrook.com
2008-11-11 16:22:26 +00:00
Richard Kistruck
752f83c827 Mps br/timing: finalcv.c: verify that message clock is 0 (unset)
for finalization messages.

Copied from Perforce
 Change: 166695
 ServerID: perforce.ravenbrook.com
2008-11-11 15:28:28 +00:00
Richard Kistruck
d26f14f316 Mps br/timing: do not set postedclock for finalization msgs.
Copied from Perforce
 Change: 166690
 ServerID: perforce.ravenbrook.com
2008-11-11 10:39:53 +00:00
Richard Kistruck
19bd114373 Mps br/timing: amcss output changes:
- Keep counts of both collection start messages and collection end 
  messages.  Upon receipt of these messages, format the collection 
  start/end reports as 'brackets' (makes it easier to see whether 
  allocation continues during the collection or not).
- If mps_collections has changed, report() messages before doing 
  anything else.
- (source code clarity) Guess that the naked "4" in the 
  mps_arena_has_addr test means "hitsWanted", and label it.

Copied from Perforce
 Change: 166689
 ServerID: perforce.ravenbrook.com
2008-11-11 10:31:48 +00:00
Richard Kistruck
55c7940bdb Mps br/timing:
message.c: maintain postedClock field, set it with mps_clock() at post time;
  amcss.c: call and display mps_message_clock() on _gc_start & _gc messages.

Copied from Perforce
 Change: 166677
 ServerID: perforce.ravenbrook.com
2008-11-07 16:11:37 +00:00
Richard Kistruck
eec7b1abfd Mps br/timing: (cosmetic) re-format report()'s switch on message type
to comply with design/cstyle.

Copied from Perforce
 Change: 166676
 ServerID: perforce.ravenbrook.com
2008-11-07 15:22:24 +00:00
Richard Kistruck
4e270b68fa mps br/timing: tabs in header files. (p4 diff -db -- confirms whitespace changes only).
Copied from Perforce
 Change: 166674
 ServerID: perforce.ravenbrook.com
2008-11-07 13:58:56 +00:00
Richard Kistruck
b79ab788a2 mps br/timing: tabs in source files. (p4 diff -db -- confirms whitespace changes only).
Copied from Perforce
 Change: 166673
 ServerID: perforce.ravenbrook.com
2008-11-07 13:56:12 +00:00
Richard Kistruck
718a46bb8d Mps br/timing: tabs in test source files. (p4 diff -db -- confirms whitespace changes only).
Copied from Perforce
 Change: 166671
 ServerID: perforce.ravenbrook.com
2008-11-07 13:45:50 +00:00
Richard Kistruck
2d3ffb7ca5 Mps br/timing: (tabs) amcss.c
Copied from Perforce
 Change: 166670
 ServerID: perforce.ravenbrook.com
2008-11-07 13:37:23 +00:00
Richard Kistruck
b3b771bceb Mps br/timing: message.c: (comment only) remove wrong copy-pasted comment
Copied from Perforce
 Change: 166669
 ServerID: perforce.ravenbrook.com
2008-11-07 13:17:35 +00:00
Richard Kistruck
62fb0f32ae Mps br/timing: hack in mps_clock_t
(Should go via new Clock type in mpmtypes, mpsi_check(), etc).

Copied from Perforce
 Change: 166591
 ServerID: perforce.ravenbrook.com
2008-10-31 17:14:37 +00:00
Richard Kistruck
f5c3940658 Mps br/timing: (re-order file contents) arrange message functions
into a consistent order: 
 - internal (MPM) interface -- functions for message originator;
 - delivery (client) interface -- functions for recipient;
 - message methods.

Copied from Perforce
 Change: 166589
 ServerID: perforce.ravenbrook.com
2008-10-31 12:23:24 +00:00
Richard Kistruck
9ac6629ba5 Mps br/timing: (*sigh*) have to back out everything (mpslib.h and
mpmst.h) to check it still builds, having rearranged
message functions into a consistent order.

Copied from Perforce
 Change: 166588
 ServerID: perforce.ravenbrook.com
2008-10-31 12:18:44 +00:00
Richard Kistruck
859507ba63 Mps br/timing: back out mps.h too: i want to rearrange
message functions into a consistent order first

Copied from Perforce
 Change: 166587
 ServerID: perforce.ravenbrook.com
2008-10-31 11:52:44 +00:00