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

982 commits

Author SHA1 Message Date
Gareth Rees
0ff7dacbb8 Catch-up merge from master sources to branch/2013-05-17/emergency.
Copied from Perforce
 Change: 182048
 ServerID: perforce.ravenbrook.com
2013-05-21 18:31:50 +01:00
Gareth Rees
eab1715183 In mv2test, use the random number generator from testlib. (this reduces duplication and makes test cases repeatable.)
Copied from Perforce
 Change: 182046
 ServerID: perforce.ravenbrook.com
2013-05-21 17:56:36 +01:00
Gareth Rees
93f329f7ef Show the output of the test case that failed. (on linux.)
Copied from Perforce
 Change: 182044
 ServerID: perforce.ravenbrook.com
2013-05-21 17:34:35 +01:00
Gareth Rees
ae5e9a15ca If a test case fails, show the output of the test case that failed, so that it isn't lost if the test suite is running on a build server such as travis ci. (works on os x.)
Copied from Perforce
 Change: 182040
 ServerID: perforce.ravenbrook.com
2013-05-21 17:25:13 +01:00
Gareth Rees
6401faf722 Improve description of mvtdeleteoverlapping.
Copied from Perforce
 Change: 182038
 ServerID: perforce.ravenbrook.com
2013-05-21 15:51:51 +01:00
Gareth Rees
c1b38d0423 Range design.
Copied from Perforce
 Change: 182035
 ServerID: perforce.ravenbrook.com
2013-05-21 14:52:27 +01:00
Gareth Rees
ebfa878f52 Refactor mvt so that blocks are pushed onto the abq in just one place.
Fix bug in MVTDelete: need to remove the whole of the old range from the ABQ, not just the range we're deleting.

Copied from Perforce
 Change: 182032
 ServerID: perforce.ravenbrook.com
2013-05-21 13:35:41 +01:00
Gareth Rees
b5ddb6710d Don't describe the pool at the end of mv2test.
Copied from Perforce
 Change: 182031
 ServerID: perforce.ravenbrook.com
2013-05-21 13:33:20 +01:00
Gareth Rees
5b5f5b8050 Cbsdescribe provides more information about the cbs.
Copied from Perforce
 Change: 182030
 ServerID: perforce.ravenbrook.com
2013-05-21 13:25:17 +01:00
Gareth Rees
a3e4f9f493 Add function versions of range{base,limit,size} macros: these can be useful when debugging.
Copied from Perforce
 Change: 182029
 ServerID: perforce.ravenbrook.com
