1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-26 07:11:34 -08:00
Commit graph

44 commits

Author SHA1 Message Date
Gareth Rees
5460235a2c Remove the commit limit from the amc and ams stress tests, since they hit it legitimately at random. see <https:/​/​info.ravenbrook.com/​mail/​2016/​03/​08/​18-14-41/​0/​> for discussion and suggestions for better testing.
Copied from Perforce
 Change: 189912
 ServerID: perforce.ravenbrook.com
2016-03-12 20:07:49 +00:00
Richard Brooksby
3ad63e43f1 Catch up merge from master sources.
Copied from Perforce
 Change: 189228
 ServerID: perforce.ravenbrook.com
2016-02-16 12:37:25 +00:00
Richard Brooksby
525e7dc95b Making mps_root_create_thread a convenience function for the common case.
Copied from Perforce
 Change: 189205
 ServerID: perforce.ravenbrook.com
2016-02-15 23:30:12 +00:00
Richard Brooksby
8140fab4dd Creating general mps_root_create_thread and renaming mps_root_create_stack as a specialised version of it, mps_root_create_thread_tagged.
Copied from Perforce
 Change: 189198
 ServerID: perforce.ravenbrook.com
2016-02-15 19:12:59 +00:00
Richard Brooksby
2ad27f73b1 Lifting stack and register area scanner into mps interface to allow generalisation of stack format.
Copied from Perforce
 Change: 189195
 ServerID: perforce.ravenbrook.com
2016-02-15 17:46:45 +00:00
Gareth Rees
0bebdf5ad1 Need to pass sizeof(mps_word_t) - 1 for the mask argument to get the old behaviour.
Copied from Perforce
 Change: 188317
 ServerID: perforce.ravenbrook.com
2015-09-14 21:17:19 +01:00
Gareth Rees
7d43cfa380 Rename mps_root_create_reg_masked to mps_root_create_stack, and deprecate mps_root_create_reg, as suggested in review by nb <https://info.ravenbrook.com/mail/2015/09/09/16-18-10/0/>.
Copied from Perforce
 Change: 188312
 ServerID: perforce.ravenbrook.com
2015-09-14 20:16:14 +01:00
Gareth Rees
537af4b0dc Rename mps_key_arena_commit_limit and mps_key_arena_spare_commit_limit as mps_key_commit_limit and mps_key_spare_commit_limit respectively, as suggested by nb in review.
Copied from Perforce
 Change: 188286
 ServerID: perforce.ravenbrook.com
2015-09-08 16:21:27 +01:00
Gareth Rees
703c1ee5f5 New function mps_arena_configure provides keyword argument interface to changing the properties of an arena.
New keyword arguments MPS_KEY_ARENA_COMMIT_LIMIT and MPS_KEY_SPARE_ARENA_COMMIT_LIMIT can be passed to mps_arena_create_k or mps_arena_configure.
Deprecate mps_arena_commit_limit_set and mps_arena_spare_commit_limit_set.

Copied from Perforce
 Change: 188085
 ServerID: perforce.ravenbrook.com
2015-08-06 17:02:51 +01:00
Gareth Rees
adb6631e7e Use gc_start messages to robustly determine whether a collection started (rather than the unreliable mps_collections).
Copied from Perforce
 Change: 187485
 ServerID: perforce.ravenbrook.com
2014-11-07 10:41:51 +00:00
Gareth Rees
716bb331b9 Use the nelems macro to compute the size of arrays.
Copied from Perforce
 Change: 187055
 ServerID: perforce.ravenbrook.com
2014-09-26 21:35:25 +01:00
Gareth Rees
4b69e0c411 Fix problems noted by rb in review <https://info.ravenbrook.com/mail/2014/06/18/14-40-10/0/>
Copied from Perforce
 Change: 186669
 ServerID: perforce.ravenbrook.com
