1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-24 22:40:51 -08:00
Commit graph

377 commits

Author SHA1 Message Date
Richard Kistruck
7dbf5d4ce5 Mps br/vmarenagrow:
mps_arena_vm_growth should give MPS_RES_PARAM is desired < minimum

Copied from Perforce
 Change: 164898
 ServerID: perforce.ravenbrook.com
2008-05-01 15:22:01 +01:00
Richard Kistruck
2e4e79bb81 Mps br/vmarenagrow: some work-in-progress on visualising gangs:
ArenaTractsInZones - count how many tracts are used/free in each zone
GangsetFullDescribe, GangFullDescribe - show usage
mpm.c: new WriteF tag "u" is space-padded 3-column unsigned

Copied from Perforce
 Change: 164896
 ServerID: perforce.ravenbrook.com
2008-05-01 15:06:20 +01:00
Richard Kistruck
674a918cd2 Mps br/vmarenagrow: better diag output when a gang grabs a new zone
(show the whole gangset, with new zone highlighted)

Copied from Perforce
 Change: 164252
 ServerID: perforce.ravenbrook.com
2008-02-29 19:04:24 +00:00
Richard Kistruck
463a4b271a Mps br/vmarenagrow: make segprefdescribe fit on one line
Copied from Perforce
 Change: 164251
 ServerID: perforce.ravenbrook.com
2008-02-29 19:02:48 +00:00
Richard Kistruck
81c587a08b Mps br/vmarenagrow: trace.c: tracestartwhytotextbuffer: add aver.
(must have len > 0; remove incorrect comment)

Copied from Perforce
 Change: 164250
 ServerID: perforce.ravenbrook.com
2008-02-29 19:01:56 +00:00
Richard Kistruck
db6ee6a903 Mps br/vmarenagrow: [work in progress] arenavm.c using gangset, gangs.
Copied from Perforce
 Change: 164243
 ServerID: perforce.ravenbrook.com
2008-02-28 18:56:32 +00:00
Richard Kistruck
6334f1194c Mps br/vmarenagrow: [broken - work-in-progress checkin]
Gangset and Gangs.  SegPrefZonesOpen/Next/Close to try various 
zonesets appropriate to the SegPref's gang.

Copied from Perforce
 Change: 164231
 ServerID: perforce.ravenbrook.com
2008-02-27 19:52:56 +00:00
Richard Kistruck
2df9f2fd76 Mps br/vmarenagrow: arenavm: keep track of non-gen gangs; diag when
a gang grabs another zone.

Copied from Perforce
 Change: 164150
 ServerID: perforce.ravenbrook.com
2008-02-21 21:47:13 +00:00
Richard Kistruck
a0151685c5 Mps br/vmarenagrow: write segprefdescribe()
Copied from Perforce
 Change: 164149
 ServerID: perforce.ravenbrook.com
2008-02-21 21:38:28 +00:00
Richard Kistruck
c0474db9b0 Mps br/vmarenagrow: make chunkdescribe use chunkzonesnextarea; report
total _allocatable_ grains (ie. excluding ullage = pages used for chunk 
internal datastructures), and how many of those grains are free.

Copied from Perforce
 Change: 164088
 ServerID: perforce.ravenbrook.com
2008-02-15 12:07:00 +00:00
Richard Kistruck
b7f8d5f082 Mps: move zoneset-in-chunk calculating code out of pagesfindfreeinzones,
to create new function ChunkZonesNextArea

Copied from Perforce
 Change: 164081
 ServerID: perforce.ravenbrook.com
2008-02-14 18:54:04 +00:00
Richard Kistruck
d6c40722d8 Mps br/vmarenagrow: chunkdescribe, now called from arenadescribe.
ChunkDescribe shows all chunks in the arena, and for each chunk shows 
how many arena grains (~= pages) there in each zone in the chunk.

Copied from Perforce
 Change: 163853
 ServerID: perforce.ravenbrook.com
2008-01-28 19:31:04 +00:00
Richard Kistruck
ac11966232 Mps br/vmarenagrow: vmarena.c: tabs!
Copied from Perforce
 Change: 163814
 ServerID: perforce.ravenbrook.com
2008-01-24 18:29:38 +00:00
Richard Kistruck
cceca63b37 Mps br/vmarenagrow: arenadescribe: show zonesize.
(Also, move comment: the test that Fails if the chunk is so small 
that stripes are smaller than pages is in arena.c, not arenavm.c)

Copied from Perforce
 Change: 163813
 ServerID: perforce.ravenbrook.com
2008-01-24 18:25:29 +00:00
Richard Kistruck
55d760f72d Mps br/vmarenagrow: addrspacedescribe -- shows first few hundred regions of address-space in our process,
called from VMCreate.

