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

2026 commits

Author SHA1 Message Date
Gareth Rees
d377539ae7 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
4ac304fd38 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
4c655eba6a 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
799ecf0420 Output all the pool generation accounting information.
Copied from Perforce
 Change: 185911
 ServerID: perforce.ravenbrook.com
2014-04-30 17:39:37 +01:00
Gareth Rees
9ad6005a18 Add testpoll on os x.
Copied from Perforce
 Change: 185910
 ServerID: perforce.ravenbrook.com
2014-04-30 17:38:51 +01:00
Gareth Rees
93db817d30 Arenarelease now calls arenapoll (not tracepoll) so that it doesn't break in config_poll_none.
Copied from Perforce
 Change: 185908
 ServerID: perforce.ravenbrook.com
2014-04-30 17:00:11 +01:00
Gareth Rees
7b9d33799e Catch-up merge from master sources to branch/2014-03-25/ansi.
Copied from Perforce
 Change: 185907
 ServerID: perforce.ravenbrook.com
2014-04-30 16:51:30 +01:00
Gareth Rees
d9e0b8883c Awl now returns segments to the arena when they are free.
Copied from Perforce
 Change: 185906
 ServerID: perforce.ravenbrook.com
2014-04-30 16:34:40 +01:00
Gareth Rees
282b0cb830 Update comment to match design.
Copied from Perforce
 Change: 185902
 ServerID: perforce.ravenbrook.com
2014-04-30 16:30:01 +01:00
Gareth Rees
bd0e9da9ce 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
Gareth Rees
b9ccc0af7a Fix problems identified by dl in <https://info.ravenbrook.com/mail/2014/04/30/12-47-23/0/>.
Copied from Perforce
 Change: 185897
 ServerID: perforce.ravenbrook.com
2014-04-30 15:24:26 +01:00
Gareth Rees
cd099a2aae Better names for poolgen functions.
Accounting for segment splitting and merging.
Accounting for allocation and freeing in segsmss.

Copied from Perforce
 Change: 185894
 ServerID: perforce.ravenbrook.com
2014-04-30 13:49:26 +01:00
Gareth Rees
405fde886f Revert a couple of whitespace changes to simplify the diffs.
Copied from Perforce
 Change: 185891
 ServerID: perforce.ravenbrook.com
2014-04-30 12:59:04 +01:00
Gareth Rees
25d595211a Undo seghasbuffer change, to simplify the diffs.
Copied from Perforce
 Change: 185890
 ServerID: perforce.ravenbrook.com
2014-04-30 12:56:30 +01:00
Gareth Rees
e62efa1619 Use double-entry book-keeping and bank reconciliation to ensure the soundness and completeness of the pool generation size accounting.
Copied from Perforce
 Change: 185888
 ServerID: perforce.ravenbrook.com
2014-04-30 12:14:54 +01:00
Gareth Rees
9887a1da26 Catch-up merge from branch/2014-04-30/poolgen.
Copied from Perforce
 Change: 185886
 ServerID: perforce.ravenbrook.com
2014-04-30 12:10:51 +01:00
Gareth Rees
5cacd3e0fc Pass gen parameter to amsinitinternal.
Set up segsmss with same chain as before.

Copied from Perforce
 Change: 185885
 ServerID: perforce.ravenbrook.com
2014-04-30 12:09:09 +01:00
Gareth Rees
b3d827b6fb Pool generations now refer directly to their generation (not via a chain and a generation number).
Allocation into a generation now via PoolGenAlloc (not ChainAlloc).
The "top generation" logic is encapsulated in the function ChainGen.

Copied from Perforce
 Change: 185877
 ServerID: perforce.ravenbrook.com
2014-04-30 11:18:44 +01:00
Gareth Rees
f4e63e0bdd No need for prod_checklevel_initial (was unused).
Copied from Perforce
 Change: 185876
 ServerID: perforce.ravenbrook.com
2014-04-30 11:08:23 +01:00
David Lovemore
fb7363db2e 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
54ee6e4292 Fix amsss.
Copied from Perforce
 Change: 185813
 ServerID: perforce.ravenbrook.com
2014-04-26 11:12:45 +01:00
Gareth Rees
28a6bfe289 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
fb56a08e49 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
1821ccc309 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
294c4a97cd 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
5b54651076 Fix indentation.
Copied from Perforce
 Change: 185746
 ServerID: perforce.ravenbrook.com
2014-04-22 21:57:16 +01:00
Gareth Rees
932d72770b 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
e7d41a8fde 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
3d92d21dba New function chaindescribe describes a chain.
Also GenDescDescribe and PoolGenDescribe.
GlobalsDescribe now describes chains.

