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