Copied from Perforce
 Change: 163790
 ServerID: perforce.ravenbrook.com
2008-01-21 18:25:07 +00:00
Richard Kistruck
e7d629a1ad Mps 163759
Copied from Perforce
 Change: 163759
 ServerID: perforce.ravenbrook.com
2008-01-11 19:34:31 +00:00
Richard Kistruck
3a14119529 mps br/vmarenagrow: remove test code that fails deliberately.
Copied from Perforce
 Change: 163758
 ServerID: perforce.ravenbrook.com
2008-01-11 19:29:34 +00:00
Richard Kistruck
16ef264ac5 Mps br/vmarenagrow: drop slices from top half of request until
satisified.  WARNING: contains test code that fails deliberately.

Copied from Perforce
 Change: 163757
 ServerID: perforce.ravenbrook.com
2008-01-11 19:25:17 +00:00
Richard Kistruck
e6d96d223a Mps br/vmarenagrow: new mps interface function mps_arena_vm_growth():
Client specifies extendBy and (new) extendMin.
(extendMin does not work yet)

Copied from Perforce
 Change: 163753
 ServerID: perforce.ravenbrook.com
2008-01-11 16:07:51 +00:00
Richard Kistruck
f5b59d2a82 Mps exp-163669
Copied from Perforce
 Change: 163669
 ServerID: perforce.ravenbrook.com
2007-12-21 15:36:58 +00:00
Richard Kistruck
96407dd039 mps br/vmarenagrow: arenavm.c: vmchunkcreate() -- remove
deliberately-failing test code.

Copied from Perforce
 Change: 163668
 ServerID: perforce.ravenbrook.com
2007-12-21 13:15:06 +00:00
Richard Kistruck
441111bb2f mps br/vmarenagrow: arenavm.c: vmarenaextend() tidy up code to
choose chunk size, with a consistent, smaller (10%) .vmchunk.overhead 
 estimate.  Tidy diag and comments.

Copied from Perforce
 Change: 163667
 ServerID: perforce.ravenbrook.com
2007-12-21 13:08:37 +00:00
Richard Kistruck
475754161a mps br/vmarenagrow: arenavm.c: vmarenaextend() will:
a) choose a better chunkSize;
   b) fallback to smaller sizes if request fails.
 *** WARNING ***
 VMChunkCreate() has test-code that deliberately fails requests,
 for testing this functionality.

Copied from Perforce
 Change: 163665
 ServerID: perforce.ravenbrook.com
2007-12-20 18:00:50 +00:00
Richard Kistruck
2b625511be mps br/vmarenagrow: amcss.c: mps_arena_create /4 => too-small
arena, to test arena growth.  Also, make testArenaSIZE a round 
 number (2^20 not 10^3*2^10).

Copied from Perforce
 Change: 163664
 ServerID: perforce.ravenbrook.com
2007-12-20 17:23:26 +00:00
Richard Kistruck
62faafe4fd Mps br/vmarenagrow: arena.c: arenadescribe() now reports total arena
reserved and committed (only the two most important things to know!).
Transgression: This entails calling the ArenaReserved function.

Copied from Perforce
 Change: 163663
 ServerID: perforce.ravenbrook.com
2007-12-20 17:16:43 +00:00
Richard Kistruck
92a4109067 Mps br/vmarenagrow: arena.c: tabs
Copied from Perforce
 Change: 163658
 ServerID: perforce.ravenbrook.com
2007-12-19 18:48:27 +00:00
Richard Kistruck
e5034a17fb Mps poolabs: tabs! (whitespace only: replace tab with spaces)
Copied from Perforce
 Change: 163303
 ServerID: perforce.ravenbrook.com
2007-09-28 08:35:57 +01:00
Richard Kistruck
375c6fd064 Mps master: xcppgc.gmk remove outdated and unnecessary compiler flags.
Copied from Perforce
 Change: 163293
 ServerID: perforce.ravenbrook.com
2007-09-27 14:26:43 +01:00
Richard Kistruck
fe9b908f57 Mps master: xcppgc.cmk (comments only) add explanation of various
compiler flags added under job000601.

Copied from Perforce
 Change: 163287
 ServerID: perforce.ravenbrook.com
2007-09-26 15:44:42 +01:00
David Jones
d6d6a11ef7 Mps: adding uses of diag_decl so that variety=hi builds on os x.
Copied from Perforce
 Change: 163257
 ServerID: perforce.ravenbrook.com
2007-09-19 11:12:21 +01:00
Richard Kistruck
7776ff6176 Mps master: poolamc.c amcfix, amcheaderfix: correct bad shield
code (but badness was being masked by the shield cache; see 
job001706).  ShieldExpose(seg) once, and ShieldCover it once, so 
that _all_ .exposed.seg statements are between Expose and Cover.

