1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-08 20:50:52 -08:00
Commit graph

6617 commits

Author SHA1 Message Date
Gareth Rees
62f3be6400 Merge branch/2016-09-06/job004006.
Copied from Perforce
 Change: 192365
 ServerID: perforce.ravenbrook.com
2016-09-13 17:32:07 +01:00
Gareth Rees
d43cc4ef35 Fix problems noted in review.
Copied from Perforce
 Change: 192357
 ServerID: perforce.ravenbrook.com
2016-09-13 17:19:07 +01:00
Gareth Rees
cb0c6eabef Catch-up merge from custom/cet/branch/2016-09-13/job004006 to branch/2016-09-06/job004006.
Copied from Perforce
 Change: 192351
 ServerID: perforce.ravenbrook.com
2016-09-13 15:33:31 +01:00
Gareth Rees
e12c85c4d4 Support for customer task branches.
Copied from Perforce
 Change: 192340
 ServerID: perforce.ravenbrook.com
2016-09-13 12:41:52 +01:00
Gareth Rees
eeec77975c Merge branch/2016-09-12/job004020.
Copied from Perforce
 Change: 192325
 ServerID: perforce.ravenbrook.com
2016-09-13 10:50:21 +01:00
Gareth Rees
992e13c87c Mmqa test suite now passes on freebsd.
Copied from Perforce
 Change: 192320
 ServerID: perforce.ravenbrook.com
2016-09-13 10:19:03 +01:00
Gareth Rees
a4b15a8371 Avoid warnings from gcc 4.2 on freebsd.
Copied from Perforce
 Change: 192310
 ServerID: perforce.ravenbrook.com
2016-09-12 14:39:55 +01:00
Gareth Rees
99d99d597a Predictable address space layout is only a problem on freebsd.
Copied from Perforce
 Change: 192305
 ServerID: perforce.ravenbrook.com
2016-09-12 13:58:00 +01:00
Gareth Rees
a978af06c3 Need gmake on freebsd ("make" is bsd make).
Copied from Perforce
 Change: 192297
 ServerID: perforce.ravenbrook.com
2016-09-12 12:53:25 +01:00
Gareth Rees
cf6950631e 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
e8be3323ff 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
d56741e1ea In order to be able to test mps_arena_busy in all build configurations, we must always take and release the arena lock, even in the single-threaded case. we gain some additional checking by doing this, at low cost (since in this build configuration the locks are generic and so just increment/decrement a count of claims).
In the CONFIG_POLL_NONE we configuration, we would still like to check that no traces are busy when leaving the arena, but since we now call ArenaLeave in this configurations, move the assertion to ShieldLeave.
In ArenaDestroy, call ArenaLeave, don't just release the lock.

Copied from Perforce
 Change: 192267
 ServerID: perforce.ravenbrook.com
2016-09-09 13:01:25 +01:00
Gareth Rees
ad583c3c66 Use imperative mood consistently.
Copied from Perforce
 Change: 192259
 ServerID: perforce.ravenbrook.com
2016-09-09 11:19:14 +01:00
Gareth Rees
b21f8b7e9a Improve documentation.
Copied from Perforce
 Change: 192258
 ServerID: perforce.ravenbrook.com
2016-09-09 11:18:12 +01:00
Gareth Rees
04a8cb59df Improve description of postmortem state in the manual.
Copied from Perforce
 Change: 192257
 ServerID: perforce.ravenbrook.com
2016-09-09 11:10:03 +01:00
Gareth Rees
be5db32120 Lockisheld implementation for generic ("ansi") locks.
When CONFIG_THREAD_SINGLE is defined, use the generic lock module rather than compiling out all lock calls via lock.h. (Otherwise test cases that check LockIsHeld will fail.)

Copied from Perforce
 Change: 192254
 ServerID: perforce.ravenbrook.com
2016-09-09 11:01:04 +01:00
Gareth Rees
01c13bf1b5 New functions mps_arena_busy and mps_arena_postmortem, plus test coverage.
Copied from Perforce
 Change: 192247
 ServerID: perforce.ravenbrook.com
2016-09-08 13:55:43 +01:00
Gareth Rees
cb41b91f19 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
61606942e1 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
88ad19e91f 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
563a07a392 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
e11e98654b Fix typo.
Copied from Perforce
 Change: 192209
 ServerID: perforce.ravenbrook.com
2016-09-05 23:50:29 +01:00
Gareth Rees
1b72909eb3 Correct architectures.
Copied from Perforce
 Change: 192208
 ServerID: perforce.ravenbrook.com
2016-09-05 23:47:18 +01:00
Gareth Rees
bdd7fedb8b 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
f0d9c6ce79 More glossary cross-references.
Copied from Perforce
 Change: 192201
 ServerID: perforce.ravenbrook.com
2016-09-05 16:45:40 +01:00
Gareth Rees
1cb423c5de Document the gcwoah security issue.
Copied from Perforce
 Change: 192200
 ServerID: perforce.ravenbrook.com
2016-09-05 16:45:30 +01:00
Gareth Rees
a0db5c7bfe 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
ebfe96633c 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
a42ef06b8d 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
b6597f0380 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
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
ba8ac77fef 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
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
8c219cdd92 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
484c7e3142 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
af67eaaea5 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
d84baa6eed 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
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
Gareth Rees
df950a4de8 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
46ca1d0c86 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
d558f6acb2 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
a90a02704a 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
48b3a425af 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
6932a51b2f 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
47bf1c564c 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
4a46ff870e Fix type punning examples.
Copied from Perforce
 Change: 192116
 ServerID: perforce.ravenbrook.com
2016-09-04 12:15:34 +01:00
Gareth Rees
f1b3655bd5 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
4fd5435a51 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
24d8b79bec Index regexp needs multiline flag.
Copied from Perforce
 Change: 192103
 ServerID: perforce.ravenbrook.com
2016-09-02 19:08:13 +01:00
Gareth Rees
68d219c53b Fix glossary references.
Copied from Perforce
 Change: 192102
 ServerID: perforce.ravenbrook.com
2016-09-02 19:07:45 +01:00