1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-30 02:33:03 -07:00
Commit graph

179 commits

Author SHA1 Message Date
Gareth Rees
b0a1af5c05 Represent the spare memory as a land. 2022-01-17 20:19:07 +00:00
Gareth Rees
359bd5b034 New api function mps_pool_walk. 2022-01-17 17:39:18 +00:00
Filip Strömbäck
563e21bdef Fixed typos in the test/function/237.c 2021-08-08 12:57:47 +02:00
Filip Strömbäck
1bfb4476e8 Added a test case for github issue
This is to illustrate that the value in GetLastError() may be
clobbered by the exception handler on Windows in some
circumstances. As this commit is before the patch, the test currently
fails (clearly showing the issue).

GitHub-reference: https://github.com/Ravenbrook/mps/issues/61
2021-03-12 12:40:56 +01:00
Gareth Rees
1d59836ff2 Remove reservoir functions, deprecated since release 1.115.0 2020-09-24 11:36:46 +01:00
Gareth Rees
2e9c91a2bd Remove mps_tramp, deprecated since release 1.111.0. 2020-09-24 09:30:33 +01:00
Gareth Rees
9f39a1fbc5 Mmqa test function/148.c was fixed by change 187224. 2020-09-04 21:47:05 +01:00
Gareth Rees
65065bc8c4 Save and restore errno in signal handlers.
Ensure there are assertions on the results of all the libc functions
in protsgix.c and pthrdext.c.
2020-09-02 19:59:23 +01:00
Gareth Rees
d55dc069ab Merge branch 'branch/2020-08-24/eintr' 2020-08-30 09:24:08 +01:00
Gareth Rees
c13b7610d3 Set sa_restart flag when calling sigaction().
This ensures that if a mutator thread is blocked in a system call when
the MPS handles a signal, the system call will not fail with EINTR but
instead will be restarted.

Add a test case for the thread suspend and resume signals.
2020-08-30 09:23:35 +01:00
Gareth Rees
2172c24889 Use correct function for creating arena.
Since we are passing a list of keyword arguments, we must call the
keyword-taking function (mps_arena_create_k) and not the deprecated
varargs function (mps_arena_create).
2020-08-24 17:17:37 +01:00
Gareth Rees
8d5068b5ab Avoid using deprecated function mps_tramp.
Use mps_root_create_thread in preference to mps_root_create_reg.
New test harness run_test passes pointer to cold end of stack, since this is needed by many tests.

Copied from Perforce
 Change: 195917
2019-01-09 16:17:17 +00:00
Gareth Rees
c68dfd2ac4 Use keyword argument interface to avoid underpromotion of arguments.
Copied from Perforce
 Change: 195911
2019-01-08 14:43:41 +00:00
Gareth Rees
cdb8c9bc5e Merge branch/2018-08-01/land-insert-steal into the master sources.
Copied from Perforce
 Change: 194968
2018-08-13 14:42:25 +01:00
Gareth Rees
b9875b89ba A couple of the tests pass only in the cool variety.
Copied from Perforce
 Change: 194959
2018-08-13 13:23:18 +01:00
Gareth Rees
059f4906eb Need to set the spare commit limit in order for the committed memory to go down.
Copied from Perforce
 Change: 194956
2018-08-13 12:54:03 +01:00
Gareth Rees
5323dedb45 Add some test coverage for mps_key_spare, mps_arena_spare, and mps_arena_spare_set.
Copied from Perforce
 Change: 194945
2018-08-13 10:09:45 +01:00
Gareth Rees
c9c8c03249 Use mps_class_mvff_debug.
Copied from Perforce
 Change: 194866
2018-08-02 14:26:20 +01:00
Gareth Rees
9e5c14a5d1 Replace mv debug with mvff debug.
Remove some remaining occurrences of mpscvm.h.

Copied from Perforce
 Change: 194865
2018-08-02 14:20:23 +01:00
Gareth Rees
3fcea3ce5d 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
c89813834d Replace deprecatd mv with mvff in test cases.
Delete eventrep and replay modules -- these have been broken for a long time. 

Copied from Perforce
 Change: 194843
2018-08-01 13:10:09 +01:00
Gareth Rees
04a1fd8d37 Introduce a count of the "system" pools (that is, those remaining when arenadestroy is called), so that arena classes can add new ones.
Copied from Perforce
 Change: 194812
2018-07-31 13:35:22 +01:00
Gareth Rees
147e3923b8 Avoid "unused variable _mps_wt" warning from gcc.
Copied from Perforce
 Change: 194776
2018-07-30 11:55:00 +01:00
Gareth Rees
a634c1405e Assertion is on the critical path, so conerr/59.c only passes in the cool variety.
Copied from Perforce
 Change: 194713
2018-07-23 11:14:54 +01:00
Gareth Rees
5c8e6891bb Update mmqa tests to cope with the removal of mv:
* Fix typo in argerr/41.c.
* Delete argerr/43.c and argerr/44.c: MVFF doesn't take a maximum size argument so we can't test for erroneous values of this argument.
* Fix assertion condition in conerr/59.c.
* In function/136.c, need to specify extend-by for second pool, now that it's an MVFF pool.
* function/224.c now passes (fragmentation is avoided because MVFF allocations can cross extent boundaries).

Copied from Perforce
 Change: 194712
