1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-22 05:51:11 -07:00
Commit graph

108 commits

Author SHA1 Message Date
Richard Brooksby
b75de04efc Reducing boilerplate code using mustbea.
Copied from Perforce
 Change: 190970
 ServerID: perforce.ravenbrook.com
2016-04-12 00:58:04 +01:00
Richard Brooksby
d31995246d Making classes into instances of kinds, allowing subclass tests to be used to validate classes as well.
Copied from Perforce
 Change: 190958
 ServerID: perforce.ravenbrook.com
2016-04-11 20:58:39 +01:00
Richard Brooksby
a724e16626 Removing various fixed fixmes.
Copied from Perforce
 Change: 190957
 ServerID: perforce.ravenbrook.com
2016-04-11 18:58:36 +01:00
Richard Brooksby
12d4dfda16 Eliminating generated classof* and setclassof* functions in favour of checked poly macros.
Copied from Perforce
 Change: 190938
 ServerID: perforce.ravenbrook.com
2016-04-11 18:06:47 +01:00
Richard Brooksby
62533b8c71 Converting many uses of classof* to method macros.
Copied from Perforce
 Change: 190937
 ServerID: perforce.ravenbrook.com
2016-04-11 17:59:36 +01:00
Richard Brooksby
5307650059 Implementing nextmethod and replacing all uses of superclass with it.
Copied from Perforce
 Change: 190935
 ServerID: perforce.ravenbrook.com
2016-04-11 16:54:39 +01:00
Richard Brooksby
a38d6e7178 Making all static next-method calls look similar.
Copied from Perforce
 Change: 190934
 ServerID: perforce.ravenbrook.com
2016-04-11 16:35:43 +01:00
Richard Brooksby
78ad983c55 Adding classname for use in describe methods.
Fixing error path to use class destroy in ArenaCreate.
Using MustBeA to reduce boiler plate in land classes.

Copied from Perforce
 Change: 190904
 ServerID: perforce.ravenbrook.com
2016-04-11 14:06:28 +01:00
Richard Brooksby
5627213751 Fixing initialisation in segment splitting to use instinit.
Copied from Perforce
 Change: 190887
 ServerID: perforce.ravenbrook.com
2016-04-11 06:37:02 +01:00
Richard Brooksby
d5f2a9f2d7 Turning segment init methods the right way in, so that they each call the next method up the class hierarchy.
Copied from Perforce
 Change: 190882
 ServerID: perforce.ravenbrook.com
2016-04-10 23:23:49 +01:00
Richard Brooksby
3dd201bf47 Turning pool init methods the right way in, so that they each call the next method up the class hierarchy.
Copied from Perforce
 Change: 190858
 ServerID: perforce.ravenbrook.com
2016-04-10 17:49:08 +01:00
Richard Brooksby
111136891e Adding instinit and instfinish and using them as next methods in seginit, segfinish, etc.
Copied from Perforce
 Change: 190857
 ServerID: perforce.ravenbrook.com
2016-04-10 15:33:17 +01:00
Richard Brooksby
3154cbed7d Making arenas properly inherit from instances, and converting remaining method calls to use the method macro, while noting uses which are inside-out.
Copied from Perforce
 Change: 190856
 ServerID: perforce.ravenbrook.com
2016-04-10 14:00:55 +01:00
Richard Brooksby
d462d4b36d Repairing superclass by taking a kind, which can later be checked.
Copied from Perforce
 Change: 190850
 ServerID: perforce.ravenbrook.com
2016-04-10 12:28:51 +01:00
Richard Brooksby
5a0c818945 Explicitly making inststruct the prefix of instances, eliminating pointer punning of class pointers, and reducing likelihood of editing errors.
Copied from Perforce
 Change: 190830
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
43b3f1a5cb Generating a static superclass mapping and eliminating other superclass macros.
Copied from Perforce
 Change: 190827
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
1d28eaff07 Eliminating the concept of "alias classes" in favour of "kinds".
Copied from Perforce
 Change: 190825
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
2e191a810e Referring to classes by their base identifiers.
Copied from Perforce
 Change: 190823
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
09e73dd1da Renaming protocolinst to inst and protocolclass to instclass to make naming consistent with other classes.
Copied from Perforce
 Change: 190822
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
e041841a88 Moving common fields into the base class, starting with the class name.
Copied from Perforce
 Change: 190816
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
dcc027082e Fixing horrible intialization of segment class by poking before calling seginit.
Copied from Perforce
 Change: 190694
 ServerID: perforce.ravenbrook.com