2014-06-18 16:24:38 +01:00
Gareth Rees
88c85abc0e Vmpagesize now takes no arguments -- this avoids suggesting (incorrectly) that it might return a different value for each vm.
New function ProtGranularity returns the protection granularity of the operating system. (On all currently supported operating systems this is the same as the granularity of memory mapping returned by VMPageSuze, but it's important to separate these concepts.) MPMCheck asserts that the granularity of memory mapping is a multiple of the granularity of protection.
Client arena supports MPS_KEY_ARENA_GRAIN_SIZE.
Some of the test cases set the arena grain size.

Copied from Perforce
 Change: 186588
 ServerID: perforce.ravenbrook.com
2014-06-13 17:19:23 +01:00
Gareth Rees
cd5eb9694f Fix the build on w3i6mv.
Copied from Perforce
 Change: 186217
 ServerID: perforce.ravenbrook.com
2014-05-20 19:36:04 +01:00
Gareth Rees
e13fc954ce Park the arena before destroying the default chain, to ensure that there are no traces using that chain.
Fix test cases that used automatic collection, but destroyed data structures without parking the arena.
Document the requirement on mps_chain_destroy and add the assertion to "common assertions and their causes".

Copied from Perforce
 Change: 186021
 ServerID: perforce.ravenbrook.com
2014-05-12 11:19:57 +01:00
Gareth Rees
da307afb81 Turn on -wduplicate-enum and -wmissing-variable-declarations options for clang. ensure the mps compiles with these options.
Copied from Perforce
 Change: 185466
 ServerID: perforce.ravenbrook.com
2014-04-11 15:17:20 +01:00
Gareth Rees
e30fc43dd4 Fix amcssth -- don't try to test two incompatible features at the same time (see job003561).
Set the commit limit in amcss and amcsshe so that we test that the MPS can live in a tight memory limit.
Don't try to detect when the MPS has made a "dynamic" collection. This is not reliable or maintainable.

Copied from Perforce
 Change: 185430
 ServerID: perforce.ravenbrook.com
2014-04-10 15:06:58 +01:00
Gareth Rees
e45793ce57 New header testthr.h provides simple threading interface.
Implementations testthrix.c for Unix and testthrw3.c for Windows.
Multi-threaded test cases use the new interface.
Rename lockutw3 to lockut (no longer Windows-specific).
Run multi-threaded test cases on Windows and lockut elsewhere.

Copied from Perforce
 Change: 185350
 ServerID: perforce.ravenbrook.com
2014-04-08 15:14:32 +01:00
Gareth Rees
9a57106d49 Remove unnecessary headers from the test suite.
Copied from Perforce
 Change: 185340
 ServerID: perforce.ravenbrook.com
2014-04-08 13:03:04 +01:00
Gareth Rees
b86947796e Amc/amcz subclass test needs to be other way round now.
Smoke tests for AMCZ -- add it to amcss, amcsshe, amcssth, finaltest and walkt0.
Smoke tests for LO -- add it to walkt0.
Fix finaltest for AMC and AWL -- need to allocate in generation 0 to get prompt finalization. (Also fix MMQA test function/51.c.)

Copied from Perforce
 Change: 185327
 ServerID: perforce.ravenbrook.com
2014-04-07 23:05:35 +01:00
Gareth Rees
cf0d96dd0b Ensure that all test cases call testlib_init so that the testlib assertion handler is installed: this ensures that on windows you can set mps_testlib_noabort to avoid the dialog box from abort().
Copied from Perforce
 Change: 184965
 ServerID: perforce.ravenbrook.com
2014-03-24 11:41:01 +00:00
Richard Brooksby
086ad82475 Removing false comment about multiple thread registration, but see job003559.
Copied from Perforce
 Change: 183114
 ServerID: perforce.ravenbrook.com
2013-07-17 14:38:05 +01:00
Richard Brooksby
30e439b2c5 Registering exception handler for each thread, rather than the whole task.
This avoids the need to forward exception messages to the debugger, since we can reasonably insist that we're the first handler in the chain for each thread.

Copied from Perforce
 Change: 182925
 ServerID: perforce.ravenbrook.com
2013-07-04 22:58:34 +01:00
Richard Brooksby
79582c17db Amcssth test was broken: didn't register the worker threads as roots, only created one worker thread, registered it twice. weird.
Copied from Perforce
 Change: 182882
 ServerID: perforce.ravenbrook.com
2013-07-01 20:04:30 +01:00
Richard Brooksby
5c6785b815 Catch-up merge from custom/cet/main to master.
Includes installable assertion handler, events in circular memory buffers, LARGEADDRESSAWARE, etc.

Copied from Perforce
 Change: 182176
 ServerID: perforce.ravenbrook.com
2013-05-24 19:42:46 +01:00
Gareth Rees
b92064a89c The amcssth test case now registers its threads' stacks as roots with the mps.
Copied from Perforce
 Change: 181076
 ServerID: perforce.ravenbrook.com
2013-03-07 14:53:31 +00:00
Gareth Rees
8dc0d72a8d Improve the usability of the test suite:
1. "make test" now reports the name of the test case before running it, so that when you look back through the test output you can see which test case failed.
2. "make test" now collects the standard output from all the tests to a log file in /tmp, so that this does not clutter the user's terminal, and so that nothing is lost if the output exceeds the terminal's scrollback.
3. Each test case now prints a success message ("Conclusion: Failed to find any defects.") to standard output (not standard error) so that these messages do not clutter up the terminal when running "make test".
4. Each test case now uses its result code (not the printed message) to indicate whether it succeeded or failed.
5. More of the diagnostic messages from the test cases now start by printing argv[0] so that it is easier to tell which test case was running.

Copied from Perforce
 Change: 181071
 ServerID: perforce.ravenbrook.com
2013-03-07 13:13:32 +00:00
Richard Brooksby
a622cdfc07 Minor tweaks to allow amcssth test to build under lii3gc at least.
Copied from Perforce
 Change: 180963
 ServerID: perforce.ravenbrook.com
2013-02-20 13:35:23 +00:00
Richard Brooksby
78d5f049f0 Eliminating type puns on scan states, location dependencies, and allocation points through the mps interface.
Now that we're recommending inlining with client code and optimising with -O2 or -O3, we can't afford any bug introduced by the strict aliasing rule.

Copied from Perforce
 Change: 179322
 ServerID: perforce.ravenbrook.com
2012-09-07 12:58:57 +01:00
David Lovemore
d17c5b8296 Using mps_word_const instead of ull for proper fixes to constants
Copied from Perforce
 Change: 178196
 ServerID: perforce.ravenbrook.com
2012-05-17 15:18:50 +01:00
Richard Brooksby
61890da12b Fixing up occurences of "unsigned long" in the main mps and test code so that we no longer assume that "unsigned long" is large enough for a pointer or size, or that it's the longest available integer type, since these are not true on 64-bit windows.
Copied from Perforce
 Change: 178021
 ServerID: perforce.ravenbrook.com
2012-04-23 16:20:40 +01:00
Richard Kistruck
718a46bb8d Mps br/timing: tabs in test source files. (p4 diff -db -- confirms whitespace changes only).
Copied from Perforce
 Change: 166671
 ServerID: perforce.ravenbrook.com
2008-11-07 13:45:50 +00:00
Richard Brooksby
ae3c248878 Changing global graphics copyright notice to say "portions copyright" to avoid confusion.
Copied from Perforce
 Change: 30258
 ServerID: perforce.ravenbrook.com
2002-06-18 16:28:41 +01:00
Richard Brooksby
e854cd8e1d Merging branch mps/2002-05-22/open-source-prep.
Making some new files consistent with changes from that branch.
Deleting some new Global Graphics confidential files.

Copied from Perforce
 Change: 30256
 ServerID: perforce.ravenbrook.com
2002-06-18 16:19:34 +01:00
Nick Barnes
6a1a360814 Integrate changes from global graphics.
Copied from Perforce
 Change: 30250
 ServerID: perforce.ravenbrook.com
2002-06-18 14:14:55 +01:00
Richard Brooksby
78ef580722 Eliminating "impl" type tags and replacing them with uri-style file references.
Copied from Perforce
 Change: 29900
 ServerID: perforce.ravenbrook.com
2002-06-07 17:34:59 +01:00
Richard Brooksby
a0f676c8e1 Adding forward reference to licenses from copyright notices.
Adding licenses to a couple of files I missed.

Copied from Perforce
 Change: 29837
 ServerID: perforce.ravenbrook.com
2002-06-06 11:56:19 +01:00
Richard Brooksby
4301a6db0a Adding licenses to source code files.
Copied from Perforce
 Change: 29836
 ServerID: perforce.ravenbrook.com
2002-06-06 11:44:23 +01:00
Richard Brooksby
c0bb4cd3cd Removing hopenames from the master sources.
This change will be integrated but ignored (-ay) to the gg-epcore/union sources, so that they retain HopeNames.

Copied from Perforce
 Change: 24911
 ServerID: perforce.ravenbrook.com
2001-12-07 13:19:25 +00:00
Richard Brooksby
3d5e2ca85f Adding hopenames back into the master sources, so that they can be included in the union sources along with the id keywords.
This was achieved by partially undoing changelist 24817, including an accidental corruption of eventgen.pl.

Copied from Perforce
 Change: 24877
 ServerID: perforce.ravenbrook.com
2001-12-06 18:14:02 +00:00
Richard Brooksby
b824e1c406 Updating copyright messages to say copyright 2001 ravenbrook throughout.
Adding some missing copyright messages.

Copied from Perforce
 Change: 24818
 ServerID: perforce.ravenbrook.com
2001-12-05 16:18:43 +00:00
Richard Brooksby
2589307099 Changing hopename keywords to id keywords throughout, to work with perforce.
Copied from Perforce
 Change: 24817
 ServerID: perforce.ravenbrook.com
2001-12-05 16:05:52 +00:00
Richard Brooksby
492dd3c684 Merging changes from union to masters. this incorporates pekka's updates: tuning and a type in amcsshe.c and some adding some missing checks in arenavm.c. it also brings our cope of their hopenames up to date.
Copied from Perforce
 Change: 24815
 ServerID: perforce.ravenbrook.com
2001-12-05 15:48:24 +00:00
Nick Barnes
7acfca905d Branch imports for masters.
Copied from Perforce
 Change: 23678
 ServerID: perforce.ravenbrook.com
2001-10-31 14:40:56 +00:00
Renamed from mps/src/amcssth.c (Browse further)