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

1067 commits

Author SHA1 Message Date
Gareth Rees
eaad083f93 Improve the explanation at the start of globalsfinish.
Put assertion from vmChunkDestroy into the manual.

Copied from Perforce
 Change: 182633
 ServerID: perforce.ravenbrook.com
2013-06-08 16:16:48 +01:00
Gareth Rees
293e78f372 Fri6gc needs the same flags as fri3gc in order to compile mpseventsql.
Copied from Perforce
 Change: 182624
 ServerID: perforce.ravenbrook.com
2013-06-08 13:30:38 +01:00
Richard Brooksby
9e8f8eb1b4 Removing amcssth from the list of automatically run tests, since we have no plans to fix it at present.
Copied from Perforce
 Change: 182616
 ServerID: perforce.ravenbrook.com
2013-06-08 11:18:22 +01:00
Richard Brooksby
ac1e57c0ac Merging branch/2013-05-17/emergency with major rework of mvt, mvff, and cbs.
Some parts of this are still ragged, and would not normally pass review, but this is a massive improvement to the existing code.

Copied from Perforce
 Change: 182614
 ServerID: perforce.ravenbrook.com
2013-06-08 10:57:57 +01:00
Gareth Rees
a16f5b3f6c Test cbs and freelist with different alignments.
Maintain test state in a structure to avoid having to pass it all around as function arguments.

Copied from Perforce
 Change: 182611
 ServerID: perforce.ravenbrook.com
2013-06-07 19:36:42 +01:00
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
Richard Brooksby
5926e279f3 Merging branch/2013-06-05/diag to eliminate the "diag" system. hurrah!
Copied from Perforce
 Change: 182575
 ServerID: perforce.ravenbrook.com
2013-06-06 14:56:47 +01:00
Gareth Rees
81e1ea0da2 Fix build on linux.
Copied from Perforce
 Change: 182574
 ServerID: perforce.ravenbrook.com
2013-06-06 14:21:39 +01:00
Gareth Rees
ef933fde2f Remove diag.c from xcode project.
Copied from Perforce
 Change: 182572
 ServerID: perforce.ravenbrook.com
2013-06-06 13:58:01 +01:00
Gareth Rees
5d10a62ae9 Remove mentions of diagnostic feedback from the design documents and the code; add mentions of corresponding events.
Copied from Perforce
 Change: 182570
 ServerID: perforce.ravenbrook.com
2013-06-06 13:47:33 +01:00
Gareth Rees
ef9c7a057e Remove the diag variety (and the obsolete ti variety) from the makefiles.
Copied from Perforce
 Change: 182567
 ServerID: perforce.ravenbrook.com
2013-06-06 13:46:08 +01:00
Richard Brooksby
e181376dd0 Merging branch/2013-05-01/keyword-arguments to pick up keyword arguments for object formats.
Copied from Perforce
 Change: 182562
 ServerID: perforce.ravenbrook.com
2013-06-06 12:55:04 +01:00
Gareth Rees
4e22988865 Remove diag facility.
Copied from Perforce
 Change: 182553
 ServerID: perforce.ravenbrook.com
2013-06-05 18:35:40 +01:00
Gareth Rees
9e8e01756b Ensure that mpseventcnv and mpseventtxt are built by default on windows, and that mpseventsql is buildable if you request it.
Copied from Perforce
 Change: 182537
 ServerID: perforce.ravenbrook.com
2013-06-05 15:27:42 +01:00
Gareth Rees
3d4cb21f10 Fix compilation of test suite on unix.
Copied from Perforce
 Change: 182536
 ServerID: perforce.ravenbrook.com
2013-06-05 15:05:57 +01:00
Richard Brooksby
6df3381724 Linking tags to mmprevol requests (e.g. request.epcode.12345) to their location on info.ravenbrook.com.
Copied from Perforce
 Change: 182526
 ServerID: perforce.ravenbrook.com
2013-06-05 00:57:04 +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
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
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
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
Gareth Rees
71a2c572a0 Use range objects in the cbs interface instead of base, limit pairs. the idea is that freelist and cbs should offer similar interfaces so that the testing code can be shared.
Copied from Perforce
 Change: 182364
 ServerID: perforce.ravenbrook.com
2013-05-31 16:29:26 +01:00