2013-05-21 13:20:29 +01:00
Gareth Rees
6c74d9685c Include mv2test in the test suite (although it doesn't pass yet).
Copied from Perforce
 Change: 182027
 ServerID: perforce.ravenbrook.com
2013-05-21 00:30:20 +01:00
Gareth Rees
9416fd6cf2 A little bit more checking.
Copied from Perforce
 Change: 182026
 ServerID: perforce.ravenbrook.com
2013-05-21 00:29:56 +01:00
Gareth Rees
40911f20ab No need for abqdelete: use abqiterate instead.
Copied from Perforce
 Change: 182024
 ServerID: perforce.ravenbrook.com
2013-05-20 23:47:20 +01:00
Gareth Rees
03d76e0962 Add abq and range modules to mps core; add poolmv2 to supported pools.
Copied from Perforce
 Change: 182021
 ServerID: perforce.ravenbrook.com
2013-05-20 23:21:24 +01:00
Gareth Rees
28fc475b2a Use the new cbs, abq and range interfaces to avoid re-entrancy problems in callbacks.
Copied from Perforce
 Change: 182017
 ServerID: perforce.ravenbrook.com
2013-05-20 20:47:41 +01:00
Gareth Rees
d1fdfa6277 Use the new cbs interface.
Copied from Perforce
 Change: 182016
 ServerID: perforce.ravenbrook.com
2013-05-20 20:47:10 +01:00
Gareth Rees
cc7e7c0172 New module range handles common operations on address ranges.
Copied from Perforce
 Change: 182015
 ServerID: perforce.ravenbrook.com
2013-05-20 20:45:52 +01:00
Gareth Rees
4b970759be Make the cbs module more abstract by removing cbsblock from the public interface. avoid re-entrancy problems by removing the callback interface. public interfaces like cbsiteratemethod now operate in terms of address ranges rather than cbsblocks.
The functions CBSInsert, CBSDelete and CBSFind* now additionally return an "old" address range which gives the former base and limit of the block that has just been updated. This gives clients enough information to update their caches if need be.
Update CBS test and design accordingly.

Copied from Perforce
 Change: 182014
 ServerID: perforce.ravenbrook.com
2013-05-20 20:45:26 +01:00
Gareth Rees
2987b9fc04 Make the abq module manage elements of arbitrary type (knowing only their address and size) instead of managing cbsblock only. (this is preparatory to removing cbsblock from the cbs public interface.)
Update abqtest to use the new interface.
Add ABQ design.

Copied from Perforce
 Change: 182013
 ServerID: perforce.ravenbrook.com
2013-05-20 20:40:16 +01:00
Richard Brooksby
9f7a30bfbc Preventing failure if there is an assertion before event buffers are initialized.
Copied from Perforce
 Change: 182012
 ServerID: perforce.ravenbrook.com
2013-05-20 19:37:59 +01:00
Richard Brooksby
8f4f17e745 Renaming some local variables from "index" to "indx" to avoid shadowing the function "index".
Only certain versions of GCC seem to warn about this, but they include 4.6.3 being used by Tracis CI causing this failure <https://travis-ci.org/Ravenbrook/mps-temporary/builds/7322161>.

Copied from Perforce
 Change: 182011
 ServerID: perforce.ravenbrook.com
2013-05-20 19:37:18 +01:00
Richard Brooksby
67c9cd6c4f Gcc 4.7.3 on ubuntu 13 has stricter alias checking. disabling for now.
Copied from Perforce
 Change: 182001
 ServerID: perforce.ravenbrook.com
2013-05-20 16:33:28 +01:00
Richard Brooksby
1f883a6097 Arg.c was never added to comm.gmk, breaking the linux build.
Copied from Perforce
 Change: 182000
 ServerID: perforce.ravenbrook.com
2013-05-20 16:32:24 +01:00
Richard Brooksby
234e6c0226 Removing dependency on standard c library memcpy. oops.
Copied from Perforce
 Change: 181999
 ServerID: perforce.ravenbrook.com
2013-05-20 16:31:34 +01:00
Richard Brooksby
a7d9cfdbfe Fixing bogus comparison in assertion found by gcc warnings on linux.
Copied from Perforce
 Change: 181998
 ServerID: perforce.ravenbrook.com
2013-05-20 16:30:59 +01:00
Richard Brooksby
60f7df4335 Adjusting the default extend_by of the mv pool to be more sensible and match the other pools, but overriding it in the case of the arena control pool, where the default originated.
Copied from Perforce
 Change: 181946
 ServerID: perforce.ravenbrook.com
2013-05-19 20:01:52 +01:00
Gareth Rees
e0e34a1c98 Remove "emergency" free list allocator from the cbs module (it belongs in its own module) and update clients and the design accordingly.
Copied from Perforce
 Change: 181927
 ServerID: perforce.ravenbrook.com
2013-05-19 14:27:24 +01:00
Richard Brooksby
690db0f51d Catch up merge from mps master to keyword arguments development branch.
Copied from Perforce
 Change: 181890
 ServerID: perforce.ravenbrook.com
2013-05-17 14:37:48 +01:00
Richard Brooksby
e8eb1a1462 Fixing the mvff documentation to say that the keyword arguments are optional, and documenting their default values.
Attaching the note about some keywords not affecting allocation points to those keywords with a footnote reference.
Fixing the default alignment setting to MVFF pool to MPS_PF_ALIGN.

Copied from Perforce
 Change: 181874
 ServerID: perforce.ravenbrook.com
2013-05-16 18:12:54 +01:00
Richard Brooksby
2d960f2adc Correcting the documentation of the restrictions on the keyword arguments to the mvff pool class.
Copied from Perforce
 Change: 181872
 ServerID: perforce.ravenbrook.com
2013-05-16 17:40:14 +01:00
Richard Brooksby
4a37063561 The fragmentation limit argument to the mvt pool class is now passed as a floating point fraction, not a percentage, in the keyword interface.
Copied from Perforce
 Change: 181862
 ServerID: perforce.ravenbrook.com
2013-05-16 13:54:06 +01:00
Gareth Rees
76ed0b8fcb Use __builtin_readcyclecounter for event_clock if it's available.
Copied from Perforce
 Change: 181858
 ServerID: perforce.ravenbrook.com
2013-05-16 13:37:31 +01:00
Gareth Rees
1697e0ec52 Eventclock has enough entropy on all the platforms we support that we can use it to choose the random number seed.
Copied from Perforce
 Change: 181855
 ServerID: perforce.ravenbrook.com
2013-05-16 13:17:42 +01:00
Richard Brooksby
c46a9623ce Adding mps_arg_s fields for float and double, to complete the set of basic types.
Copied from Perforce
 Change: 181853
 ServerID: perforce.ravenbrook.com
2013-05-16 13:13:51 +01:00
Richard Brooksby
6d81499f35 Replacing duplicate *trivvarargs methods with a single implementation in args.c.
Copied from Perforce
 Change: 181851
 ServerID: perforce.ravenbrook.com
2013-05-16 13:10:01 +01:00
Richard Brooksby
a2c89c2c40 Making clear the size of the array of args passed to varargs conversion methods.
Copied from Perforce
 Change: 181845
 ServerID: perforce.ravenbrook.com
2013-05-16 03:12:11 +01:00
Richard Brooksby
d28c3acbea Quietly eliminating varargs to mps_alloc. they were never documented.
Copied from Perforce
 Change: 181843
 ServerID: perforce.ravenbrook.com
2013-05-16 03:07:50 +01:00
Richard Brooksby
1ab2cfe210 Eliminating unnecessary use of varargs in segment split and merge functions.
Copied from Perforce
 Change: 181842
 ServerID: perforce.ravenbrook.com
2013-05-16 03:02:20 +01:00
Gareth Rees
8322d3cc83 Test coverage report on os x.
Copied from Perforce
 Change: 181822
 ServerID: perforce.ravenbrook.com
2013-05-15 19:25:16 +01:00
Gareth Rees
e76d53158f Make forward declarations of various functions consistent with their actual declarations.
Copied from Perforce
 Change: 181788
 ServerID: perforce.ravenbrook.com
2013-05-15 14:18:28 +01:00
Gareth Rees
9e9c0e3990 Remove mps_arg from mps.h.
Use MPS_ARGS_BEGIN etc in the Scheme example and in the manual.
Use MPS_BEGIN and MPS_END instead of BEGIN and END.
The _FIELD macros don't need to be function-like macros.
Restore TODO comments in mps.h.
Scheme example compiles with -std=c89.

Copied from Perforce
 Change: 181749
 ServerID: perforce.ravenbrook.com
2013-05-13 21:01:38 +01:00
Richard Brooksby
9e4248ad49 Catch-up merge from master sources.
Copied from Perforce
 Change: 181746
 ServerID: perforce.ravenbrook.com
2013-05-13 19:06:08 +01:00
Gareth Rees
162a396899 Rename mps_key_arena_cl_addr to mps_key_arena_cl_base.
Copied from Perforce
 Change: 181739
 ServerID: perforce.ravenbrook.com
2013-05-12 18:12:47 +01:00
Gareth Rees
10c13b2a54 New macro mps_arg and revised macro mps_args_add mean that client programs no longer need to know which keyword argument goes in which field. revise documentation accordingly.
Copied from Perforce
 Change: 181736
 ServerID: perforce.ravenbrook.com
2013-05-12 17:21:03 +01:00
Gareth Rees
025845b4a7 Rename mps_arena_create_args to mps_arena_create_k to match the documentation, and for consistency with mps_pool_create_k and mps_ap_create_k.
Copied from Perforce
 Change: 181722
 ServerID: perforce.ravenbrook.com
2013-05-11 19:17:06 +01:00
Gareth Rees
09ce7184e7 Untabify.
Copied from Perforce
 Change: 181720
 ServerID: perforce.ravenbrook.com
2013-05-11 19:10:56 +01:00
Gareth Rees
6d66c398b6 Fix typo: "parmeters" for "parameters".
Copied from Perforce
 Change: 181719
 ServerID: perforce.ravenbrook.com
2013-05-11 19:10:14 +01:00
Richard Brooksby
847614be04 Converting design.mps.config to restructuredtext. rewriting, correcting, clarifying, and generally bringing it up-to-date.
Removing misplaced obsolete design text from mpstd.h.
Tidying up the format of a couple of other docs.

Copied from Perforce
 Change: 181717
 ServerID: perforce.ravenbrook.com
2013-05-11 17:53:40 +01:00
Richard Brooksby
e5c5652fca Adding leader comment to .p4ignore files and setting keyword expansion.
Copied from Perforce
 Change: 181684
 ServerID: perforce.ravenbrook.com
2013-05-10 03:52:36 +01:00
Richard Brooksby
820390a662 Fixing up .p4ignore files to ignore .p4configs and visual studio build results.
Copied from Perforce
 Change: 181683
 ServerID: perforce.ravenbrook.com
2013-05-10 03:48:40 +01:00