Copied from Perforce
 Change: 163171
 ServerID: perforce.ravenbrook.com
2007-08-23 17:50:31 +01:00
Richard Kistruck
ffc4f125c9 Mps master: poolamc.c amcfix, amcheaderfix: (comment only) tag
with ".exposed.seg" statements that require that "seg" (that is: 
the 'from' seg) has been ShieldExposed.  (Preparatory to fixing 
job001706).

Copied from Perforce
 Change: 163170
 ServerID: perforce.ravenbrook.com
2007-08-23 17:28:16 +01:00
Richard Kistruck
ff8ab008ca Mps master: poolams.c amsdescribe: fix buggy diag output intoduced
in 1998 (change 19787).

Copied from Perforce
 Change: 163155
 ServerID: perforce.ravenbrook.com
2007-08-20 17:08:59 +01:00
Richard Kistruck
c31f20a6de Mps master: from br/diagtag:
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
2007-08-14 16:27:30 +01:00
Richard Kistruck
a1ecafc1f8 Mps br/diagtag: diag.c: (comment only) add to todo list: deprecate
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
2007-08-14 15:59:19 +01:00
Richard Kistruck
8bae9d7e8c Mps master: integ from br/diagtag:
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
2007-08-14 15:56:48 +01:00
Richard Kistruck
557026a790 Mps br/diagtag: diag_prefix_ in config.h, instead of hard-wired.
Note .filter-disable.

Copied from Perforce
 Change: 163119
 ServerID: perforce.ravenbrook.com
2007-08-14 13:31:46 +01:00
Richard Kistruck
2cbc8e1232 Mps br/diagtag: determine diag_buffer_size in config.h; space for
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
2007-08-13 18:07:30 +01:00
Richard Kistruck
d9d4f267df Mps br/diagtag: give helpful message if diag_end tag does not match.
(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
2007-08-13 16:54:40 +01:00
Richard Kistruck
c6663dcbff Mps br/diagtag: matchtag now uses patternoccurs, not stringequal, so
-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
2007-08-13 15:55:32 +01:00
Richard Kistruck
f27629ba7c Mps br/diagtag: .improve.empty-diag: if diag is empty, still allow
it to be output (if rules permit).  Rename FilterOutput as FilterStream_Output.

Copied from Perforce
 Change: 163110
 ServerID: perforce.ravenbrook.com
2007-08-13 15:05:39 +01:00
Richard Kistruck
34c5536455 Mps br/diagtag: note .improve.empty-diag. to do list.
Run diag_test() on first tag begin.

Copied from Perforce
 Change: 163105
 ServerID: perforce.ravenbrook.com
2007-08-11 16:26:51 +01:00
Richard Kistruck
05d91ccd0c Mps br/diagtag: diag.c: before first diag, output rules_diag: list
of all rules.  Aver FilterOutput non-reentrant.  Note: empty diags 
never output.

Copied from Perforce
 Change: 163104
 ServerID: perforce.ravenbrook.com
2007-08-11 12:53:50 +01:00
Richard Kistruck
95761082f4 Mps br/diagtag: (fix w3i3mv build) remove unused vars, unused static fn diagoutput, and add int->char cast in _fputc
Copied from Perforce
 Change: 163083
 ServerID: perforce.ravenbrook.com
2007-08-10 11:48:52 +01:00
Richard Kistruck
5a97a8309e Mps br/diagtag:
locus.c: slightly better ChainCondemnAuto diag.
poolamc.c: tag amcScanNailed-loop diag (as provoked by mpsicv).
(diag.c: (diag filter only) hide amcScanNailed-loop diag)

Copied from Perforce
 Change: 163082
 ServerID: perforce.ravenbrook.com
2007-08-10 10:53:32 +01:00
Richard Kistruck
3cf7d5d66a Mps br/diagtag: whether a rule matches tag and para is constant for
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
2007-08-09 16:41:59 +01:00
Richard Kistruck
2cb3edd1c3 Mps br/diagtag: just a curious log file, see whiteset at line 356
Copied from Perforce
 Change: 163076
 ServerID: perforce.ravenbrook.com
2007-08-09 16:34:08 +01:00
Richard Kistruck
af1160663a Mps br/diagtag: matchpara lets you choose to see the whole of a
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
2007-08-09 15:40:53 +01:00
Richard Kistruck
e4eafb743e Mps br/diagtag: matchline and lineoutput give line-by-line filtering.
Copied from Perforce
 Change: 163072
 ServerID: perforce.ravenbrook.com
2007-08-09 14:45:14 +01:00
Richard Kistruck
c311f178cc Mps br/diagtag: oops! back out accidental checkin of trace.c with
test code in.

Copied from Perforce
 Change: 163071
 ServerID: perforce.ravenbrook.com
2007-08-09 13:45:26 +01:00