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

198 commits

Author SHA1 Message Date
Gareth Rees
307bc47730 Rename "mac os x" and "os x" to "macos", except for a few cases where for historical accuracy we want to continue to refer to the former name.
Copied from Perforce
 Change: 193821
2018-06-15 12:15:36 +01:00
Gareth Rees
f6356fc2ef Remove used epvmdefaultsubsequentsegsize.
Copied from Perforce
 Change: 192938
 ServerID: perforce.ravenbrook.com
2017-03-04 11:02:31 +00:00
Gareth Rees
1d65260d5b In protsgix.c, construct a mutatorcontext object and pass it to arenaaccess.
Copied from Perforce
 Change: 192550
 ServerID: perforce.ravenbrook.com
2016-10-13 20:12:32 +01:00
Gareth Rees
3dbe56a8b7 Rename prot{i3,i6}.c to prmc{i3,i6}.c because these files are part of the protection mutator context module.
Rename prmc{i3,i6}{fr,li,w3,xc}.c to prmc{fr,li,w3,xc}{i3,i6}.c for consistency of ordering of platform codes (OS before AR before CT).

Copied from Perforce
 Change: 192512
 ServerID: perforce.ravenbrook.com
2016-10-13 13:24:47 +01:00
Gareth Rees
4d5ae93957 Don't set stackprobedepth to 500 if config_pf_ansi is defined -- this leads to an assertion failure in span.c.
Copied from Perforce
 Change: 192393
 ServerID: perforce.ravenbrook.com
2016-09-14 13:03:27 +01:00
Gareth Rees
cf6c484a89 Lockisheld implementation for generic ("ansi") locks.
When CONFIG_THREAD_SINGLE is defined, use the generic lock module rather than compiling out all lock calls via lock.h. (Otherwise test cases that check LockIsHeld will fail.)

Copied from Perforce
 Change: 192254
 ServerID: perforce.ravenbrook.com
2016-09-09 11:01:04 +01:00
Gareth Rees
8523b6f666 Remove support for linux 2.4 and 2.5 (these versions used linuxthreads). linux is now supported from version 2.6 onwards (these versions use posix threads).
Copied from Perforce
 Change: 192240
 ServerID: perforce.ravenbrook.com
2016-09-08 11:36:02 +01:00
Gareth Rees
7473718e0a Catch-up merge from master sources to branch/2016-04-13/mortality.
Copied from Perforce
 Change: 192192
 ServerID: perforce.ravenbrook.com
2016-09-05 16:17:04 +01:00
Gareth Rees
08bd2f3474 New preprocessor constants config_pthreadext_sigsuspend and config_pthreadext_sigresume for configuring the signals used to suspend and resume threads.
Copied from Perforce
 Change: 192122
 ServerID: perforce.ravenbrook.com
2016-09-04 13:55:39 +01:00
Gareth Rees
e38b71547d Catch-up merge from branch/2016-04-12/job004000 to branch/2016-04-13/mortality.
Copied from Perforce
 Change: 191513
 ServerID: perforce.ravenbrook.com
2016-04-21 18:20:54 +01:00
Richard Brooksby
efb1d94578 Catch-up merge from master sources to branch/2016-04-08/protidying.
Copied from Perforce
 Change: 191471
 ServerID: perforce.ravenbrook.com
2016-04-21 14:46:10 +01:00
Gareth Rees
10be1ec77f Initialize arena->zoneshift to zoneshiftunset (which is not a valid shift) and modify the arena checking to spot this value. previously a default shift value (namely 20) was used, but this value was bogus as the zone shift is not determined until the class initialization runs.
Copied from Perforce
 Change: 191370
 ServerID: perforce.ravenbrook.com
2016-04-20 15:51:16 +01:00
Richard Brooksby
bb5a36b27e Using the address of the class as its id as a step to eliminating classdef.h.
Copied from Perforce
 Change: 191234
 ServerID: perforce.ravenbrook.com
2016-04-19 14:21:29 +01:00
Gareth Rees
942bee5823 Compile out statistic declarations in non-statistical varieties (at the cost of some syntax checking).
Add some missing STATISTIC guards where statistics are used.
Add design documentation.
Avoid unnecessary distinction between STATISTIC and STATISTIC_STAT (both result in statements).

Copied from Perforce
 Change: 191178
 ServerID: perforce.ravenbrook.com
2016-04-16 12:07:10 +01:00
Gareth Rees
3174eba71e Maintain a moving average of the mortality of each generation.
Copied from Perforce
 Change: 191081
 ServerID: perforce.ravenbrook.com
2016-04-13 15:19:50 +01:00
Richard Brooksby
ff35af0f15 Merging branch/2016-03-13/defer-write-barrier into master sources.
Copied from Perforce
 Change: 190380
 ServerID: perforce.ravenbrook.com
