1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-25 23:10:47 -08:00
Commit graph

110 commits

Author SHA1 Message Date
Gareth Rees
20e756ada8 Catch-up merge from master sources to branch/2016-04-21/amswalk.
Copied from Perforce
 Change: 192181
 ServerID: perforce.ravenbrook.com
2016-09-05 15:48:47 +01:00
Gareth Rees
c898410a63 Catch-up merge from the master sources to branch/2016-04-23/inst-methods.
Copied from Perforce
 Change: 192176
 ServerID: perforce.ravenbrook.com
2016-09-05 15:31:34 +01:00
Gareth Rees
e3951fca1e Add _critical to assertions on the critical path for manual-allocation-bound programs using mvff. this brings the hot/rash ratio for "djbench mvff" down from over 150% to about 130%.
Copied from Perforce
 Change: 192148
 ServerID: perforce.ravenbrook.com
2016-09-04 19:20:05 +01:00
Richard Brooksby
bda168dfb8 Renaming class fields called "protocol" to "instclassstruct" in line with usual mps convention.
Copied from Perforce
 Change: 191685
 ServerID: perforce.ravenbrook.com
2016-04-27 14:25:54 +01:00
Richard Brooksby
de1f3907cc Converting pool finish methods to specialize instfinish, and fixing up quite a few calls to use nextmethod.
Copied from Perforce
 Change: 191605
 ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
6217b5b3a5 Converting pool describe methods to specialise instdescribe.
Copied from Perforce
 Change: 191604
 ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
b765128003 Turning pool describe methods the right way in, so that they call next-method.
Copied from Perforce
 Change: 191587
 ServerID: perforce.ravenbrook.com
2016-04-23 00:22:46 +01:00
Gareth Rees
67e11c96e5 Catch-up merge from master sources to branch/2016-04-21/amswalk.
Copied from Perforce
 Change: 191531
 ServerID: perforce.ravenbrook.com
2016-04-21 20:56:05 +01:00
Gareth Rees
82690aa532 Untabify.
Copied from Perforce
 Change: 191528
 ServerID: perforce.ravenbrook.com
2016-04-21 20:50:45 +01:00
Richard Brooksby
4be15a5b0b Catch-up merge from master sources to branch/2016-04-08/protidying.
Copied from Perforce
 Change: 191471
 ServerID: perforce.ravenbrook.com
2016-04-21 14:46:10 +01:00
Richard Brooksby
d249780b2d Enforcing rules about class overrides that were dropped in changelist 190837.
Copied from Perforce
 Change: 191453
 ServerID: perforce.ravenbrook.com
2016-04-21 13:41:27 +01:00
Richard Brooksby
d618f77b2e Removing unused (and useless) poolfix macro.
Copied from Perforce
 Change: 191407
 ServerID: perforce.ravenbrook.com
2016-04-21 08:59:52 +01:00
Richard Brooksby
65a770e91f Avoid using "class" as an identifier, since tools like lldb parse expressions as c++, and it can't be named.
Copied from Perforce
 Change: 191304
 ServerID: perforce.ravenbrook.com
2016-04-19 23:00:02 +01:00
Richard Brooksby
1c0704e3c8 Catch-up merge from master sources to branch/2016-04-08/protidying.
Copied from Perforce
 Change: 191251
 ServerID: perforce.ravenbrook.com
2016-04-19 16:37:51 +01:00
Gareth Rees
77b12d3ee7 Catch-up merge from master sources to branch/2014-10-11/snc.
Copied from Perforce
 Change: 191065
 ServerID: perforce.ravenbrook.com
2016-04-13 13:07:19 +01:00
Richard Brooksby
a8483f5163 Moving pool format argument picking into abstract pool initialization, so that code is shared.
Copied from Perforce
 Change: 191004
 ServerID: perforce.ravenbrook.com
2016-04-12 15:07:26 +01:00
Richard Brooksby
30cd64730a Automatically setting pool->fix on first fix, to avoid tricky initialization.
Copied from Perforce
 Change: 190986
 ServerID: perforce.ravenbrook.com
2016-04-12 12:44:54 +01:00
Richard Brooksby
87aed22778 Clearing up various fixmes by making the type naming inconsistency clearly visible and intentional.
Copied from Perforce
 Change: 190980
 ServerID: perforce.ravenbrook.com
2016-04-12 10:51:41 +01:00
Richard Brooksby
b4fbe7ba92 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
ef6e2970ca 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
8d776db4f2 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
6d8d4373c9 Checking that classes are the right kind using signatures.
Copied from Perforce
 Change: 190936
 ServerID: perforce.ravenbrook.com
