Gareth Rees
eba3fdff52
New mmqa command debug compiles a test case and launches the debugger.
...
Copied from Perforce
Change: 192290
ServerID: perforce.ravenbrook.com
2016-09-12 12:26:40 +01:00
Gareth Rees
3f13486e08
Usability improvements for mmqa:
...
* -i option (MPS_INCLUDE_DIR) now defaults to the code directory relative to the test harness location.
* -p option (PLATFORM) is now a six-character platform code for consistency with the rest of the MPS.
* New -v option (VARIETY) for specifying cool/hot/rash.
* -l option (MPS_LINK_OBJ) now defaults to the appropriate object file for the platform and variety.
* The object file is built automatically.
* If $Id$ of a test file is longer than 70 characters, cut characters out of the middle rather than off the end.
* Eliminate obsolete option -prod (MPS_PRODUCT).
* Support for FreeBSD.
Copied from Perforce
Change: 192285
ServerID: perforce.ravenbrook.com
2016-09-12 11:55:36 +01:00
Gareth Rees
0867fe4dde
Branching master to branch/2016-09-12/job004020.
...
Copied from Perforce
Change: 192275
ServerID: perforce.ravenbrook.com
2016-09-12 09:48:55 +01:00
Gareth Rees
8523b6f666
Remove support for linux 2.4 and 2.5 (these versions used linuxthreads). linux is now supported from version 2.6 onwards (these versions use posix threads).
...
Copied from Perforce
Change: 192240
ServerID: perforce.ravenbrook.com
2016-09-08 11:36:02 +01:00
Gareth Rees
665d8197f0
Use area roots (instead of a thread root) to ensure that objects are finalized reliably even in the hot variety.
...
Copied from Perforce
Change: 192235
ServerID: perforce.ravenbrook.com
2016-09-08 10:57:07 +01:00
Gareth Rees
419ba15d42
Change 192148 (the fix for job004017) caused the hot variety to compile out assertions on the critical path in manual-allocation-bound programs, which caused various mmqa test cases to fail in the hot variety. move these failing tests to the coolonly testset.
...
Copied from Perforce
Change: 192234
ServerID: perforce.ravenbrook.com
2016-09-08 10:55:59 +01:00
Gareth Rees
c2e44cb103
The awl pool contains only weak references to objects that died, so the mps may be able to deduce (via its summary) that it does not need to be condemned, even to collect the world.
...
Copied from Perforce
Change: 192226
ServerID: perforce.ravenbrook.com
2016-09-07 10:20:39 +01:00
Gareth Rees
250fe26b81
Fix typo.
...
Copied from Perforce
Change: 192209
ServerID: perforce.ravenbrook.com
2016-09-05 23:50:29 +01:00
Gareth Rees
fc35c9b54a
Correct architectures.
...
Copied from Perforce
Change: 192208
ServerID: perforce.ravenbrook.com
2016-09-05 23:47:18 +01:00
Gareth Rees
e63d701374
Job003889 was fixed, so conerr/12.c passes.
...
Copied from Perforce
Change: 192207
ServerID: perforce.ravenbrook.com
2016-09-05 23:45:20 +01:00
Gareth Rees
d1708855b0
More glossary cross-references.
...
Copied from Perforce
Change: 192201
ServerID: perforce.ravenbrook.com
2016-09-05 16:45:40 +01:00
Gareth Rees
efd0973743
Document the gcwoah security issue.
...
Copied from Perforce
Change: 192200
ServerID: perforce.ravenbrook.com
2016-09-05 16:45:30 +01:00
Gareth Rees
6764d08810
Merge branch/2016-04-13/mortality.
...
Copied from Perforce
Change: 192195
ServerID: perforce.ravenbrook.com
2016-09-05 16:23:15 +01:00
Gareth Rees
7473718e0a
Catch-up merge from master sources to branch/2016-04-13/mortality.
...
Copied from Perforce
Change: 192192
ServerID: perforce.ravenbrook.com
2016-09-05 16:17:04 +01:00
Gareth Rees
eb4682aab3
Merge branch/2016-04-12/job004000.
...
Copied from Perforce
Change: 192191
ServerID: perforce.ravenbrook.com
2016-09-05 16:09:02 +01:00
Gareth Rees
89765a2d11
Describe fix for job004000 in the release notes.
...
Copied from Perforce
Change: 192190
ServerID: perforce.ravenbrook.com
2016-09-05 16:04:51 +01:00
Gareth Rees
331ec20beb
Catch-up merge from master sources to branch/2016-04-12/job004000.
...
Copied from Perforce
Change: 192187
ServerID: perforce.ravenbrook.com
2016-09-05 16:01:17 +01:00
Gareth Rees
e69de535d3
Merge branch/2016-04-21/amswalk.
...
Copied from Perforce
Change: 192184
ServerID: perforce.ravenbrook.com
2016-09-05 15:55:10 +01:00
Gareth Rees
90a16b56b1
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
d58750b23b
Merge branch/2016-04-23/inst-methods.
...
Copied from Perforce
Change: 192180
ServerID: perforce.ravenbrook.com
2016-09-05 15:38:50 +01:00
Gareth Rees
bc6bcde48f
Arenainit and arenafinish no longer exist under those names, and there is no longer anything special about them, so remove design documentation.
...
BufferFinishMethod and BufferDescribeMethod were removed, so remove the design documentation for them.
Copied from Perforce
Change: 192179
ServerID: perforce.ravenbrook.com
2016-09-05 15:33:57 +01:00
Gareth Rees
c07c5d6b8f
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
fa7547e296
Merge branch/2016-04-20/seghasbuffer.
...
Copied from Perforce
Change: 192173
ServerID: perforce.ravenbrook.com
2016-09-05 15:24:24 +01:00
Gareth Rees
baf2277b30
Catch-up merge from the master sources.
...
Copied from Perforce
Change: 192170
ServerID: perforce.ravenbrook.com
2016-09-05 15:21:33 +01:00
Gareth Rees
18e0381952
When injecting allocation failures to test the fail-over land, don't also inject failures into the arena's free land's block pool.
...
Copied from Perforce
Change: 192164
ServerID: perforce.ravenbrook.com
2016-09-05 13:17:59 +01:00
Gareth Rees
b9b1ad9074
Correct the logic in mvfreesize -- lost spans are not accounted as free. only sum the free space in the spans in checking varieties, otherwise just return the cached sum.
...
Copied from Perforce
Change: 192159
ServerID: perforce.ravenbrook.com
2016-09-05 12:03:46 +01:00
Gareth Rees
d7e36f8dbb
Don't pick a grain size that's so large that you can't avoid hitting the commit limit.
...
Copied from Perforce
Change: 192154
ServerID: perforce.ravenbrook.com
2016-09-05 11:37:19 +01:00
Gareth Rees
49198a35ee
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
Gareth Rees
d0e71995e4
Sort the tables of platform codes. document the (working, but not officially supported) platform xci6gc.
...
Copied from Perforce
Change: 192143
ServerID: perforce.ravenbrook.com
2016-09-04 16:25:26 +01:00
Gareth Rees
72133a72a0
Document security issues in the mps.
...
Copied from Perforce
Change: 192138
ServerID: perforce.ravenbrook.com
2016-09-04 15:28:25 +01:00
Gareth Rees
4dd6e899f5
Build and test the toy scheme interpreter during continuous integration, to reduce the risk of accidentally breaking it.
...
Copied from Perforce
Change: 192133
ServerID: perforce.ravenbrook.com
2016-09-04 14:47:08 +01:00
Gareth Rees
8005cb5f77
Initialize in/out parameter old_exception_count before passing it to thread_swap_exception_ports.
...
Copied from Perforce
Change: 192128
ServerID: perforce.ravenbrook.com
2016-09-04 14:28:28 +01:00
Gareth Rees
0400178bf4
Support registering a thread with the mps multiple times on os x.
...
Restore test case.
Copied from Perforce
Change: 192127
ServerID: perforce.ravenbrook.com
2016-09-04 14:23:07 +01:00
Gareth Rees
08bd2f3474
New preprocessor constants config_pthreadext_sigsuspend and config_pthreadext_sigresume for configuring the signals used to suspend and resume threads.
...
Copied from Perforce
Change: 192122
ServerID: perforce.ravenbrook.com
2016-09-04 13:55:39 +01:00
Gareth Rees
5c7dee4d28
Update release notes for job004036 and job004037.
...
Copied from Perforce
Change: 192117
ServerID: perforce.ravenbrook.com
2016-09-04 12:20:37 +01:00
Gareth Rees
05a43727e2
Fix type punning examples.
...
Copied from Perforce
Change: 192116
ServerID: perforce.ravenbrook.com
2016-09-04 12:15:34 +01:00
Gareth Rees
89b1b02ee5
Add a case for rootthread to rootcheck.
...
Add test coverage for mps_root_create_thread_scanned and mps_root_create_area; improve coverage for mps_root_create_area_tagged, mps_scan_area_tagged, mps_scan_area.
Copied from Perforce
Change: 192111
ServerID: perforce.ravenbrook.com
2016-09-04 11:56:09 +01:00
Gareth Rees
7d5e5ac0e0
Avoid strict aliasing errors in the mps test suite, so that it compiles and runs using gcc 6.1.
...
Update the manual entries for mps_alloc and mps_sac_alloc with notes highlighting the problem.
Copied from Perforce
Change: 192104
ServerID: perforce.ravenbrook.com
2016-09-02 19:20:58 +01:00
Gareth Rees
1d4cfd56b3
Index regexp needs multiline flag.
...
Copied from Perforce
Change: 192103
ServerID: perforce.ravenbrook.com
2016-09-02 19:08:13 +01:00
Gareth Rees
4ead68befc
Fix glossary references.
...
Copied from Perforce
Change: 192102
ServerID: perforce.ravenbrook.com
2016-09-02 19:07:45 +01:00
Gareth Rees
55adbe705d
Fix assertion text in the manual.
...
Place a cross-reference by each assertion the appears in the manual, to assist in keeping the manual up to date.
Copied from Perforce
Change: 192097
ServerID: perforce.ravenbrook.com
2016-09-02 14:11:08 +01:00
Gareth Rees
88a58c8848
Deprecation of reservoir functions was in release 1.115.
...
Copied from Perforce
Change: 192092
ServerID: perforce.ravenbrook.com
2016-09-02 13:27:05 +01:00
Gareth Rees
8dd574301c
Fix typos and other problems with the manual.
...
Copied from Perforce
Change: 192091
ServerID: perforce.ravenbrook.com
2016-09-02 13:25:11 +01:00
Gareth Rees
9b81dcb5c4
New program mpseventpy emits python data structures representing telemetry events.
...
Copied from Perforce
Change: 191895
ServerID: perforce.ravenbrook.com
2016-06-02 15:02:05 +01:00
Gareth Rees
6f196185a1
Make shield assertions robust against deep checking -- when shieldcover is called from shieldraise there is one unsynced segment that has not yet been queued. record this fact in a new queuepending flag in the shield structure.
...
Remove incorrect shield assertion "shield->depth == 0 || shield->suspended" -- depth may be increased without suspending the mutator if the segment did not need protecting.
Copied from Perforce
Change: 191812
ServerID: perforce.ravenbrook.com
2016-05-03 17:25:27 +01:00
Gareth Rees
11944d44c2
Patch the mfs pool's alloc method instead of rewriting its class -- the latter violates the class invariants and so asserts when deep checking is turned on.
...
Copied from Perforce
Change: 191779
ServerID: perforce.ravenbrook.com
2016-05-02 13:49:43 +01:00
Gareth Rees
fa2fced306
Clear the emergency before removing the trace from busytraces, to avoid violating <code/global.c#emergency.invariant>.
...
Copied from Perforce
Change: 191774
ServerID: perforce.ravenbrook.com
2016-05-02 13:06:07 +01:00
Gareth Rees
0dd2505fc5
Epoch now only counts flips in which objects might have moved.
...
Copied from Perforce
Change: 191748
ServerID: perforce.ravenbrook.com
2016-05-01 09:35:24 +01:00
Richard Brooksby
e26f0b64e5
Replacing segbuffer with version that returns bool and the buffer, and disallowing null to segsetbuffer, adding setunsetbuffer for that case instead.
...
Copied from Perforce
Change: 191695
ServerID: perforce.ravenbrook.com
2016-04-27 15:47:26 +01:00
Richard Brooksby
9a6981ae41
Temporarily introducing seggetbuffer to eliminate use of "null" to mean "no buffer".
...
Copied from Perforce
Change: 191694
ServerID: perforce.ravenbrook.com
2016-04-27 15:27:47 +01:00