2016-03-24 12:07:20 +00:00
Richard Brooksby
dd96d7cc5c Responding to review by gdr <https://info.ravenbrook.com/mail/2016/03/21/20-20-15/0/>.
Copied from Perforce
 Change: 190307
 ServerID: perforce.ravenbrook.com
2016-03-22 16:32:10 +00:00
Richard Brooksby
b66267ec5c Renaming shield cache to shield queue.
Copied from Perforce
 Change: 190220
 ServerID: perforce.ravenbrook.com
2016-03-20 00:46:59 +00:00
Richard Brooksby
b720a44d65 Improving design document with references and separating ideas from current implementation.
Copied from Perforce
 Change: 190214
 ServerID: perforce.ravenbrook.com
2016-03-19 23:31:00 +00:00
Richard Brooksby
b8c51be19d Tidying up and adding cross references to shiny new design document.
Copied from Perforce
 Change: 190213
 ServerID: perforce.ravenbrook.com
2016-03-19 23:07:53 +00:00
Richard Brooksby
7ee20c87a6 Catch-up merge from master sources to branch/2016-03-13/defer-write-barrier.
Copied from Perforce
 Change: 190175
 ServerID: perforce.ravenbrook.com
2016-03-17 20:14:47 +00:00
Richard Brooksby
b6622d0356 Design documentation, commentary, and code tidying.
Copied from Perforce
 Change: 190172
 ServerID: perforce.ravenbrook.com
2016-03-17 20:04:26 +00:00
Richard Brooksby
7880c31aa9 Shield cache that grows. improving commentary.
Copied from Perforce
 Change: 190160
 ServerID: perforce.ravenbrook.com
2016-03-17 16:55:14 +00:00
Richard Brooksby
bd9ef4dcf2 Catch-up merge from master sources to branch/2016-03-11/shield-coalesce.
Copied from Perforce
 Change: 190150
 ServerID: perforce.ravenbrook.com
2016-03-17 13:53:40 +00:00
Richard Brooksby
f607db19fb Justifying the default pause time.
Copied from Perforce
 Change: 190049
 ServerID: perforce.ravenbrook.com
2016-03-15 06:04:42 +00:00
Richard Brooksby
83fc7866c9 Tidying up naming of write barrier deferral.
Copied from Perforce
 Change: 189960
 ServerID: perforce.ravenbrook.com
2016-03-13 13:26:24 +00:00
Richard Brooksby
54de13427b Integrating write barrier deferral changes from branch/2014-08-18/non-incremental.
p4 integrate branch/2014-08-18/non-incremental/...@186975,186988 branch/2016-03-13/defer-write-barrier/...

Copied from Perforce
 Change: 189943
 ServerID: perforce.ravenbrook.com
2016-03-13 11:27:21 +00:00
Gareth Rees
459a9f775d Implement pause time control.
Copied from Perforce
 Change: 189921
 ServerID: perforce.ravenbrook.com
2016-03-12 22:08:26 +00:00
Gareth Rees
66e0d30340 Catch-up merge from branch/2015-08-25/tradeoff to branch/2016-03-12/pause (to pick up the morework value in arenapoll).
Copied from Perforce
 Change: 189918
 ServerID: perforce.ravenbrook.com
2016-03-12 20:32:41 +00:00
Gareth Rees
c05c8a5609 Documentation and interface for pause time control (no implementation yet).
Copied from Perforce
 Change: 189915
 ServerID: perforce.ravenbrook.com
2016-03-12 20:25:33 +00:00
David Lovemore
935b3fdf07 Bigger shield cache, to make coalescing more useful.
Copied from Perforce
 Change: 189872
 ServerID: perforce.ravenbrook.com
2016-03-11 17:05:45 +00:00
Richard Brooksby
f8341520c2 Catch-up merge from master sources.
Copied from Perforce
 Change: 189265
 ServerID: perforce.ravenbrook.com
2016-02-17 11:04:51 +00:00
Gareth Rees
d2662a861e Catch-up merge from branch/2015-08-11/policy to branch/2015-08-25/tradeoff.
Copied from Perforce
 Change: 188250
 ServerID: perforce.ravenbrook.com
2015-09-04 19:13:28 +01:00
Gareth Rees
d0042b7b46 Move arenadefaultzoneset to be adjacent to its todo.
Add comments for ArenaDefaultZONESET and LocusPrefDEFAULT.

Copied from Perforce
 Change: 188237
 ServerID: perforce.ravenbrook.com
2015-09-04 15:24:14 +01:00
Gareth Rees
61bae42d43 Introduce new type work representing a measure of work done by the collector. use this systematically to make the code clearer.
Copied from Perforce
 Change: 188210
 ServerID: perforce.ravenbrook.com
