Gareth Rees
7bf58e3f53
Represent the spare memory as a land.
2022-01-17 20:19:07 +00:00
Gareth Rees
fe656c0565
New api function mps_pool_walk.
2022-01-17 17:39:18 +00:00
Filip Strömbäck
cca58dbafc
Fixed typos in the test/function/237.c
2021-08-08 12:57:47 +02:00
Filip Strömbäck
94bd16a304
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
ac0b724847
Remove reservoir functions, deprecated since release 1.115.0
2020-09-24 11:36:46 +01:00
Gareth Rees
302c8d0b19
Remove mps_tramp, deprecated since release 1.111.0.
2020-09-24 09:30:33 +01:00
Gareth Rees
e749d0c895
Mmqa test function/148.c was fixed by change 187224.
2020-09-04 21:47:05 +01:00
Gareth Rees
5acb13ba24
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
e7d4356705
Merge branch 'branch/2020-08-24/eintr'
2020-08-30 09:24:08 +01:00
Gareth Rees
ae265371c1
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
c5591cdf79
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
ceaca84a7f
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
fcb87d3f48
Use keyword argument interface to avoid underpromotion of arguments.
...
Copied from Perforce
Change: 195911
2019-01-08 14:43:41 +00:00
Gareth Rees
b0d0c9a262
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
fffe8af73e
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
1f1dc12978
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
1f998c0c8e
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
9008a02110
Use mps_class_mvff_debug.
...
Copied from Perforce
Change: 194866
2018-08-02 14:26:20 +01:00
Gareth Rees
967b61398d
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
9643a1f090
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
4e8de8d42e
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
0fcb0ecf90
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
4ee65d569a
Avoid "unused variable _mps_wt" warning from gcc.
...
Copied from Perforce
Change: 194776
2018-07-30 11:55:00 +01:00
Gareth Rees
9290de0dff
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
bc919b5d42
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
6d30dca56b
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
f2242fcb64
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
09a10b1cce
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
b742e99f96
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
ca11ef7be4
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
2248184124
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
9013f77478
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
f4ec71167c
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
ddffa73317
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
ef265eb175
Fix issues identified in review by dl.
...
Copied from Perforce
Change: 194187
2018-06-26 11:39:45 +01:00
Gareth Rees
20ab8a1773
Test cases for errors in finalization.
...
Copied from Perforce
Change: 194166
2018-06-26 09:01:46 +01:00
Gareth Rees
e54d414bfb
No need for separate ams and lo formats.
...
Copied from Perforce
Change: 194133
2018-06-23 21:01:15 +01:00
Gareth Rees
aeb8be99bd
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
40d88a4903
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
0c289d65f3
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
e6b6fca1ca
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
12da8bf742
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
49106b066e
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
9a16d354c6
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
8e64810d00
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
1b3b8caca4
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
3c0d28b98a
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
e4bf4451b6
Fix copy-paste error.
...
Copied from Perforce
Change: 193880
2018-06-18 13:18:02 +01:00
Gareth Rees
c4a840d676
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
169b8dcaf6
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