Copied from Perforce
 Change: 185727
 ServerID: perforce.ravenbrook.com
2014-04-22 00:53:18 +01:00
Gareth Rees
dffa0bee22 Simpler bufferdescribe.
Update design.mps.writef with indentation feature and updated BufferDescribe.

Copied from Perforce
 Change: 185632
 ServerID: perforce.ravenbrook.com
2014-04-17 14:24:03 +01:00
Gareth Rees
8f6b41e9ac New function tracedescribe.
Copied from Perforce
 Change: 185631
 ServerID: perforce.ravenbrook.com
2014-04-17 14:22:19 +01:00
Gareth Rees
375e4fb42d Better mvspan descriptions.
Copied from Perforce
 Change: 185630
 ServerID: perforce.ravenbrook.com
2014-04-17 14:21:46 +01:00
Gareth Rees
a6018ff606 Don't aver in writef: typically called from debugger where we want a best effort.
Copied from Perforce
 Change: 185629
 ServerID: perforce.ravenbrook.com
2014-04-17 14:21:15 +01:00
Gareth Rees
d83fbf6b09 Correct indentation of describe output.
Copied from Perforce
 Change: 185626
 ServerID: perforce.ravenbrook.com
2014-04-17 13:36:42 +01:00
Gareth Rees
230ee1f936 Use freelistend instead of null as the special value.
Copied from Perforce
 Change: 185617
 ServerID: perforce.ravenbrook.com
2014-04-17 00:19:45 +01:00
Gareth Rees
1e43258933 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
bca0a066fb 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
66554a8b42 Put cbsfindinzones back where it was (moving it broke the build).
Copied from Perforce
 Change: 185584
 ServerID: perforce.ravenbrook.com
2014-04-16 11:19:55 +01:00
Gareth Rees
4ac5e3a9ce Oops: sense of test was wrong way round.
Copied from Perforce
 Change: 185581
 ServerID: perforce.ravenbrook.com
2014-04-16 10:55:39 +01:00
Gareth Rees
02c40ddb7e Use x and x_none for x ∈ {lock, plinth, remembered_set, shield} to match the other settings (aver_and_check, event, statistics).
Copied from Perforce
 Change: 185580
 ServerID: perforce.ravenbrook.com
2014-04-16 10:48:21 +01:00
Gareth Rees
acccc01ec4 Move cbsfindinzones so that diff is cleaner.
Copied from Perforce
 Change: 185578
 ServerID: perforce.ravenbrook.com
2014-04-16 10:24:26 +01:00
Gareth Rees
1099dbaeb5 Mvff no longer uses segments, but instead maintains the address ranges it has acquired from the arena in a cbs.
Copied from Perforce
 Change: 185574
 ServerID: perforce.ravenbrook.com
2014-04-15 17:52:14 +01:00
Gareth Rees
960c2960a8 Integrate addrset branch to mvffnoseg branch to pick up land size improvements.
Copied from Perforce
 Change: 185570
 ServerID: perforce.ravenbrook.com
2014-04-15 16:38:51 +01:00
Gareth Rees
a94cc2ed78 New generic function landsize returns the total size of ranges in a land (if the land supports it). implement it for all land classes.
The MVFF pool class doesn't have to maintain its free size any more: it can just call LandSize.
Move re-entrancy protection from CBS to Land. This allows us to remove some CBS functions. (But requires some adjustment in failoverDelete.)
In MVFF, do more checking of mvff->total.

Copied from Perforce
 Change: 185569
 ServerID: perforce.ravenbrook.com
2014-04-15 16:35:34 +01:00
Gareth Rees
d0881bf1e1 Lands maintain the total size of the address ranges they maintain. (this avoids the need to do free size accounting in mvff.)
Copied from Perforce
 Change: 185567
 ServerID: perforce.ravenbrook.com
2014-04-15 14:23:53 +01:00
Gareth Rees
661d48151c Integrate branch/2014-03-30/addrset to branch/2014-04-15/mvffnoseg to pick up land classes.
Copied from Perforce
 Change: 185564
 ServerID: perforce.ravenbrook.com
2014-04-15 13:16:24 +01:00
Gareth Rees
0abdd8ae47 Catch-up merge from master/...@185556 to branch/2014-03-30/addrset.
Copied from Perforce
 Change: 185563
 ServerID: perforce.ravenbrook.com
2014-04-15 13:14:50 +01:00
Gareth Rees
e933748bd6 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
eeaf8b887a 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
992ab111d6 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