2015-09-03 13:01:55 +01:00
Gareth Rees
7cc5a2d8f6 Catch-up merge from branch/2015-08-11/policy to branch/2015-08-25/tradeoff.
Copied from Perforce
 Change: 188176
 ServerID: perforce.ravenbrook.com
2015-08-25 19:35:03 +01:00
Gareth Rees
46280a07ab New function policycollectiontime estimates the time needed to collect the arena. mysterious constants are given names and moved to config.h.
Copied from Perforce
 Change: 188160
 ServerID: perforce.ravenbrook.com
2015-08-21 15:27:14 +01:00
Gareth Rees
098b4da32d New function mps_arena_configure provides keyword argument interface to changing the properties of an arena.
New keyword arguments MPS_KEY_ARENA_COMMIT_LIMIT and MPS_KEY_SPARE_ARENA_COMMIT_LIMIT can be passed to mps_arena_create_k or mps_arena_configure.
Deprecate mps_arena_commit_limit_set and mps_arena_spare_commit_limit_set.

Copied from Perforce
 Change: 188085
 ServerID: perforce.ravenbrook.com
2015-08-06 17:02:51 +01:00
Gareth Rees
0975646ca3 Analysis justifying the value of stackprobedepth.
Copied from Perforce
 Change: 187380
 ServerID: perforce.ravenbrook.com
2014-10-24 10:16:28 +01:00
Gareth Rees
2a49e2eeaf Bring ring design up to date (excepting figures).
Add links from design documents to mail messages imported from Harlequin.

Copied from Perforce
 Change: 187067
 ServerID: perforce.ravenbrook.com
2014-09-27 16:11:21 +01:00
Gareth Rees
456d747b61 Rename segpref to locuspref -- this structure describes preferences for the placement of any kind of address, not just segments.
Add LocusPrefDescribe and use it in MVFFDescribe.

Copied from Perforce
 Change: 187061
 ServerID: perforce.ravenbrook.com
2014-09-27 11:27:00 +01:00
David Lovemore
476ce386fe Added more control over write barrier. in particular separated scans after a hit.
Copied from Perforce
 Change: 186988
 ServerID: perforce.ravenbrook.com
2014-08-27 11:21:18 +01:00
David Lovemore
d2439c4be7 Added experimental control over write barrier eagerness.
The write barrier is only raised after three unnecessary scans.

Copied from Perforce
 Change: 186975
 ServerID: perforce.ravenbrook.com
2014-08-21 15:53:57 +01:00
David Lovemore
9da3ff7bee Add mps_key_arena_incremental option.
Avoid read and write barrier in non-incremental mode.
Add --non-incremental option to gcbench

Copied from Perforce
 Change: 186969
 ServerID: perforce.ravenbrook.com
2014-08-20 13:03:20 +01:00
David Lovemore
6b47c948ce set control_extend_by to 32768.
The CONTROL_EXTEND_BY value for the extend by on the control pool was set really small (4096) on the assumption that the control pool was not heavily used. However, since we allocate Seg's in the control pool and recycle them frequently, this assumption is no longer true.

Copied from Perforce
 Change: 186832
 ServerID: perforce.ravenbrook.com
2014-07-04 15:27:48 +01:00
Gareth Rees
77a7bbbf39 Don't repeat generation sizes in the comments (they could get out of sync).
Copied from Perforce
 Change: 186827
 ServerID: perforce.ravenbrook.com
2014-07-04 13:58:34 +01:00
David Lovemore
9beee4a193 Adjust generation sizes for the default chain.
Add release note recommending retuning of generation sizes.

Copied from Perforce
 Change: 186824
 ServerID: perforce.ravenbrook.com
2014-07-04 13:32:45 +01:00
Gareth Rees
78507d9df6 Ensure that the amcss test case uses a wide range of arena grain sizes (by scaling up the whole allocation).
Remove hack from rnd_grain -- this was covering up a bug.
Base the AMC "large" segment determination on the requested object size, not the (rounded up) segment size.
Assert in the case where largeSize < extendBy: this has bad space performance.

Copied from Perforce
 Change: 186755
 ServerID: perforce.ravenbrook.com
2014-06-30 16:07:09 +01:00
Gareth Rees
9436cada6d Round up the grain size in the client arena to arena_client_grain_size (otherwise the grain might be so small that the page table uses up all the space in the chunk).
Copied from Perforce
 Change: 186689
 ServerID: perforce.ravenbrook.com
2014-06-19 14:10:30 +01:00
David Lovemore
3b97cae580 Catch up merge from master/...@186577
Copied from Perforce
 Change: 186582
 ServerID: perforce.ravenbrook.com
2014-06-13 16:38:20 +01:00