Gareth Rees
ccbf5341e8
Mvtfinish must make the structure invalid first.
...
Add comment explaining choice of GCSegClass.
Copied from Perforce
Change: 182608
ServerID: perforce.ravenbrook.com
2013-06-07 15:39:07 +01:00
Gareth Rees
4753e1ba3a
Improve design docs following review from rb.
...
Copied from Perforce
Change: 182606
ServerID: perforce.ravenbrook.com
2013-06-07 14:50:22 +01:00
Gareth Rees
ddf49ff7e9
Mvt takes configurable alignment via a keyword argument.
...
Copied from Perforce
Change: 182605
ServerID: perforce.ravenbrook.com
2013-06-07 14:45:14 +01:00
Gareth Rees
c44b1e0e31
Check that all addresses in the freed range belong to the pool, not just the base of the range.
...
Copied from Perforce
Change: 182602
ServerID: perforce.ravenbrook.com
2013-06-07 13:20:20 +01:00
Gareth Rees
08f28c589a
Fix function description.
...
Copied from Perforce
Change: 182601
ServerID: perforce.ravenbrook.com
2013-06-07 13:17:21 +01:00
Gareth Rees
bcb3aeacde
Oops, forgot fl argument to freelistblocklimit.
...
Copied from Perforce
Change: 182586
ServerID: perforce.ravenbrook.com
2013-06-06 15:58:02 +01:00
Gareth Rees
f651dbdc27
Extra-careful check after setting the limit.
...
Copied from Perforce
Change: 182585
ServerID: perforce.ravenbrook.com
2013-06-06 15:51:41 +01:00
Gareth Rees
fe60d16407
Represent a block on the free list as a freelistblock rather than an addr (for better type safety). add many checks.
...
Copied from Perforce
Change: 182584
ServerID: perforce.ravenbrook.com
2013-06-06 15:47:37 +01:00
Gareth Rees
4232dc3125
Tidying up in anticipation of review.
...
Copied from Perforce
Change: 182524
ServerID: perforce.ravenbrook.com
2013-06-04 23:49:48 +01:00
Gareth Rees
a027b2b217
Build and run on windows.
...
Copied from Perforce
Change: 182519
ServerID: perforce.ravenbrook.com
2013-06-04 20:52:40 +01:00
Gareth Rees
20c26254ae
Catch-up merge from master sources to mps/branch/2013-05-17/emergency.
...
Copied from Perforce
Change: 182518
ServerID: perforce.ravenbrook.com
2013-06-04 20:44:03 +01:00
Gareth Rees
86abc26355
Avoid "variable may be used uninitialized" warning from visual c.
...
Copied from Perforce
Change: 182517
ServerID: perforce.ravenbrook.com
2013-06-04 20:41:19 +01:00
Gareth Rees
b631cd10cd
Reorganize windows build so that facts are mentioned in only one place.
...
Provide "testrun" target (and batch file) for running the test suite.
Copied from Perforce
Change: 182516
ServerID: perforce.ravenbrook.com
2013-06-04 20:40:07 +01:00
Gareth Rees
418cb379a2
Avoid "variable may be used uninitialized" warnings.
...
Copied from Perforce
Change: 182513
ServerID: perforce.ravenbrook.com
2013-06-04 18:46:07 +01:00
Gareth Rees
3515defcdd
Make fotest run on lii6gc.
...
Copied from Perforce
Change: 182512
ServerID: perforce.ravenbrook.com
2013-06-04 18:40:52 +01:00
Gareth Rees
fbf674c3ed
Mvt now fails over from a cbs to a freelist.
...
Update test cases and design accordingly.
Copied from Perforce
Change: 182509
ServerID: perforce.ravenbrook.com
2013-06-04 18:16:32 +01:00
Richard Brooksby
7b6e5d7055
Fixing a couple of sphinx warnings found by design document conversion.
...
Copied from Perforce
Change: 182507
ServerID: perforce.ravenbrook.com
2013-06-04 18:09:37 +01:00
Richard Brooksby
aad716e8d1
Incorporating index items into design document metadata so that an extra stub for each design document is not required in the manual sources.
...
Copied from Perforce
Change: 182505
ServerID: perforce.ravenbrook.com
2013-06-04 18:00:54 +01:00
Gareth Rees
e514ab2849
Explain in mvff design that it uses fail-over from cbs to freelist.
...
Copied from Perforce
Change: 182503
ServerID: perforce.ravenbrook.com
2013-06-04 17:11:30 +01:00
Gareth Rees
e5ad686f7c
Encapsulate cbsfindlargest falling back to freelistfindlargest as suggested by rb in review.
...
Copied from Perforce
Change: 182502
ServerID: perforce.ravenbrook.com
2013-06-04 17:10:38 +01:00
Gareth Rees
67ab8d1385
New test case "fotest" for fail-over of cbs to freelist in mvff. (plus stub for mvt.) need some testing hooks in mvff and mvt for getting the cbs.
...
This reveals a couple of bugs in MVFF: (i) if CBSDelete fails, this might be because the block is actually on the Freelist instead; (ii) we can't SegFree before calling FreelistDelete because the Freelist needs access to the memory in order to read its pointers.
Copied from Perforce
Change: 182500
ServerID: perforce.ravenbrook.com
2013-06-04 16:51:24 +01:00
Nick Barnes
de1aa03e9e
Fix rst syntax errors and add todos to strategy.rst
...
Copied from Perforce
Change: 182497
ServerID: perforce.ravenbrook.com
2013-06-04 15:56:52 +01:00
Gareth Rees
757a6417fb
Missing extern.
...
Copied from Perforce
Change: 182496
ServerID: perforce.ravenbrook.com
2013-06-04 15:40:45 +01:00
Gareth Rees
577342271d
Call abort() instead of exit() for convenience when debugging.
...
Copied from Perforce
Change: 182495
ServerID: perforce.ravenbrook.com
2013-06-04 15:37:12 +01:00
Nick Barnes
22681af733
Fix typo that broke this rst file.
...
Copied from Perforce
Change: 182494
ServerID: perforce.ravenbrook.com
2013-06-04 15:33:04 +01:00
Nick Barnes
1486031ba0
Check in incomplete strategy design doc.
...
Copied from Perforce
Change: 182491
ServerID: perforce.ravenbrook.com
2013-06-04 15:28:02 +01:00
Gareth Rees
c8362915e1
Fix typos: args for args.
...
Copied from Perforce
Change: 182485
ServerID: perforce.ravenbrook.com
2013-06-04 14:06:12 +01:00
Richard Brooksby
d131775267
Fixing prototype to show "args" not "va_list", since that's changed.
...
Linking to request.mps.170186.
Fixing link to design.keyword-arguments.
Typo.
Copied from Perforce
Change: 182480
ServerID: perforce.ravenbrook.com
2013-06-04 13:36:49 +01:00
Richard Brooksby
59095ab473
Updating logo in the mps manual to the new escheresque logo, using the clair de lune palette.
...
Copied from Perforce
Change: 182460
ServerID: perforce.ravenbrook.com
2013-06-04 01:11:00 +01:00
Richard Brooksby
0953c95432
Fixing duplicate reference error.
...
Copied from Perforce
Change: 182436
ServerID: perforce.ravenbrook.com
2013-06-03 17:21:20 +01:00
Gareth Rees
662a59c297
In mvff, fall back from cbs to freelist if cbs fails.
...
Copied from Perforce
Change: 182434
ServerID: perforce.ravenbrook.com
2013-06-03 16:21:52 +01:00
Gareth Rees
e5b8cf82d8
Add fbmtest to test suite.
...
Copied from Perforce
Change: 182433
ServerID: perforce.ravenbrook.com
2013-06-03 16:21:32 +01:00
Gareth Rees
6efd6ba489
Freelistfindlargest() takes a size argument so that the interface matches cbsfindlargest().
...
New function FreelistFlushToCBS() tries to move all blocks out of a free list and into a CBS.
Copied from Perforce
Change: 182432
ServerID: perforce.ravenbrook.com
2013-06-03 16:17:28 +01:00
Gareth Rees
5fb6436dd0
Cbsdelete() now returns the isolated contiguous range that was found, even if the requested deletion operation cannot be performed. (this is so that the caller can try deleting the whole block instead and manage the fragments using a fallback strategy.)
...
CBSFindLargest() takes a size argument, so that the caller doesn't have to re-insert the found block if it wasn't large enough.
Copied from Perforce
Change: 182431
ServerID: perforce.ravenbrook.com
2013-06-03 16:16:04 +01:00
Gareth Rees
86221fe9f3
Use rnd() from testlib instead for rand() from libc, so that test case is repeatable.
...
Copied from Perforce
Change: 182430
ServerID: perforce.ravenbrook.com
2013-06-03 16:05:19 +01:00
Gareth Rees
5f5d4a8a88
Make sure fbmtest compiles and runs on lii6gc.
...
Copied from Perforce
Change: 182425
ServerID: perforce.ravenbrook.com
2013-06-03 13:08:55 +01:00
Gareth Rees
bb56e5bd24
Add freelist module to core mps.
...
Copied from Perforce
Change: 182422
ServerID: perforce.ravenbrook.com
2013-06-03 12:58:12 +01:00
Richard Brooksby
99080a30f6
Miscellaneous design document improvements.
...
Documenting why WriteF on points comes out with the wrong endianness on Intel platforms.
Copied from Perforce
Change: 182421
ServerID: perforce.ravenbrook.com
2013-06-03 12:57:55 +01:00
Gareth Rees
5d0a3d48d9
Catch-up merge from master sources to mps/branch/2013-05-17/emergency
...
Copied from Perforce
Change: 182417
ServerID: perforce.ravenbrook.com
2013-06-03 12:25:18 +01:00
Gareth Rees
6c808aac63
Run apss test in a client arena as well as vm arenas.
...
Copied from Perforce
Change: 182416
ServerID: perforce.ravenbrook.com
2013-06-03 12:19:55 +01:00
Gareth Rees
e7487e1c71
Make expt825 and awlutth test cases build on os x.
...
Add exposet0, expt825 and zmess test cases to test suite on OS X.
Copied from Perforce
Change: 182415
ServerID: perforce.ravenbrook.com
2013-06-03 12:18:05 +01:00
Gareth Rees
21810fbccd
Improve organization of comm.gmk:
...
* Mention each target once (this makes it more reliable to modify the set of targets).
* Include exposet0, expt825 and xmess in the automatically run test cases.
* For other test cases, explain why not included in automated test suite.
* Organize targets alphabetically (this is makes it easier to check the lists against each other).
Copied from Perforce
Change: 182413
ServerID: perforce.ravenbrook.com
2013-06-03 11:35:01 +01:00
Gareth Rees
abdabf9c7b
Missing prototypes for freelistfindfirst and freelistfindlast.
...
Copied from Perforce
Change: 182411
ServerID: perforce.ravenbrook.com
2013-06-03 11:08:58 +01:00
Gareth Rees
7dc558b489
Rename cbstest.c to fbmtest.c (free block management test) and generalize it so that it tests both the cbs and freelist modules.
...
Split FreelistFind into FreelistFindFirst and FreelistFindLast so that the interface exactly matches the CBS interface.
Fix errors in freelist.c: missing computation of size in FreelistBlockSetLimit; update linked list correct in coalesceRight case in FreelistInsert.
Avoid compiler warnings in freelist.c.
In cbs.c: use $U for Booleans ($B is for bit tables).
Copied from Perforce
Change: 182397
ServerID: perforce.ravenbrook.com
2013-06-02 21:34:23 +01:00
Richard Brooksby
6a05315d82
Adding section number stripping to design document conversion, to allow section numbers to be included.
...
Copied from Perforce
Change: 182391
ServerID: perforce.ravenbrook.com
2013-06-02 12:30:10 +01:00
Richard Brooksby
74aacb1133
Reverting citations to ravenbrook style.
...
Copied from Perforce
Change: 182378
ServerID: perforce.ravenbrook.com
2013-06-01 10:43:08 +01:00
Richard Brooksby
0a673a0fc0
Fixing modtime comparison so that design documents get reconverted if modified.
...
Copied from Perforce
Change: 182377
ServerID: perforce.ravenbrook.com
2013-06-01 10:42:51 +01:00
Richard Brooksby
516b95d252
Tidying up design conversion extension.
...
Copied from Perforce
Change: 182375
ServerID: perforce.ravenbrook.com
2013-06-01 10:02:26 +01:00
Richard Brooksby
843cb423de
Converting design documents within the sphinx extension so that tools like readthedocs.org can generate the manual.
...
Copied from Perforce
Change: 182373
ServerID: perforce.ravenbrook.com
2013-06-01 03:42:28 +01:00
Richard Brooksby
7787f2ad56
Fixing up some code snippet formatting.
...
Copied from Perforce
Change: 182372
ServerID: perforce.ravenbrook.com
2013-05-31 19:19:08 +01:00