Gareth Rees
a488489ebc
Section title must be "document history" exactly if the manual inclusion is to work.
...
Copied from Perforce
Change: 187333
ServerID: perforce.ravenbrook.com
2014-10-21 23:57:00 +01:00
Gareth Rees
1b43cbb3aa
Update copy-pasted paragraph.
...
Copied from Perforce
Change: 187332
ServerID: perforce.ravenbrook.com
2014-10-21 23:56:06 +01:00
Gareth Rees
2d93c29675
Finish incomplete sentence.
...
Copied from Perforce
Change: 187331
ServerID: perforce.ravenbrook.com
2014-10-21 23:52:45 +01:00
Gareth Rees
ec5a597b71
Lock design is now up to date.
...
Copied from Perforce
Change: 187330
ServerID: perforce.ravenbrook.com
2014-10-21 23:46:48 +01:00
Gareth Rees
43bcbe13ca
Chapter on "porting the mps".
...
Copied from Perforce
Change: 187329
ServerID: perforce.ravenbrook.com
2014-10-21 23:45:58 +01:00
Gareth Rees
a59caaf1f7
Typo fixes and updates.
...
Copied from Perforce
Change: 187328
ServerID: perforce.ravenbrook.com
2014-10-21 23:42:05 +01:00
Gareth Rees
ac21069c8e
Add "contributing" section to the manual.
...
Copied from Perforce
Change: 187327
ServerID: perforce.ravenbrook.com
2014-10-21 23:41:02 +01:00
Gareth Rees
0635fa1a05
Bring lock module design up to date.
...
Copied from Perforce
Change: 187326
ServerID: perforce.ravenbrook.com
2014-10-21 23:32:57 +01:00
Gareth Rees
e7e69217c9
Design for the multi-threaded testing module.
...
Copied from Perforce
Change: 187323
ServerID: perforce.ravenbrook.com
2014-10-21 22:45:40 +01:00
Gareth Rees
e6fb28764c
Rename lockreleasempm to lockrelease. this name was changed because of a clash with a symbol in scriptworks, and that's no longer a concern. see < https://info.ravenbrook.com/project/mps/import/2001-09-27/mminfo/doc/meeting/general/1997-02-19 >. if we get symbol name clashes in future, we can try the .name.single strategy, or maybe objcopy --prefix.
...
Copied from Perforce
Change: 187322
ServerID: perforce.ravenbrook.com
2014-10-21 22:35:30 +01:00
Gareth Rees
0de8aab32d
Fix typo.
...
Copied from Perforce
Change: 187319
ServerID: perforce.ravenbrook.com
2014-10-21 17:10:53 +01:00
Gareth Rees
4a9f32347f
Put the protection interface in prot.h, and the stack probe interface into sp.h, to make it easier to write the "porting" chapter of the manual.
...
Copied from Perforce
Change: 187316
ServerID: perforce.ravenbrook.com
2014-10-21 16:44:19 +01:00
Gareth Rees
467f87ff38
Fix comments in the protection implementations (it looks as if these were copied and then not modified) and bring discussion of supported platforms up to date. add file guards where missing.
...
Copied from Perforce
Change: 187313
ServerID: perforce.ravenbrook.com
2014-10-21 15:10:42 +01:00
Gareth Rees
864885397b
Fix comment: "mac os x on x86_64 with clang" is xci6ll, not w3i6ll.
...
Copied from Perforce
Change: 187311
ServerID: perforce.ravenbrook.com
2014-10-21 14:24:55 +01:00
Gareth Rees
327a7dff39
Correct the error handling in the mps_fix_call example and in the mps_fix implementation.
...
Copied from Perforce
Change: 187308
ServerID: perforce.ravenbrook.com
2014-10-21 00:27:36 +01:00
Gareth Rees
58293e62e5
Remove note about mps_ap_create_v since this function is deprecated.
...
Correct the claims about the reserve and commit instruction sequences.
Copied from Perforce
Change: 187307
ServerID: perforce.ravenbrook.com
2014-10-21 00:05:27 +01:00
Gareth Rees
27e0443a99
Correct the example code for creating a virtual memory arena.
...
Copied from Perforce
Change: 187305
ServerID: perforce.ravenbrook.com
2014-10-20 23:39:49 +01:00
Gareth Rees
d2c7a515d6
Correct the number of keyword arguments.
...
Copied from Perforce
Change: 187304
ServerID: perforce.ravenbrook.com
2014-10-20 23:34:50 +01:00
Gareth Rees
833a385f0b
Remove link to documentation for time facilites on system 8. link was long dead, but available via the internet archive here: < https://web.archive.org/web/20000309161634/http://developer.apple.com/techpubs/mac/osutilities/osutilities-94.html#marker-9-32 >
...
Copied from Perforce
Change: 187301
ServerID: perforce.ravenbrook.com
2014-10-20 22:27:09 +01:00
Gareth Rees
3aab86f947
Simplify platform makefiles on windows, using a temporary makefile to work around nmake's lack of variable expansion in string replacement. this means that when adding a new part you no longer need to edit the platform makefiles, just commpre.nmk and commpost.nmk.
...
Copied from Perforce
Change: 187299
ServerID: perforce.ravenbrook.com
2014-10-20 19:15:57 +01:00
Gareth Rees
19744dfaec
Remove unused variable p1 (broke the build on gcc).
...
Copied from Perforce
Change: 187296
ServerID: perforce.ravenbrook.com
2014-10-20 16:50:02 +01:00
Gareth Rees
c2d6f32919
Remove unused variable obj1pip -- broke the compilation in gcc.
...
Copied from Perforce
Change: 187295
ServerID: perforce.ravenbrook.com
2014-10-20 16:45:45 +01:00
Gareth Rees
00aeff2d49
Call the "contracted" callback before destroying the chunk, as the arena is (briefly) invalid afterwards.
...
Copied from Perforce
Change: 187294
ServerID: perforce.ravenbrook.com
2014-10-20 16:40:32 +01:00
Gareth Rees
00f4c7068d
Remove duplicate function amcfix (and rename amcheaderfix to amcfix) so that we don't have the burden of maintaining two copies of this function.
...
Copied from Perforce
Change: 187293
ServerID: perforce.ravenbrook.com
2014-10-20 16:38:54 +01:00
Gareth Rees
11df5c9c12
Ignore .test directory.
...
Copied from Perforce
Change: 187289
ServerID: perforce.ravenbrook.com
2014-10-19 19:17:45 +01:00
Gareth Rees
e8740cb551
Fix intra-design links.
...
Copied from Perforce
Change: 187288
ServerID: perforce.ravenbrook.com
2014-10-19 19:16:31 +01:00
Gareth Rees
e7220f2ad7
Fix rest syntax.
...
Copied from Perforce
Change: 187286
ServerID: perforce.ravenbrook.com
2014-10-19 09:39:41 +01:00
Gareth Rees
7870122c9d
Rename locusprefhigh to locusprefhigh and so on, to follow < http://www.ravenbrook.com/project/mps/master/design/guide.impl.c.naming#capital-constant >
...
Copied from Perforce
Change: 187283
ServerID: perforce.ravenbrook.com
2014-10-19 09:19:43 +01:00
Gareth Rees
db203fb12b
Amc no longer keeps statistics about pages condemned and retained. if we need this kind of analysis, it would be better to add more telemetry until we can do the analysis offline.
...
Copied from Perforce
Change: 187274
ServerID: perforce.ravenbrook.com
2014-10-14 23:05:56 +01:00
Gareth Rees
423bb95e4c
Add constant mps_rm_prot_inner and document it.
...
Copied from Perforce
Change: 187271
ServerID: perforce.ravenbrook.com
2014-10-14 22:59:32 +01:00
Gareth Rees
411e38946d
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
e38d608024
Assert if you try to create a pool using a format from another arena, a pool using a chain from another arena, or a root using a thread from another arena.
...
Copied from Perforce
Change: 187268
ServerID: perforce.ravenbrook.com
2014-10-14 22:21:43 +01: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
e185863a15
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
03736f9f9e
Bring the discussion of avert up to date (it's not type-safe in the cool variety).
...
Copied from Perforce
Change: 187263
ServerID: perforce.ravenbrook.com
2014-10-14 10:59:58 +01:00
Gareth Rees
fe0cb03d0a
Oops, revert 187238.
...
Copied from Perforce
Change: 187257
ServerID: perforce.ravenbrook.com
2014-10-13 23:24:38 +01:00
Gareth Rees
5ed62f110b
Get the mmqa conerr tests working:
...
* Make sure all the test build and run.
* Add output specifications to the passing tests.
* New testset/conerr runs them all.
Copied from Perforce
Change: 187248
ServerID: perforce.ravenbrook.com
2014-10-13 21:34:12 +01:00
Gareth Rees
4372c9d685
Move <stdlib.h> from testlib.c to testlib.h, for the benefit of test cases that need to use malloc.
...
Copied from Perforce
Change: 187247
ServerID: perforce.ravenbrook.com
2014-10-13 21:33:42 +01:00
Gareth Rees
e0d7895262
Get the mmqa argerr tests working:
...
* Make sure all the test build and run.
* Add output specifications to the passing tests.
* New testset/argerr runs them all.
Copied from Perforce
Change: 187245
ServerID: perforce.ravenbrook.com
2014-10-13 18:35:11 +01:00
Gareth Rees
8fc96e7609
Mmqa test harness improvements:
...
* Don't compile for profiling (not needed at the moment)
* Compile with -Wno-unused -Wno-missing-prototypes on OS X (so that argerr/146.c and similar test cases will build).
* Output conclusion for the first failing result (in alphabetical order), rather than whatever comes out of the hash table first.
* Don't gather symbols from block comments, otherwise we can't specify results like "assertcond = mps_pool_o != NULL" as MMQA will think that mps_pool_o is a missing symbol.
Copied from Perforce
Change: 187244
ServerID: perforce.ravenbrook.com
2014-10-13 18:33:37 +01:00
Gareth Rees
2d27354d20
Use pointeradd to express the condition in mps_commit -- it expands to the same code, and better conveys the intention.
...
Copied from Perforce
Change: 187242
ServerID: perforce.ravenbrook.com
2014-10-13 17:36:44 +01:00
Gareth Rees
bcb1f01827
Check that unitsize and extendby are greater than zero. (zero is a likely argument to pass by accident if you get your varargs wrong.)
...
Copied from Perforce
Change: 187241
ServerID: perforce.ravenbrook.com
2014-10-13 17:35:57 +01:00
Gareth Rees
a56d8411d9
Check arena argument in ldadd, ldmerge and ldisstaleany.
...
Copied from Perforce
Change: 187240
ServerID: perforce.ravenbrook.com
2014-10-13 17:31:50 +01:00
Gareth Rees
e3f6b44cc2
Don't use avert unless the arena lock is held (it's not thread-safe in all varieties). add design explaining this.
...
Copied from Perforce
Change: 187238
ServerID: perforce.ravenbrook.com
2014-10-13 14:36:15 +01:00
Gareth Rees
057342d73e
Add links to the lisp machine manual.
...
Copied from Perforce
Change: 187227
ServerID: perforce.ravenbrook.com
2014-10-12 23:40:13 +01:00
Gareth Rees
44df7f7c50
No need to keep mps_ap_s in sync any more: the definition is shared (mpmst.h includes mpslib.h which includes mps.h).
...
Copied from Perforce
Change: 187221
ServerID: perforce.ravenbrook.com
2014-10-12 13:57:31 +01:00
Gareth Rees
c76b658f04
Link snc in the file-at-a-time builds, so that they match the mps.c builds.
...
Copied from Perforce
Change: 187208
ServerID: perforce.ravenbrook.com
2014-10-11 12:08:24 +01:00
Gareth Rees
d2b4f1992f
Turn off the spare memory on the mvff pool so that it returns freed memory to the arena immediately.
...
Free the initial allocations so that the result determination is accurate.
Copied from Perforce
Change: 187206
ServerID: perforce.ravenbrook.com
2014-10-11 00:57:28 +01:00
Gareth Rees
4b52294773
Specifying assertcond rather than assertline is likely to be more robust against code changes.
...
Copied from Perforce
Change: 187203
ServerID: perforce.ravenbrook.com
2014-10-10 22:55:48 +01:00
Gareth Rees
fbf748a1b7
Need to take spare committed memory into account when checking that memory usage hasn't gone up after a collection.
...
Copied from Perforce
Change: 187202
ServerID: perforce.ravenbrook.com
2014-10-10 22:43:07 +01:00