2016-04-04 23:28:28 +01:00
Richard Brooksby
49534e914f Protecting some segment accessor macros with rvalue.
Removing duplicate definition of SegPoolRing.

Copied from Perforce
 Change: 190642
 ServerID: perforce.ravenbrook.com
2016-04-02 15:53:57 +01:00
Richard Brooksby
fffb906f11 Fixing default behaviour for merging segments with differing summaries and therefore write barriers.
Copied from Perforce
 Change: 190629
 ServerID: perforce.ravenbrook.com
2016-04-02 09:18:58 +01:00
Richard Brooksby
ff35af0f15 Merging branch/2016-03-13/defer-write-barrier into master sources.
Copied from Perforce
 Change: 190380
 ServerID: perforce.ravenbrook.com
2016-03-24 12:07:20 +00:00
Richard Brooksby
25bfc7b131 Responding to review by nb <https://info.ravenbrook.com/mail/2016/03/22/17-19-03/0/>.
Copied from Perforce
 Change: 190349
 ServerID: perforce.ravenbrook.com
2016-03-23 17:31:59 +00:00
Richard Brooksby
8bfd101b34 Responding to review by gdr <https://info.ravenbrook.com/mail/2016/03/21/21-05-49/0/>.
Copied from Perforce
 Change: 190336
 ServerID: perforce.ravenbrook.com
2016-03-23 14:23:14 +00:00
Richard Brooksby
88affc312f Added discussion of when it might be good to resume the mutator early in design.mps.shield.improv.resume.
Copied from Perforce
 Change: 190329
 ServerID: perforce.ravenbrook.com
2016-03-23 13:11:19 +00:00
Richard Brooksby
dd96d7cc5c Responding to review by gdr <https://info.ravenbrook.com/mail/2016/03/21/20-20-15/0/>.
Copied from Perforce
 Change: 190307
 ServerID: perforce.ravenbrook.com
2016-03-22 16:32:10 +00:00
Richard Brooksby
52857f843f Fixing splitting and merging for queued segments.
Copied from Perforce
 Change: 190228
 ServerID: perforce.ravenbrook.com
2016-03-20 01:22:15 +00:00
Richard Brooksby
b66267ec5c Renaming shield cache to shield queue.
Copied from Perforce
 Change: 190220
 ServerID: perforce.ravenbrook.com
2016-03-20 00:46:59 +00:00
Richard Brooksby
1f361c4fc7 Separating flag for segment in shield cache from depth, clarifying code and optimising segfree somewhat.
Copied from Perforce
 Change: 190194
 ServerID: perforce.ravenbrook.com
2016-03-19 13:42:09 +00:00
Richard Brooksby
28c9da0066 Avoid shield flush when finishing a segment that isn't in the cache.
Copied from Perforce
 Change: 190193
 ServerID: perforce.ravenbrook.com
2016-03-19 10:19:14 +00:00
Richard Brooksby
6d4aca1182 Updating shield design and actually checking invariants in code.
Copied from Perforce
 Change: 190192
 ServerID: perforce.ravenbrook.com
2016-03-19 10:15:10 +00:00
Richard Brooksby
7ee20c87a6 Catch-up merge from master sources to branch/2016-03-13/defer-write-barrier.
Copied from Perforce
 Change: 190175
 ServerID: perforce.ravenbrook.com
2016-03-17 20:14:47 +00:00
Richard Brooksby
1025b28674 Eliminating withreservoirpermit and all its variants.
Copied from Perforce
 Change: 190005
 ServerID: perforce.ravenbrook.com
2016-03-13 21:04:01 +00:00
Richard Brooksby
5656c312a9 Simplifying segsetsummary by not requiring it to calculate the previous shield mode.
Copied from Perforce
 Change: 189963
 ServerID: perforce.ravenbrook.com
