1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-25 00:07:09 -07:00
Commit graph

124 commits

Author SHA1 Message Date
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
a56de59509 Generating type-safe functions for getting and setting the class of instances.
Fixing warning revealed by GCC that I wasn't actually checking classes after init.
Fixing abstract classes so that they pass their own checks!

Copied from Perforce
 Change: 190837
 ServerID: perforce.ravenbrook.com
2016-04-08 19:50:12 +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
298addf910 Implementing isa, mustbea, couldbea, and reshaping the land classes to put the init, finish, and describe methods the right way in.
Copied from Perforce
 Change: 190826
 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
32de0701e0 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
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
c1abe0e9fd Abstracting class declarations and references to classes.
Copied from Perforce
 Change: 190812
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
7c1e988d2b Documenting and checking constraints on mps_key_align on manual pools.
Copied from Perforce
 Change: 190472
 ServerID: perforce.ravenbrook.com
2016-03-27 20:48:38 +01: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
804f15dead Removing the mostly unused size component of the closure convention.
Copied from Perforce
 Change: 189503
 ServerID: perforce.ravenbrook.com
2016-03-01 17:20:50 +00:00
Gareth Rees
66dfd1a69a 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
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
39e8b866cf Rename mps_class_t to mps_pool_class_t for clarity.
Retain a typedef for mps_class_t for backwards compatibility.

Copied from Perforce
 Change: 187065
 ServerID: perforce.ravenbrook.com
2014-09-27 13:37:38 +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
Gareth Rees
dd2986db96 Remove obsolete comment.
Copied from Perforce
 Change: 186607
 ServerID: perforce.ravenbrook.com
2014-06-13 23:56:25 +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
266a75b639 Catch-up merge from master sources @186536 to branch/2014-05-15/size.
Copied from Perforce
 Change: 186539
 ServerID: perforce.ravenbrook.com
2014-06-12 16:46:36 +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
a94a92f9a2 Fix problems noted by nb in review <https://info.ravenbrook.com/mail/2014/06/11/20-47-37/0/>
Copied from Perforce
 Change: 186533
 ServerID: perforce.ravenbrook.com
2014-06-12 15:53:55 +01:00
Gareth Rees
181fe2d26a Use xyzpool macros systematically as suggested by nb in <https://info.ravenbrook.com/mail/2014/06/11/20-47-37/0/>
Copied from Perforce
 Change: 186529
 ServerID: perforce.ravenbrook.com
2014-06-12 14:25:00 +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
Gareth Rees
41e2d84377 Rename "arena alignment" to "arena grain size" to avoid confusion with ordinary structure alignment.
Copied from Perforce
 Change: 186503
 ServerID: perforce.ravenbrook.com
2014-06-11 17:13:03 +01:00
Gareth Rees
dbc6f9cd32 Catch-up merge from branch/2014-04-15/mvffnoseg @186485 to branch/2014-05-15/size.
Copied from Perforce
 Change: 186487
 ServerID: perforce.ravenbrook.com
2014-06-11 13:17:14 +01:00
Gareth Rees
f5cf804050 Rename mvtfailover to mvtfreeland, as suggested by rb in review.
Copied from Perforce
 Change: 186485
 ServerID: perforce.ravenbrook.com
2014-06-11 12:47:13 +01:00
Gareth Rees
365e431f21 Catch-up merge from master sources @186481 to branch/2014-04-15/mvffnoseg.
Copied from Perforce
 Change: 186484
 ServerID: perforce.ravenbrook.com
2014-06-11 12:42:58 +01:00
Gareth Rees
4113048403 Catch-up merge from master sources @186460 to branch/2014-04-08/align.
Copied from Perforce
 Change: 186461
 ServerID: perforce.ravenbrook.com
2014-06-09 19:26:31 +01:00
Gareth Rees
3c486bd581 Fix problems identified by rb in review <https://info.ravenbrook.com/mail/2014/06/04/15-13-24/0/>.
Copied from Perforce
 Change: 186449
 ServerID: perforce.ravenbrook.com
2014-06-08 20:28:33 +01:00
Gareth Rees
d6b83892af Remove unused pool class attributes.
Bring method descriptions up to date in pool class design.

Copied from Perforce
 Change: 186446
 ServerID: perforce.ravenbrook.com
2014-06-08 19:54:24 +01:00
Gareth Rees
331d260bfd Catch-up merge from master sources @186436 to branch/2014-04-08/align.
Copied from Perforce
 Change: 186439
 ServerID: perforce.ravenbrook.com
