Gareth Rees
5559f36540
Fix indentation of second clause of license.
2020-08-30 10:13:06 +01:00
Gareth Rees
5165d75267
Use https: instead of http: when linking to the ravenbrook web site.
2020-08-30 10:13:03 +01:00
Peter Jackson
1d00afac81
Publish licence updates in code directory.
...
Publish minor changes to readme and configure files in main directory.
Main directory and code directory licence texts are now fully updated.
Copied from Perforce
Change: 196994
2020-06-11 17:05:40 +01:00
Gareth Rees
0b324c158b
Use tags with dots; regularize design references from code.
...
Copied from Perforce
Change: 195761
2018-11-29 17:12:29 +00:00
Gareth Rees
bf95401d06
Remove unused function rangetreeinit and rename rangetreeinitfromrange to rangetreeinit.
...
Copied from Perforce
Change: 195094
2018-09-18 15:37:13 +01:00
Gareth Rees
9643a1f090
New land functions landinsertsteal and landdeletesteal and unit test.
...
Use LandInsertSteal instead of arenaFreeLandInsertSteal.
Add regression test for job004102.
Copied from Perforce
Change: 194861
2018-08-02 13:16:15 +01:00
Gareth Rees
83256946e6
Merge branch 2016-03-27/cbs-tidy into the master sources.
...
Copied from Perforce
Change: 194572
2018-07-10 15:31:25 +01:00
Gareth Rees
2b469ef694
Merge branch/2018-07-04/mvff-perf into the master sources.
...
Copied from Perforce
Change: 194439
2018-07-05 12:54:16 +01:00
Gareth Rees
2f8172e981
Restore descriptive version of comment as suggested by rb < https://info.ravenbrook.com/mail/2018/07/05/11-08-52/0/ >
...
Copied from Perforce
Change: 194436
2018-07-05 12:17:41 +01:00
Gareth Rees
7f41cd5d86
Rename "node" to "rangetree" as suggested in review by gdr < https://info.ravenbrook.com/mail/2018/07/05/10-17-35/0/ >
...
Get Xcode builds working.
Add rangetree.[ch] to the source code index.
Copied from Perforce
Change: 194434
2018-07-05 12:06:47 +01:00
Gareth Rees
b9fc9e7ce1
Fix issues identified in review by gdr < https://info.ravenbrook.com/mail/2018/07/05/10-17-35/0/ >
...
Copied from Perforce
Change: 194430
2018-07-05 11:20:51 +01:00
Gareth Rees
5076ca4c04
Fix the check of the cbs overlapping insertion failure case: in order for the inserted block not to overlap it's right neighbour, its limit must be <= the base of the right neighbour (not the limit as previously written). this mistake was introduced accidentally in change 182344.
...
Copied from Perforce
Change: 194427
2018-07-05 10:43:47 +01:00
Gareth Rees
683c79008c
Improve performance of mvff in hot builds by:
...
1. Using macros to bypass PoolFree and Land* generic functions.
2. Compiling out assertions on functions on the critical paths for manual allocation and freeing.
3. Taking advantage of the fact that splay->updateNode does not change during a splay operation.
Copied from Perforce
Change: 194397
2018-07-04 14:30:22 +01:00
Gareth Rees
d02a8f277e
Check that segment classes override sets of related methods.
...
Add missing finish functions amcSegFinish, mrgLinkSegFinish, mrgRefSegFinish, sncSegFinish.
Check all class constructor results.
Copied from Perforce
Change: 193055
ServerID: perforce.ravenbrook.com
2017-03-30 11:37:41 +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
ed1ecb1bf5
Converting land describe methods to specialize instdescribe.
...
Copied from Perforce
Change: 191607
ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
ea53ac476e
Converting land finish methods to specialize instfinish.
...
Copied from Perforce
Change: 191606
ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +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
af037d483c
Squelching bogus type pun warnings from gcc 4.7 to get a clean build in travis ci.
...
Adding platform XCI6GC to allow faster debugging of CI builds on Mac OS X with MacPorts GCC 4.7 installed. Not otherwise supported.
Copied from Perforce
Change: 191357
ServerID: perforce.ravenbrook.com
2016-04-20 13:59:23 +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
Gareth Rees
aabe4992eb
Compile out statistic declarations in non-statistical varieties (at the cost of some syntax checking).
...
Add some missing STATISTIC guards where statistics are used.
Add design documentation.
Avoid unnecessary distinction between STATISTIC and STATISTIC_STAT (both result in statements).
Copied from Perforce
Change: 191178
ServerID: perforce.ravenbrook.com
2016-04-16 12:07:10 +01:00
Richard Brooksby
a57965d825
Moving setclassofpoly to after initialization, to be more like signature setting. partially complete.
...
Copied from Perforce
Change: 190992
ServerID: perforce.ravenbrook.com
2016-04-12 13:15:54 +01:00
Richard Brooksby
5a5c0f2138
Removing various fixed fixmes.
...
Copied from Perforce
Change: 190957
ServerID: perforce.ravenbrook.com
2016-04-11 18:58:36 +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
309fb8ec64
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
bfa333b5c0
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
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
6a732464b3
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
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
c4bcc24759
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
aab7cc0a18
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
4207b9ebf8
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
e5efe2849f
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
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
a5ab876f8b
Using nodeinit and nodefinish in cbs.c.
...
Copied from Perforce
Change: 190681
ServerID: perforce.ravenbrook.com
2016-04-04 21:10:10 +01:00
Richard Brooksby
ad3105b7fb
Moving cbs tree functions on nodes to node.c.
...
Copied from Perforce
Change: 190677
ServerID: perforce.ravenbrook.com
2016-04-04 20:20:01 +01:00
Richard Brooksby
6c7e9fa9c9
Converting cbs to use node as the base type of its blocks.
...
Copied from Perforce
Change: 190491
ServerID: perforce.ravenbrook.com
2016-03-28 12:00:55 +01:00
Richard Brooksby
4bb7e0a2cb
Using rangecheck rather than checking base and limit ourselves.
...
Copied from Perforce
Change: 190465
ServerID: perforce.ravenbrook.com
2016-03-27 16:33:28 +01:00
Richard Brooksby
83d8dd0694
Simplifying local cbsblock to block.
...
Copied from Perforce
Change: 190462
ServerID: perforce.ravenbrook.com
2016-03-27 16:33:27 +01:00
Richard Brooksby
6e958b7fab
Converting cbs blocks to use ranges.
...
Copied from Perforce
Change: 190461
ServerID: perforce.ravenbrook.com
2016-03-27 16:33:27 +01: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
Richard Brooksby
aa0412e071
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
1710a3bb97
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
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
1608519fe2
Fix problems identified by nb in review < https://info.ravenbrook.com/mail/2014/07/24/12-21-04/0/ >.
...
Copied from Perforce
Change: 186945
ServerID: perforce.ravenbrook.com
2014-08-06 16:18:34 +01:00
Gareth Rees
5268331bdd
Add landiterateanddelete method for the cbs land classes.
...
Use this to check that all memory has been returned to the arena in MVFFFinish.
Copied from Perforce
Change: 186616
ServerID: perforce.ravenbrook.com
2014-06-14 12:44:11 +01:00
Gareth Rees
9268a0adc8
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