2018-07-23 11:05:31 +01:00
Gareth Rees
74df9f7f35 Fix issues identified in review by gdr <https://info.ravenbrook.com/mail/2018/07/16/13-54-48/0/>
Copied from Perforce
 Change: 194674
2018-07-16 15:00:30 +01:00
Gareth Rees
08ca826368 Ensure that mmqa tests require either a pass or a specified failure.
Copied from Perforce
 Change: 194668
2018-07-16 12:57:42 +01:00
Gareth Rees
82a5471520 Use the functions comment(), report() and vreport() to ensure that assertion and error output is correctly formatted and the intention is clear.
Copied from Perforce
 Change: 194667
2018-07-16 12:51:41 +01:00
Gareth Rees
b68376aa8c Mmqa tests function/{7,21,22}.c now pass on 32-bit platforms.
MMQA tests function/{8,98}.c now pass on 64-bit platforms.

Copied from Perforce
 Change: 194599
2018-07-11 16:24:47 +01:00
Gareth Rees
9b4f5dfc0e Avoid "warning c4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)" from microsoft visual c.
Copied from Perforce
 Change: 194586
2018-07-11 13:13:17 +01:00
Gareth Rees
cd9e76a6de Check that traces with no condemned objects can be started and finished without error in each automatic pool class. regression test for job004086.
Copied from Perforce
 Change: 194475
2018-07-06 14:26:54 +01:00
Gareth Rees
e89f7b44c9 Ensure that the mmqa test case is compiled using the same variety as the mps library against which it is linked, in case it needs to inspect internal mps data structures.
Copied from Perforce
 Change: 194449
2018-07-05 15:57:33 +01:00
Gareth Rees
97f8625195 Fix issues identified in review https://info.ravenbrook.com/mail/2018/07/03/10-10-11/0/
Copied from Perforce
 Change: 194382
2018-07-03 13:04:21 +01:00
Gareth Rees
556bb96d41 Catch-up merge from master sources at changelevel 194268 to branch/2018-06-18/job004070.
Copied from Perforce
 Change: 194274
2018-06-28 14:31:02 +01:00
Gareth Rees
53a9a15276 Fix issues identified in review by dl.
Copied from Perforce
 Change: 194187
2018-06-26 11:39:45 +01:00
Gareth Rees
af4dceecd9 Test cases for errors in finalization.
Copied from Perforce
 Change: 194166
2018-06-26 09:01:46 +01:00
Gareth Rees
812d8abb4d No need for separate ams and lo formats.
Copied from Perforce
 Change: 194133
2018-06-23 21:01:15 +01:00
Gareth Rees
37a0381482 Make ams test for invalid references in the same way as the other pool classes. this also avoids fixing them in hot and rash varieties.
Copied from Perforce
 Change: 193924
2018-06-18 16:59:12 +01:00
Gareth Rees
175ce44d7b New mmqa test cases check that ams asserts on fixes to unaligned, unallocated, and out-of-bounds objects.
Copied from Perforce
 Change: 193921
2018-06-18 16:40:10 +01:00
Gareth Rees
169a3477b7 Awl asserts on fixes to out-of-bounds objects.
New MMQA test case conerr/65.c checks this.

Copied from Perforce
 Change: 193916
2018-06-18 16:29:03 +01:00
Gareth Rees
ab9f8a1a0d Lo asserts on fixes to out-of-bounds objects.
New MMQA test case conerr/64.c checks this.

Copied from Perforce
 Change: 193915
2018-06-18 16:22:16 +01:00
Gareth Rees
30abcd8531 Awl asserts on fixes to unallocated objects.
New MMQA test case conerr/63.c checks this.

Copied from Perforce
 Change: 193910
2018-06-18 15:46:26 +01:00
Gareth Rees
955ea13ee5 Lo asserts on fixes to unallocated objects.
New MMQA test case conerr/62.c checks this.

Copied from Perforce
 Change: 193909
2018-06-18 15:41:29 +01:00
Gareth Rees
ed44ee33c2 Awl asserts on fixes to unaligned exact references.
New MMQA test case conerr/61.c checks this.

Copied from Perforce
 Change: 193904
2018-06-18 15:23:58 +01:00
Gareth Rees
da6aec8bfb Lo asserts on fixes to unaligned exact references.
New MMQA test case conerr/60.c checks this.

Copied from Perforce
 Change: 193901
2018-06-18 15:05:30 +01:00
Gareth Rees
007904542d Use commentif to avoid "unexpected line in output:" from test runner.
Copied from Perforce
 Change: 193896
2018-06-18 14:47:28 +01:00
Gareth Rees
bdf27a99af Correct reason for why function/23.c does not pass.
Copied from Perforce
 Change: 193881
2018-06-18 13:18:28 +01:00
Gareth Rees
6590875176 Fix copy-paste error.
Copied from Perforce
 Change: 193880
2018-06-18 13:18:02 +01:00
Gareth Rees
307bc47730 Rename "mac os x" and "os x" to "macos", except for a few cases where for historical accuracy we want to continue to refer to the former name.
Copied from Perforce
 Change: 193821
2018-06-15 12:15:36 +01:00
Gareth Rees
9de5c1dfbe Avoid using deprecated function mps_fix and deprecated macro mps_fix in the test cases; use mps_fix12 instead.
Copied from Perforce
 Change: 193726
2018-06-13 13:59:14 +01:00