2014-06-08 16:30:53 +01:00
Gareth Rees
b8c39883ea Pass and check special closure values unused_pointer, unused_size instead of null, 0.
Copied from Perforce
 Change: 186352
 ServerID: perforce.ravenbrook.com
2014-05-29 15:28:33 +01:00
Gareth Rees
d98336d308 Catch-up merge from master sources @186335 to branch/2014-03-30/addrset.
Copied from Perforce
 Change: 186348
 ServerID: perforce.ravenbrook.com
2014-05-29 14:58:50 +01:00
Gareth Rees
e35f3b1b6c Fix problems identified by dl in review <https://info.ravenbrook.com/mail/2014/05/23/12-44-54/0/>.
Copied from Perforce
 Change: 186300
 ServerID: perforce.ravenbrook.com
2014-05-25 20:49:22 +01:00
Gareth Rees
5f848d0404 Split land iteration into two functions, one which deletes ranges, the other which does not.
Copied from Perforce
 Change: 186298
 ServerID: perforce.ravenbrook.com
2014-05-25 19:26:48 +01:00
Gareth Rees
ac89be6519 Ignore or use the result of landiterate.
Copied from Perforce
 Change: 186166
 ServerID: perforce.ravenbrook.com
2014-05-18 22:50:22 +01:00
Gareth Rees
0bbc3befd8 Remove unused macros ("unless" and "when").
Copied from Perforce
 Change: 186120
 ServerID: perforce.ravenbrook.com
2014-05-15 17:35:27 +01:00
Gareth Rees
16ccef5e2d New public functions mps_pool_total_size and mps_pool_free_size.
Old (undocumented) functions mps_{mv,mvff,mvt}_size and mps_{mv,mvff,mvt}_free_size are now macros for the new public functions.
New pool methods PoolTotalSize and PoolFreeSize, with implementations for public pool classes except SNC.
Coverage of the new functions in apss and mpmss for the manual pool classes, and in finaltest for the automatic pool classes.

Copied from Perforce
 Change: 186118
 ServerID: perforce.ravenbrook.com
2014-05-15 17:01:59 +01:00
Gareth Rees
7e22bed98f Merge branch/2014-04-08/align into branch/2014-05-15/size.
Copied from Perforce
 Change: 186116
 ServerID: perforce.ravenbrook.com
2014-05-15 14:54:36 +01:00
Gareth Rees
883f4a4c3f Catch-up merge from master sources @186077 to branch/2014-03-30/addrset.
Copied from Perforce
 Change: 186081
 ServerID: perforce.ravenbrook.com
2014-05-13 16:21:39 +01:00
Gareth Rees
2b41ec58db Catch-up merge from master sources @185999 to branch/2014-04-17/describe.
Copied from Perforce
 Change: 186003
 ServerID: perforce.ravenbrook.com
2014-05-11 18:33:02 +01:00
Gareth Rees
add3e4bf93 Consistent order stream, depth.
Copied from Perforce
 Change: 186001
 ServerID: perforce.ravenbrook.com
2014-05-11 18:30:23 +01:00
Gareth Rees
c44f2d6a20 Correct indentation of describe output by passing depth parameter to describe functions and to writef.
Call Describe functions from test cases so that we get coverage.

Copied from Perforce
 Change: 186000
 ServerID: perforce.ravenbrook.com
2014-05-11 18:20:38 +01:00
Gareth Rees
4ed8190265 Back out change 185626 (violates the design.mps.writef.snazzy).
Copied from Perforce
 Change: 185941
 ServerID: perforce.ravenbrook.com
2014-05-02 12:44:31 +01:00
Gareth Rees
4c655eba6a Fix rash build on os x by adding the unused attribute to functions declared static that are not called in the rash variety.
Copied from Perforce
 Change: 185915
 ServerID: perforce.ravenbrook.com
2014-05-01 12:18:00 +01:00
Gareth Rees
d83fbf6b09 Correct indentation of describe output.
Copied from Perforce
 Change: 185626
 ServerID: perforce.ravenbrook.com
2014-04-17 13:36:42 +01:00
Gareth Rees
0abdd8ae47 Catch-up merge from master/...@185556 to branch/2014-03-30/addrset.
Copied from Perforce
 Change: 185563
 ServerID: perforce.ravenbrook.com
2014-04-15 13:14:50 +01:00
Gareth Rees
e933748bd6 Mvt does not actually need to use gcsegs: in fact, gcsegs create difficulties because buffers need to be detached. so switch to using ordinary segs just like mvff.
Copied from Perforce
 Change: 185556
 ServerID: perforce.ravenbrook.com
2014-04-15 12:41:10 +01:00