2016-03-13 14:09:38 +00:00
Richard Brooksby
83fc7866c9 Tidying up naming of write barrier deferral.
Copied from Perforce
 Change: 189960
 ServerID: perforce.ravenbrook.com
2016-03-13 13:26:24 +00:00
Richard Brooksby
54de13427b Integrating write barrier deferral changes from branch/2014-08-18/non-incremental.
p4 integrate branch/2014-08-18/non-incremental/...@186975,186988 branch/2016-03-13/defer-write-barrier/...

Copied from Perforce
 Change: 189943
 ServerID: perforce.ravenbrook.com
2016-03-13 11:27:21 +00:00
Gareth Rees
a4beea6f11 Prefer avert(type, value) to aver(typecheck(value)).
Copied from Perforce
 Change: 188157
 ServerID: perforce.ravenbrook.com
2015-08-21 11:14:27 +01:00
Gareth Rees
23dda3d644 New constant rankmin gives the minimum rank. use this (rather than 0 or rankambig) to better express the intention.
Copied from Perforce
 Change: 187156
 ServerID: perforce.ravenbrook.com
2014-10-07 22:31:12 +01:00
Gareth Rees
2d0f425428 Ensure that code of the form if (condition) statement; is split over two lines, so that it is possible to set a breakpoint on the statement in a debugger.
This change was agreed in 1997 (see <https://info.ravenbrook.com/project/mps/mail/1997/08/19/13-44/0.txt>), so it's about time it was implemented.

Copied from Perforce
 Change: 187071
 ServerID: perforce.ravenbrook.com
2014-09-27 22:57:02 +01:00
Gareth Rees
10afd0ee3b Cast all arguments to the writef function to make it easy to check that none of the necessary casts have been omitted.
New macro WriteFYesNo makes it easy to describe a Boolean.
Describe more structure elements for ABQ, Arena, Buffer, Format, MFS, Root, Seg.

Copied from Perforce
 Change: 187063
 ServerID: perforce.ravenbrook.com
2014-09-27 12:49:30 +01:00
Gareth Rees
456d747b61 Rename segpref to locuspref -- this structure describes preferences for the placement of any kind of address, not just segments.
Add LocusPrefDescribe and use it in MVFFDescribe.

Copied from Perforce
 Change: 187061
 ServerID: perforce.ravenbrook.com
2014-09-27 11:27:00 +01:00
David Lovemore
476ce386fe Added more control over write barrier. in particular separated scans after a hit.
Copied from Perforce
 Change: 186988
 ServerID: perforce.ravenbrook.com
2014-08-27 11:21:18 +01:00
David Lovemore
d2439c4be7 Added experimental control over write barrier eagerness.
The write barrier is only raised after three unnecessary scans.

Copied from Perforce
 Change: 186975
 ServerID: perforce.ravenbrook.com
2014-08-21 15:53:57 +01:00
David Lovemore
9da3ff7bee Add mps_key_arena_incremental option.
Avoid read and write barrier in non-incremental mode.
Add --non-incremental option to gcbench

Copied from Perforce
 Change: 186969
 ServerID: perforce.ravenbrook.com
2014-08-20 13:03:20 +01:00
Gareth Rees
1b7de24015 Some assertions with && crept back in. split them up so that we get as much information as possible from an assertion failure.
Copied from Perforce
 Change: 186577
 ServerID: perforce.ravenbrook.com
2014-06-13 15:52:50 +01:00
Gareth Rees
bf97a59af1 Catch-up merge from master sources @186564 to branch/2014-06-11/grain.
Copied from Perforce
 Change: 186572
 ServerID: perforce.ravenbrook.com
2014-06-13 15:30:46 +01:00
Gareth Rees
bb44aa1f51 Catch-up merge from master sources @186528 to branch/2014-04-15/mvffnoseg.
Copied from Perforce
 Change: 186534
 ServerID: perforce.ravenbrook.com
2014-06-12 15:59:39 +01:00
Gareth Rees
c71e35f3c1 Catch-up merge from masters sources @186519 to branch/2014-04-17/describe.
Copied from Perforce
 Change: 186526
 ServerID: perforce.ravenbrook.com
2014-06-12 13:45:22 +01:00