1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-31 09:20:54 -08:00
Commit graph

1551 commits

Author SHA1 Message Date
Gareth Rees
367ae76614 Park the arena before calling mps_chain_destroy.
Speed up mpsicv by reducing number of objects and by only running the test once (there's no inlined mps_tramp any more).

Copied from Perforce
 Change: 186024
 ServerID: perforce.ravenbrook.com
2014-05-12 12:53:46 +01:00
Gareth Rees
a80d297099 Mpseventtxt must not itself output telemetry, otherwise it is likely to overwrite the telemetry it is converting.
Copied from Perforce
 Change: 186023
 ServerID: perforce.ravenbrook.com
2014-05-12 12:30:46 +01:00
Gareth Rees
e13fc954ce Park the arena before destroying the default chain, to ensure that there are no traces using that chain.
Fix test cases that used automatic collection, but destroyed data structures without parking the arena.
Document the requirement on mps_chain_destroy and add the assertion to "common assertions and their causes".

Copied from Perforce
 Change: 186021
 ServerID: perforce.ravenbrook.com
2014-05-12 11:19:57 +01:00
Gareth Rees
93d01e3ca8 It is an error to destroy a chain if there is an active trace using the chain.
Copied from Perforce
 Change: 186013
 ServerID: perforce.ravenbrook.com
2014-05-11 21:47:20 +01:00
Gareth Rees
e25bb01799 Check the argument using argcheck.
Copied from Perforce
 Change: 186007
 ServerID: perforce.ravenbrook.com
2014-05-11 19:18:54 +01:00
Gareth Rees
3a1ce9493f Remove mps_key_cbs_extend_by and mfsextendself keyword arguments to cbsinit. these were unused and obsoleted by cbsblockpool.
Copied from Perforce
 Change: 186006
 ServerID: perforce.ravenbrook.com
2014-05-11 19:09:44 +01:00
Gareth Rees
358a76bf00 Remove unused function mfsgetinfo and unused type mfsinfo.
Copied from Perforce
 Change: 186004
 ServerID: perforce.ravenbrook.com
2014-05-11 18:52:53 +01:00
Gareth Rees
d60451c8ad Check keyword arguments after picking them.
Copied from Perforce
 Change: 185999
 ServerID: perforce.ravenbrook.com
2014-05-11 18:17:40 +01:00
Gareth Rees
9166015cf7 Remove some unused headers.
Copied from Perforce
 Change: 185994
 ServerID: perforce.ravenbrook.com
2014-05-10 09:47:58 +01:00
Gareth Rees
be87b190ed Defined(aver_and_check_all) is a better condition for invalidating the colour tables.
Copied from Perforce
 Change: 185993
 ServerID: perforce.ravenbrook.com
2014-05-10 09:45:26 +01:00
Gareth Rees
3a6a9e1101 Fix compilation of seg.c.
1. "#ifdef CHECKLEVEL > CheckLevelMINIMAL" was bogus: the #ifdef should have been #if, but even then it would not be right, because in the CHECKLEVEL_DYNAMIC configuration, CHECKLEVEL is a variable rather than a preprocessor constant. So use the condition defined(AVER_AND_CHECK_ALL) instead.
2. The final CHECKL(addr == seg->limit) only makes sense if the loop was executed.
3. The variables used by the loop need to be inside the #if to avoid warnings about unused variables.
4. Add reference to the job from a comment.

Copied from Perforce
 Change: 185992
 ServerID: perforce.ravenbrook.com
2014-05-10 09:44:25 +01:00
David Lovemore
4c52e0390b Only include tract loop ion segcheck when check level > minimal.
This is to speed up SegCheck in HOT variety.

Copied from Perforce
 Change: 185971
 ServerID: perforce.ravenbrook.com
2014-05-06 12:19:06 +01:00
Gareth Rees
085b15deb2 Scheme constructors now take an allocation point.
Copied from Perforce
 Change: 185959
 ServerID: perforce.ravenbrook.com
2014-05-04 20:39:31 +01:00
Gareth Rees
e50f28afeb The mps_args_add_field and mps_args_done now check that the number of arguments is in bounds.
Copied from Perforce
 Change: 185938
 ServerID: perforce.ravenbrook.com
2014-05-02 11:34:38 +01:00
Gareth Rees
ef779449b4 Default value for mps_key_ams_support_ambiguous is now the safer value true.
Copied from Perforce
 Change: 185927
 ServerID: perforce.ravenbrook.com
2014-05-01 18:02:53 +01:00
Gareth Rees
f82973bf08 Fix problems with the xcode project file (introduced in bad merges):
* airtest got built as mv2test in the RASH config
* airtest and nailboardtest got build with profiling in Debug config
* airtest still had bogus WE config

Copied from Perforce
 Change: 185916
 ServerID: perforce.ravenbrook.com
2014-05-01 12:21:17 +01:00
Gareth Rees
7620c6fcd1 Fix rash build on os x by adding the unused attribute to functions declared static that are not called in the rash variety.
Copied from Perforce
 Change: 185915
 ServerID: perforce.ravenbrook.com
2014-05-01 12:18:00 +01:00
Gareth Rees
3bdf7fc878 All prottramp implementations are now the same, so there is no need for separate implementations.
Copied from Perforce
 Change: 185901
 ServerID: perforce.ravenbrook.com
2014-04-30 16:29:42 +01:00
David Lovemore
70c0cb9a94 Rename bool(v) to boolof(v) to fix clash with the windows header file windows.h
Copied from Perforce
 Change: 185841
 ServerID: perforce.ravenbrook.com
2014-04-28 13:14:04 +01:00
Gareth Rees
0582cdfc38 Fix amsss.
Copied from Perforce
 Change: 185813
 ServerID: perforce.ravenbrook.com
2014-04-26 11:12:45 +01:00
Gareth Rees
b888d047ba Explain traceaddwhite failure logic as requested by nb in <https://info.ravenbrook.com/mail/2014/04/24/12-10-09/0/>.
Copied from Perforce
 Change: 185800
 ServerID: perforce.ravenbrook.com
2014-04-25 17:41:56 +01:00
Gareth Rees
b674ece749 Tracecondemnzones could leave the white set inconsistent if traceaddwhite failed. add an assertion to cover this case (corresponding to the similar assertion in tracecondemnall).
Copied from Perforce
 Change: 185765
 ServerID: perforce.ravenbrook.com
2014-04-23 20:22:19 +01:00
Gareth Rees
ca7dab39da Test all 8 combinations of debug, chain, ambig.
Copied from Perforce
 Change: 185763
 ServerID: perforce.ravenbrook.com
2014-04-23 19:42:27 +01:00
Gareth Rees
4ed2986197 Test the arena default chain. set the commit limit to make sure that the collector can make progress.
Copied from Perforce
 Change: 185749
 ServerID: perforce.ravenbrook.com
2014-04-22 23:18:42 +01:00
Gareth Rees
204abf130e Fix indentation.
Copied from Perforce
 Change: 185746
 ServerID: perforce.ravenbrook.com
2014-04-22 21:57:16 +01:00
Gareth Rees
8815555fd9 Separate jobs for lo and awl finalization.
Copied from Perforce
 Change: 185743
 ServerID: perforce.ravenbrook.com
2014-04-22 21:40:59 +01:00
Gareth Rees
6ffd4c7df5 Fix bugs in condemn logic:
1. TraceStartCollectAll now condemns all segments in pools with AttrGC (not just pools attached to generation zero of some chain, as before).
2. ChainDeferral now looks at all generations in the chain, so that the chain is condemned if any generation's new size is greater than its capacity (not just generation zero, as before).
3. ChainCondemnAuto now condemns all generations up to and including the highest generation whose new size is greater than its capacity (rather than, as before, up to and excluding the lowest generation whose new size is lower than its capacity).
Update finaltest.c so that it has a mode in which it allocates in generation 1 of a chain and with the arena released so that the above fixes are tested. Remove the MPS_KEY_GEN workarounds from awlut and awluthe as these are no longer needed.

Copied from Perforce
 Change: 185741
 ServerID: perforce.ravenbrook.com
2014-04-22 17:53:47 +01:00
Gareth Rees
5eebc02a46 Explain reasoning in amsbufferempty, as requested by rb <https://info.ravenbrook.com/mail/2014/04/16/12-42-33/0/>.
Copied from Perforce
 Change: 185603
 ServerID: perforce.ravenbrook.com
2014-04-16 13:59:33 +01:00
Gareth Rees
e97db74a0c Avoid avers with side effects, as requested by rb in <https://info.ravenbrook.com/mail/2014/04/16/11-47-22/0/>
Copied from Perforce
 Change: 185595
 ServerID: perforce.ravenbrook.com
2014-04-16 13:23:56 +01:00
Gareth Rees
c376a2b808 Mvt does not actually need to use gcsegs: in fact, gcsegs create difficulties because buffers need to be detached. so switch to using ordinary segs just like mvff.
Copied from Perforce
 Change: 185556
 ServerID: perforce.ravenbrook.com
2014-04-15 12:41:10 +01:00
Gareth Rees
a755d16585 Revert hasty merge of branch/2014-04-15/shared -- broke xcode build.
Copied from Perforce
 Change: 185553
 ServerID: perforce.ravenbrook.com
2014-04-15 12:39:51 +01:00
Gareth Rees
fa3e80eb7c Build and install a shared library on unix platforms.
Copied from Perforce
 Change: 185543
 ServerID: perforce.ravenbrook.com
2014-04-15 11:02:05 +01:00
Gareth Rees
fc86db4ec6 Fix arenarootswalk:
1. Blacken the segments again after scanning the roots, so that the roots can be walked again.
2. Don't cast RootGrey to a RootIterateFn -- the types are not compatible.
MMQA test function/122.c now passes.

Copied from Perforce
 Change: 185530
 ServerID: perforce.ravenbrook.com
2014-04-14 23:38:54 +01:00
Gareth Rees
3731f5741b Check the poolring so that there is an assertion failure (not a crash) if the client fails to destroy a pool.
Copied from Perforce
 Change: 185527
 ServerID: perforce.ravenbrook.com
2014-04-14 22:31:24 +01:00
Gareth Rees
e5c9808c72 Move the marker down the stack so that gcc's aggressive inline won't scupper it.
Copied from Perforce
 Change: 185524
 ServerID: perforce.ravenbrook.com
2014-04-14 18:37:31 +01:00
Gareth Rees
8865ac761c Simpler cast, more checking.
Copied from Perforce
 Change: 185510
 ServerID: perforce.ravenbrook.com
2014-04-14 12:32:18 +01:00
Gareth Rees
d728944c50 Simpler cast, more checking.
Copied from Perforce
 Change: 185507
 ServerID: perforce.ravenbrook.com
2014-04-14 12:13:31 +01:00
Gareth Rees
4b5eacdbb7 Avoid warning on lii3gc.
Copied from Perforce
 Change: 185506
 ServerID: perforce.ravenbrook.com
2014-04-14 12:13:22 +01:00
Gareth Rees
857087804d Simpler casting, and more checking.
Copied from Perforce
 Change: 185505
 ServerID: perforce.ravenbrook.com
2014-04-14 12:07:14 +01:00
Gareth Rees
e3604e83ab Simpler casting and more checking.
Copied from Perforce
 Change: 185502
 ServerID: perforce.ravenbrook.com
2014-04-14 11:34:20 +01:00
Gareth Rees
2eac654319 Check rings before destroying the control pool, so that you get an assertion when a ring points into space that is about to be unmapped, instead of a crash after it has been unmapped.
Copied from Perforce
 Change: 185495
 ServerID: perforce.ravenbrook.com
2014-04-13 20:51:10 +01:00
Gareth Rees
bc72bc7f79 Avoid strict aliasing warnings from gcc 4.8.
Copied from Perforce
 Change: 185484
 ServerID: perforce.ravenbrook.com
2014-04-12 21:44:18 +01:00
Gareth Rees
7c107c76c0 Fix compilation of eventtxt.c on lii6gc.
Copied from Perforce
 Change: 185483
 ServerID: perforce.ravenbrook.com
2014-04-12 21:33:29 +01:00
Gareth Rees
27d16fc322 Eventtxt no longer reports an error if there are multiple labels associated with an address. instead, it store all the labels encountered, and prints the one that was in force at the time of each event.
Use the MPS to manage memory, not malloc/free.
Recommend sort before mpseventtxt and not afterwards (data is smaller; labelling is more accurate).

Copied from Perforce
 Change: 185477
 ServerID: perforce.ravenbrook.com
2014-04-12 15:34:43 +01:00
Gareth Rees
03c4de821b Use the mps to manage memory in test cases, not malloc!
Copied from Perforce
 Change: 185474
 ServerID: perforce.ravenbrook.com
2014-04-11 21:27:31 +01:00
Gareth Rees
b033a14564 Ensure that mpseventsql compiles with gcc -wmissing-variable-declarations.
Copied from Perforce
 Change: 185473
 ServerID: perforce.ravenbrook.com
2014-04-11 21:18:23 +01:00
Gareth Rees
2ef0e22c55 Default value for mps_key_arena_size makes it easier to create arenas.
Copied from Perforce
 Change: 185472
 ServerID: perforce.ravenbrook.com
2014-04-11 21:15:09 +01:00
Gareth Rees
55273fd68b Turn -wconversion off again. (the mps builds with this option with gcc 4.8 but not with gcc 4.6.3 on the travis buildbots.)
Copied from Perforce
 Change: 185467
 ServerID: perforce.ravenbrook.com
2014-04-11 15:28:03 +01:00
Gareth Rees
da307afb81 Turn on -wduplicate-enum and -wmissing-variable-declarations options for clang. ensure the mps compiles with these options.
Copied from Perforce
 Change: 185466
 ServerID: perforce.ravenbrook.com
2014-04-11 15:17:20 +01:00
Gareth Rees
93a79ac8a6 Add -wconversion to the options for gcc. ensure that the mps builds.
Copied from Perforce
 Change: 185463
 ServerID: perforce.ravenbrook.com
2014-04-11 14:25:15 +01:00