2016-04-11 17:38:47 +01:00
Richard Brooksby
a148490cfa 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
d303ed0aeb 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
907494aa56 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
cf29dcc98d 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
9480adaf7c Fixing mustbea to not return a void *.
Copied from Perforce
 Change: 190849
 ServerID: perforce.ravenbrook.com
2016-04-08 20:29:33 +01:00
Richard Brooksby
c92bf9505a 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
d3d57e828d 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
484d3b77bf Removing always-zero offset from pool class structure.
Copied from Perforce
 Change: 190819
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
590c23a935 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
9583c0f68a Merging branch mps/branch/2016-03-13/without-reservation into master sources.
Copied from Perforce
 Change: 190106
 ServerID: perforce.ravenbrook.com
2016-03-15 13:19:27 +00:00
Richard Brooksby
26da5b46b0 Catch-up merge from master sources to branch/2014-10-13/format.
Copied from Perforce
 Change: 190060
 ServerID: perforce.ravenbrook.com
2016-03-15 10:02:21 +00:00
Richard Brooksby
07987ab579 Eliminating withreservoirpermit and all its variants.
Copied from Perforce
 Change: 190005
 ServerID: perforce.ravenbrook.com
2016-03-13 21:04:01 +00:00
Gareth Rees
6521d927eb Add accesssetcheck and check accessset arguments.
Copied from Perforce
 Change: 188251
 ServerID: perforce.ravenbrook.com
2015-09-04 20:15:36 +01:00
Gareth Rees
4ce030ad13 Use a reference count to discover cases where a format is deleted when a pool is still using it, as suggested by rb <https://info.ravenbrook.com/mail/2014/10/16/13-35-06/0/>.
Copied from Perforce
 Change: 187279
 ServerID: perforce.ravenbrook.com
2014-10-16 22:59:00 +01:00
Gareth Rees
72a38afb68 Remove unused pool {fill,empty}{mutator,internal}size statistics.
Copied from Perforce
 Change: 187270
 ServerID: perforce.ravenbrook.com
2014-10-14 22:37:55 +01:00
Gareth Rees
0c42e3aa23 Improved assertion messages when a required keyword argument is not found. instead of "unreachable code", the assertion message is the name of the missing key.
Copied from Perforce
 Change: 187267
 ServerID: perforce.ravenbrook.com
2014-10-14 22:05:30 +01:00
Gareth Rees
7db46bbb3f Check alignment of address given to poolfree.
Copied from Perforce
 Change: 187265
 ServerID: perforce.ravenbrook.com
2014-10-14 16:54:10 +01:00
Gareth Rees
ae805ce16e Simpler and more robust to add the pool to the formatring in poolinit, after we know that the initialization has succeeded.
Copied from Perforce
 Change: 187261
 ServerID: perforce.ravenbrook.com
2014-10-14 10:07:41 +01:00
Gareth Rees
f65f1db83e Attach the pools using a format to a ring in the format, so that when we destroy the format, we can check that no pools are using it.
Copied from Perforce
 Change: 187253
 ServerID: perforce.ravenbrook.com
2014-10-13 22:44:20 +01:00
Gareth Rees
9dc8bd1e70 Because of the requirement to make popped objects dead in a timely fashion, we can only implement lightweight pops to an address in the buffer. in particular we can't support pending pops, which means that there's no need for the fields in the allocation point that support pending pops.
Copied from Perforce
 Change: 187232
 ServerID: perforce.ravenbrook.com
2014-10-13 12:46:28 +01:00
Gareth Rees
00229b0479 Use the method suffix only for methods in classes; use visitor or function for other kinds of functions.
New document guide.impl.c.naming sets out the rules for naming.

Copied from Perforce
 Change: 187159
 ServerID: perforce.ravenbrook.com
2014-10-07 23:48:55 +01:00
Gareth Rees
c968255f1e 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
1f517274f3 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
David Lovemore
392e6a056a Catch up merge from master/...@186577
Copied from Perforce
 Change: 186582
 ServerID: perforce.ravenbrook.com
2014-06-13 16:38:20 +01:00
Gareth Rees
8b012960dc 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
a13a1aa1df 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
0f5c639e59 Fix problems identified by rb in review <https://info.ravenbrook.com/mail/2014/06/13/13-52-14/0/>.
Copied from Perforce
 Change: 186570
 ServerID: perforce.ravenbrook.com
2014-06-13 15:16:02 +01:00
Gareth Rees
08f341fcc9 Catch-up merge from master sources @186540 to branch/2014-05-17/chunk-tree.
Copied from Perforce
 Change: 186546
 ServerID: perforce.ravenbrook.com
2014-06-12 17:55:16 +01:00