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

1075 commits

Author SHA1 Message Date
Gareth Rees
09d0dfc481 Document the intention behind mps_ld_isstale rather than the implementation: it captures the intention of testing whether a particular dependency is stale (even though the implementation in fact tests whether any dependency is stale). add new function mps_ls_isstale_any for expressing the intention of testing whether any dependencey is stale. the two functions have the same implementation at present, but the separation gives us the freedom to return a more precise result from mps_ld_isstale in future.
Copied from Perforce
 Change: 182816
 ServerID: perforce.ravenbrook.com
2013-06-20 16:25:08 +01:00
Gareth Rees
dbdf90119d Move the poolhasrange test to pool.c so that all frees (including internal ones) get the check.
Copied from Perforce
 Change: 182783
 ServerID: perforce.ravenbrook.com
2013-06-17 17:52:25 +01:00
Richard Brooksby
1ea9ffdac4 Suppress warnings about uninitialized use of eof.
Copied from Perforce
 Change: 182750
 ServerID: perforce.ravenbrook.com
2013-06-15 14:38:00 +01:00
Richard Brooksby
dc3fe5546b Eliminating eventpro.c and simplifying event reading in eventcnv.
Copied from Perforce
 Change: 182748
 ServerID: perforce.ravenbrook.com
2013-06-15 14:24:52 +01:00
Richard Brooksby
117c85cce4 Adding the scheme example to the xcode project.
Adding a simple Scheme benchmark program to stress the MPS mildly.

Copied from Perforce
 Change: 182711
 ServerID: perforce.ravenbrook.com
2013-06-12 23:30:28 +01:00
Richard Brooksby
03a84ad1c5 Ensuring that the arena passes consistency checking before calling vmarenatrivextended, by setting the zoneshift and alignment at the same time.
Copied from Perforce
 Change: 182708
 ServerID: perforce.ravenbrook.com
2013-06-12 20:02:29 +01:00
Richard Brooksby
f9724af3e0 Catch-up merge from custom/cet/main to master, to pick up arena extension callbacks.
Copied from Perforce
 Change: 182701
 ServerID: perforce.ravenbrook.com
2013-06-12 15:33:49 +01:00
Gareth Rees
559703b2ca Fix handling of -i and -o options.
Copied from Perforce
 Change: 182634
 ServerID: perforce.ravenbrook.com
2013-06-08 16:29:04 +01:00
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