Gareth Rees
7db46bbb3f
Check alignment of address given to poolfree.
...
Copied from Perforce
Change: 187265
ServerID: perforce.ravenbrook.com
2014-10-14 16:54:10 +01:00
Gareth Rees
5afa5a492b
Use pointeradd to express the condition in mps_commit -- it expands to the same code, and better conveys the intention.
...
Copied from Perforce
Change: 187242
ServerID: perforce.ravenbrook.com
2014-10-13 17:36:44 +01:00
Gareth Rees
bef2871a1a
Check that unitsize and extendby are greater than zero. (zero is a likely argument to pass by accident if you get your varargs wrong.)
...
Copied from Perforce
Change: 187241
ServerID: perforce.ravenbrook.com
2014-10-13 17:35:57 +01:00
Gareth Rees
0ff9acf5ff
Check arena argument in ldadd, ldmerge and ldisstaleany.
...
Copied from Perforce
Change: 187240
ServerID: perforce.ravenbrook.com
2014-10-13 17:31:50 +01:00
Gareth Rees
4348937862
Don't use avert unless the arena lock is held (it's not thread-safe in all varieties). add design explaining this.
...
Copied from Perforce
Change: 187238
ServerID: perforce.ravenbrook.com
2014-10-13 14:36:15 +01:00
Gareth Rees
7b8e8aa4e1
No need to keep mps_ap_s in sync any more: the definition is shared (mpmst.h includes mpslib.h which includes mps.h).
...
Copied from Perforce
Change: 187221
ServerID: perforce.ravenbrook.com
2014-10-12 13:57:31 +01:00
Gareth Rees
8c3e1f4d6c
Link snc in the file-at-a-time builds, so that they match the mps.c builds.
...
Copied from Perforce
Change: 187208
ServerID: perforce.ravenbrook.com
2014-10-11 12:08:24 +01:00
Gareth Rees
ae4328ad5a
Fix the definition of mps_key_spare_field so that you can set this keyword argument when creating an mvff pool. add test cases that use this feature.
...
Copied from Perforce
Change: 187174
ServerID: perforce.ravenbrook.com
2014-10-10 12:05:23 +01:00
Gareth Rees
6959f52a97
Remove call to deprecated macro mps_args_done.
...
Copied from Perforce
Change: 187171
ServerID: perforce.ravenbrook.com
2014-10-10 11:21:22 +01:00
Gareth Rees
05ac242c57
If you try to create a client arena that's too small for the full complement of zones, return mps_res_memory instead of asserting.
...
If you try to create a virtual memory arena that's too small for the full complement of zones, round up the size to the minimum instead of asserting.
Copied from Perforce
Change: 187164
ServerID: perforce.ravenbrook.com
2014-10-08 22:16:56 +01:00
Gareth Rees
51a264446a
Amc now asserts that references (unless ambiguous) are aligned to the pool alignment.
...
Copied from Perforce
Change: 187162
ServerID: perforce.ravenbrook.com
2014-10-08 21:13:34 +01:00
Gareth Rees
00229b0479
Use the method suffix only for methods in classes; use visitor or function for other kinds of functions.
...
New document guide.impl.c.naming sets out the rules for naming.
Copied from Perforce
Change: 187159
ServerID: perforce.ravenbrook.com
2014-10-07 23:48:55 +01:00
Gareth Rees
f3cf67c792
New constant rankmin gives the minimum rank. use this (rather than 0 or rankambig) to better express the intention.
...
Copied from Perforce
Change: 187156
ServerID: perforce.ravenbrook.com
2014-10-07 22:31:12 +01:00
Gareth Rees
88ca7174e7
Remove unused(boot) as boot is not unused.
...
No need for NOOP -- even without the UNUSED statement above it, an empty block would be legal in C.
Copied from Perforce
Change: 187147
ServerID: perforce.ravenbrook.com
2014-10-07 10:20:28 +01:00
Gareth Rees
3e5e2f2595
Rename "page" to "grain" in mvffreduce. use unused_size for an unused closure argument.
...
Copied from Perforce
Change: 187140
ServerID: perforce.ravenbrook.com
2014-10-04 16:09:27 +01:00
Gareth Rees
e6ce992ef2
Use one step period each run (not four) so that the test completes in a reasonable amount of time in the cool variety, but choose the step period randomly so as to get broader coverage.
...
Copied from Perforce
Change: 187130
ServerID: perforce.ravenbrook.com
2014-10-03 09:30:55 +01:00
Gareth Rees
83a93881a2
Design.mps.ring.naming: "when one structure parent contains one ring of child structures, the field in parent is usually known as childring, and the field in child is known as parentring". so the field in chunkstruct should be named arenaring.
...
Copied from Perforce
Change: 187084
ServerID: perforce.ravenbrook.com
2014-09-29 20:54:00 +01:00
Gareth Rees
b1dd12faaa
Remove unused variables remainderbase and remainderlimit.
...
Copied from Perforce
Change: 187082
ServerID: perforce.ravenbrook.com
2014-09-29 09:55:24 +01:00
Gareth Rees
ae41e87726
Fix bug in event_desc macro introduced in change 187071.
...
Copied from Perforce
Change: 187081
ServerID: perforce.ravenbrook.com
2014-09-29 09:48:47 +01:00
Gareth Rees
044a130da2
Need "www." in the url, otherwise the fragment identifier gets lost as a result of the redirect.
...
Copied from Perforce
Change: 187074
ServerID: perforce.ravenbrook.com
2014-09-27 23:22:25 +01:00
Gareth Rees
c968255f1e
Ensure that code of the form if (condition) statement; is split over two lines, so that it is possible to set a breakpoint on the statement in a debugger.
...
This change was agreed in 1997 (see <https://info.ravenbrook.com/project/mps/mail/1997/08/19/13-44/0.txt >), so it's about time it was implemented.
Copied from Perforce
Change: 187071
ServerID: perforce.ravenbrook.com
2014-09-27 22:57:02 +01:00
Gareth Rees
655e78f3be
Bring ring design up to date (excepting figures).
...
Add links from design documents to mail messages imported from Harlequin.
Copied from Perforce
Change: 187067
ServerID: perforce.ravenbrook.com
2014-09-27 16:11:21 +01:00
Gareth Rees
21f6addf6c
Rename mps_class_t to mps_pool_class_t for clarity.
...
Retain a typedef for mps_class_t for backwards compatibility.
Copied from Perforce
Change: 187065
ServerID: perforce.ravenbrook.com
2014-09-27 13:37:38 +01:00
Gareth Rees
1f517274f3
Cast all arguments to the writef function to make it easy to check that none of the necessary casts have been omitted.
...
New macro WriteFYesNo makes it easy to describe a Boolean.
Describe more structure elements for ABQ, Arena, Buffer, Format, MFS, Root, Seg.
Copied from Perforce
Change: 187063
ServerID: perforce.ravenbrook.com
2014-09-27 12:49:30 +01:00
Gareth Rees
7c2e271e60
Rename segpref to locuspref -- this structure describes preferences for the placement of any kind of address, not just segments.
...
Add LocusPrefDescribe and use it in MVFFDescribe.
Copied from Perforce
Change: 187061
ServerID: perforce.ravenbrook.com
2014-09-27 11:27:00 +01:00
Gareth Rees
64625eee6e
Don't return resparam from mps_arena_vm_growth if desired < minimum: this is a static programming error (not a dynamic condition) so aver instead.
...
Copied from Perforce
Change: 187057
ServerID: perforce.ravenbrook.com
2014-09-26 21:55:05 +01: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
7f970f93ed
Better encapsulation of test state.
...
Copied from Perforce
Change: 187054
ServerID: perforce.ravenbrook.com
2014-09-26 21:34:55 +01:00
Gareth Rees
6a5047ffe3
Clarify the comment for arenacollect, following suggestion by bruce mitchener < https://github.com/ravenbrook/mps-temporary/pull/5 >
...
Copied from Perforce
Change: 186981
ServerID: perforce.ravenbrook.com
2014-08-25 14:47:12 +01:00
Gareth Rees
a12938b874
Clarify the comment for arenapark, following suggestion by bruce mitchener < https://github.com/ravenbrook/mps-temporary/pull/5 >
...
Copied from Perforce
Change: 186966
ServerID: perforce.ravenbrook.com
2014-08-19 12:01:12 +01:00
Gareth Rees
1608519fe2
Fix problems identified by nb in review < https://info.ravenbrook.com/mail/2014/07/24/12-21-04/0/ >.
...
Copied from Perforce
Change: 186945
ServerID: perforce.ravenbrook.com
2014-08-06 16:18:34 +01:00
David Lovemore
63309aa7cf
Fix parameter names in prototype of sparsearrayinit().
...
Copied from Perforce
Change: 186884
ServerID: perforce.ravenbrook.com
2014-07-14 16:24:27 +01:00
Gareth Rees
e678586fa7
Update version numbers after release 1.114.0.
...
Copied from Perforce
Change: 186852
ServerID: perforce.ravenbrook.com
2014-07-07 15:25:56 +01:00
Gareth Rees
a0ad452c8c
Can't call funcheck outside of aver because funcheck is not available in the rash variety.
...
Copied from Perforce
Change: 186836
ServerID: perforce.ravenbrook.com
2014-07-04 17:25:33 +01:00
David Lovemore
6abe840d06
set control_extend_by to 32768.
...
The CONTROL_EXTEND_BY value for the extend by on the control pool was set really small (4096) on the assumption that the control pool was not heavily used. However, since we allocate Seg's in the control pool and recycle them frequently, this assumption is no longer true.
Copied from Perforce
Change: 186832
ServerID: perforce.ravenbrook.com
2014-07-04 15:27:48 +01:00
Gareth Rees
37a15e8f3e
Don't repeat generation sizes in the comments (they could get out of sync).
...
Copied from Perforce
Change: 186827
ServerID: perforce.ravenbrook.com
2014-07-04 13:58:34 +01:00
David Lovemore
358a3c5fc6
Adjust generation sizes for the default chain.
...
Add release note recommending retuning of generation sizes.
Copied from Perforce
Change: 186824
ServerID: perforce.ravenbrook.com
2014-07-04 13:32:45 +01:00
Gareth Rees
020871df1d
Fix event clock output on windows.
...
Copied from Perforce
Change: 186822
ServerID: perforce.ravenbrook.com
2014-07-04 11:31:13 +01:00
Gareth Rees
933fdc779f
Parse and print 64-bit clock values even on 32-bit platforms.
...
Copied from Perforce
Change: 186814
ServerID: perforce.ravenbrook.com
2014-07-03 22:40:25 +01:00
Gareth Rees
88708ac00a
Instead of creating one padding object for each reclaimed object in a nailed amc segment, create a padding object for each contiguous run of reclaimed objects, speeding up any future traversals of the segment.
...
Copied from Perforce
Change: 186812
ServerID: perforce.ravenbrook.com
2014-07-03 20:56:18 +01:00
Gareth Rees
d3248f60f5
Emit the amcfixforward event after forwarding the object, so that the newref parameter is in fact the new location (rather than constantly 0, as before).
...
Copied from Perforce
Change: 186809
ServerID: perforce.ravenbrook.com
2014-07-03 19:18:22 +01:00
Gareth Rees
57a0b9a236
Don't compile test cases with -dndebug -- we need assertions to help us find errors!
...
Copied from Perforce
Change: 186804
ServerID: perforce.ravenbrook.com
2014-07-03 15:40:48 +01:00
Gareth Rees
22714f19e0
Don't compile test cases with /dndebug even in the hot variety: these assertions may be helpful for detecting problems like job003848.
...
Copied from Perforce
Change: 186798
ServerID: perforce.ravenbrook.com
2014-07-03 11:58:36 +01:00
Gareth Rees
ea280b45a1
More assertions in dylan object format:
...
1. the limit of a padding object must be greater than its base
2. mustn't forward padding objects
(These assertions would have helped us with job003848.)
Copied from Perforce
Change: 186797
ServerID: perforce.ravenbrook.com
2014-07-03 11:56:47 +01:00
Gareth Rees
7b8d7873b9
Suppress error-checking on the clean target, to work around job003854.
...
Copied from Perforce
Change: 186795
ServerID: perforce.ravenbrook.com
2014-07-03 10:44:53 +01:00
Gareth Rees
6c07fcbce4
No need for mv2obj and mvffobj.
...
Copied from Perforce
Change: 186791
ServerID: perforce.ravenbrook.com
2014-07-02 17:22:46 +01:00
Gareth Rees
f4088b66c9
Flush telemetry before aborting in the test suite.
...
Copied from Perforce
Change: 186788
ServerID: perforce.ravenbrook.com
2014-07-02 11:41:23 +01:00
Gareth Rees
b051feca68
Benchmarks need to abort on the first assertion hit, even in the hot variety, to assist with debugging.
...
Copied from Perforce
Change: 186787
ServerID: perforce.ravenbrook.com
2014-07-02 11:40:23 +01:00
Gareth Rees
088d404fc0
Provide a default value for mps_key_awl_find_dependent.
...
Copied from Perforce
Change: 186784
ServerID: perforce.ravenbrook.com
2014-07-02 10:39:28 +01:00
Gareth Rees
cb7dc69cd5
Flush the telemetry stream before aborting.
...
Copied from Perforce
Change: 186782
ServerID: perforce.ravenbrook.com
2014-07-02 10:17:07 +01:00