Task branches
Contents
1. Introduction
This document lists the task branches for the Memory Pool System project. Task branches are used to carry out a specific body of work. See [RB 2000-09-05] for the decision on the location and naming of these branches for the P4DTI project, which has been followed here.)
This document will be modified when task branches are created or change their status.
Readership of this document is anyone interested in the project.
This document is not confidential. However, some of the branches referenced from this document are Ravenbrook company confidential and these cannot be accessed from outside the Ravenbrook domain.
2. Active branches
The following table lists the branches which are currently active (under development).
Branch | Changes | Purpose | Diffs |
---|---|---|---|
2014-02-28/white-cuckoo |
Changes | Experimenting with a cuckoo hash table of white segments. (job003796) | Diffs |
2014-03-05/instrument-event |
Changes | Attempting to make events instrumentable. | Diffs |
2014-04-14/remember-time-2 |
Changes | Second attempt at remembered set improvements (job003764) | Diffs |
2014-04-15/shared |
Changes | Building a shared library (job003532) | Diffs |
2014-07-25/condemn-gens |
Changes | Only condemn gens over capacity. (job003783) | Diffs |
2014-08-18/non-incremental |
Changes | Prototype performance changes to support Clasp. | Diffs |
2015-09-27/logging |
Changes | Interface to buffer logging (job003895). | Diffs |
2016-02-14/clang-cl |
Changes | Experimental clang-cl support to support future Open Dylan. | Diffs |
2016-03-08/automake |
Changes | Migrate developer build system to Automake (job003977). | Diffs |
2016-03-08/keyword-introspection |
Changes | Adding keyword introspection to make it easier to pass around MPS parameters (job003978). | Diffs |
2016-03-13/tradeoff-3 |
Changes | Trade-off between responsiveness and throughput (job003539). | Diffs |
2016-03-15/sunrise |
Changes | Rearchitect to abstract whiteness (job003796) and remove tracts (job003798) and pages. | Diffs |
2016-03-22/remember-time-3 |
Changes | Extending reference sets to include time intervals to improve barrier accuracy and reduce scanning. | Diffs |
2016-03-31/tract-pool-elim |
Changes | Eliminating the tract pool pointer (work towards job003798). | Diffs |
2016-04-14/no-condemn-suspend |
Changes | Avoid suspending the mutator between condemn and flip (job004002). | Diffs |
2016-05-03/clock |
Changes | High-performance clock (job003969, job003984, job003989). | Diffs |
2018-08-08/refset-struct |
Changes | Converting the RefSet value type into a structure type, so that we can store more information about references and improve the remembered set. | Diffs |
2018-08-17/exp-strategy |
Changes | Implementing exponential generation strategy to fix job004105. | Diffs |
2018-08-18/exp-strategy-2 |
Changes | Exponential generation strategy to fix job004105. | Diffs |
2019-06-04/regscan |
Changes | Reliably scan the registers (job004158). | Diffs |
2020-01-15/strategy |
Changes | New strategy to replace temporary code | Diffs |
2023-03-21/merge-custom-cet-main |
Changes | Merge Configura extensions from custom/cet/main to master at version 1.115 (changelevel 191208) in order to develop an mps-preview patch for GitHub current master. | Diffs |
3. Branches that are ready for review
These branches are listed in rough priority order (most important first).
Branch | Changes | Purpose | Diffs | Reviews |
---|---|---|---|---|
2018-07-29/page-sparering-elim |
Changes | Replace the spare page ring with a spare memory land (work towards job003798). Details. | Diffs | RB |
2016-04-04/unprotect-white |
Changes | Avoid protection cost for maintaining remembered set on condemned segments. Details. | Diffs | GDR |
4. Dormant branches
The following table lists task branches which are not currently active.
Branch | Changes | Purpose | Status |
---|---|---|---|
2001-09-24/MMconfigura-no-dongle |
Changes | Removing dongle dependency for release to Configura. | Merged into the master sources in change 28248. |
2001-09-24/freebsd-port |
Changes | Port to FreeBSD. | Merged into the master sources in change 23681. |
2001-11-23/MMconfigura-in-arena |
Changes | Configura request for mps_arena_has_addr() ;
Port to FreeBSD. |
Merged into the master sources in change 24163. |
2001-12-17/MMconfigura-shield-fix |
Changes | Fix for job000441. | Merged into the master sources in change 25379. |
2002-02-15/MMconfigura-awl |
Changes | Fix for job000462. | Merged into the master sources in changes 26536 and 28247. |
2002-04-11/MMconfigura-awl-auto |
Changes | Fix for job000502. | Merged into the master sources in changes 28076 and 28082. |
2002-04-15/MMconfigura-ams-auto |
Changes | Fix for job000506. | Merged into the master sources in change 29147. |
2002-05-14/MMconfigura-incremental-step |
Changes | Fix for job000531. | Merged into the master sources in changes 29464 and 29465. |
2002-05-22/open-source-prep |
Changes | Preparing the master sources for open source release. | Merged into the master sources in change 30256. |
2002-12-30/opportunism |
Changes | Configura opportunistic GC improvements (job000649). | Merged into the master sources in change 39673. |
2003-02-17/gcgenmsg |
Changes | Per generation GC message to say what each one is doing. Fix for job000666. | Merged into the master sources in change 161204. |
2003-11-04/noprotect |
Changes | Implementing mps_arena_expose (job000813). |
Merged into the master sources in change 62987. |
2004-12-15/dll |
Changes | Making the MPS into a Windows DLL (job001096). | Merged into the master sources in change 144824. |
2005-02-22/sc-integration |
Changes | Integrating the MPS with the SC scheme compiler. | Abandoned. |
2005-03-01/sspp |
Changes | Implementing stack scanner for xcppgc (job001146). | Merged into the master sources in change 147226. |
2005-03-02/osx-faster |
Changes | Implementing protection for xcppgc (job001147). | Merged into the master sources in change 147642. |
2005-03-10/splintify |
Changes | Experimenting with splint static code analyzer. |
Abandoned. |
2005-09-29/split-asserts |
Changes | Split up combined assertions (job001159). | Merged into the master sources in change 155171. |
2006-05-11/autotools |
Changes | Experimenting with GNU autotools configuration and build system. | Abandoned. |
2006-05-14/jam-build |
Changes | Experimenting with Jam/MR-based configuration and build system. | Abandoned. |
2006-05-31/feedback |
Changes | More feedback on what the MPS is doing and has done. Fix for job001150. | Abandoned. Contains unfinished example/hw-gc (example code for formats and GC). |
2006-12-15/unfixed-summary |
Changes | MPS development branch to investigate job001548 and generally improve AVERs etc to ensure accuracy of summaries. | Merged into the master sources in change 162150. |
2007-02-22/cmucl |
Changes | Integrating the MPS with CMUCL. | Abandoned. |
2007-04-11/lua |
Changes | Integrating the MPS with Lua. | Abandoned. |
2007-04-16/lua-gc |
Changes | Integrating the MPS with Lua. | Abandoned. |
2007-04-18/diag |
Changes | Diagnostic output. | Merged into the master sources in change 162839. |
2007-06-26/style |
Changes | Improving C style. | Merged into the master sources in change 162873. |
2007-07-02/band |
Changes | Trace bands to improve delivery of finalization messages (job001658). | Merged into the master sources in change 162787. |
2007-07-12/ramprel |
Changes | Using a relational macro to improve ramping diagnostics. | Merged into the master sources in change 162941. |
2007-07-19/gcdiag |
Changes | Improved garbage collection diagnostics. | Merged into the master sources in change 163046. |
2007-08-07/diagtag |
Changes | Tagged diagnostics. | Merged into the master sources in changes 163124 and 163127. |
2007-09-18/findref |
Changes | New function mps_arena_find_heap_ref() , to locate objects that contain a reference to an object of interest. |
Abandoned. |
2007-09-27/awldiag |
Changes | MPS development branch: Investigating poolawl.c , improving diagnostic output. |
Abandoned. |
2007-12-19/vmarenagrow |
Changes | Better VM arena growth, feedback. Gangsets. | Abandoned. Gangset (and other) work to be completed and merged. |
2008-03-11/auto_header |
Changes | Fix AMC pool + auto_header format nailboard leak. Fix pad retention. | Merged into the master sources in changes 164508 and 164885. |
2008-08-14/vc9 |
Changes | New clone platform for VC9; fix omitted mps_arena_vm_growth DLL export; provide mps-fns.def. | Merged into the master sources in several changes (latest @166536). |
2008-10-30/timing |
Changes | Messages, notably mps-message_clock() (job001969); MessageType now fn of MessageClass; correct _gc_start & _gc message lifecycle (job001989). Synchronous collection alerts (job001968). Better randomize() and rnd() for internal tests. Some investigation of ambiguous interior pointers. |
Merged into the master sources in changes 166590, 166675, 166815, 167392, and 167402. |
2009-02-17/movalot |
Changes | Frequent extra collections for debugging. | Abandoned. |
2009-03-31/padding |
Changes | Padding of large objects (job002205). | Merged into the master sources in changes 169907, 169904, 169900, and 169899. |
2009-05-18/vc9exit |
Changes | Supporting Microsoft Visual C/C++ 9. | Abandoned. |
2010-03-11/vmem |
Changes | MPS development branch for work on vmem. | Abandoned. |
2010-11-06/transform |
Changes | MPS development branch for mps_arena_transfrom_objects et al. | Re-branched into 2012-07-23/cet-transform . |
2012-03-26/build-w3i6 |
Changes | Build with Microsoft C on 64-bit Windows. Mostly API updates, since the MPS was already prepared for 64-bit since the DEC Alpha. | Merged into the master sources in change 178525. |
2012-03-27/longest |
Changes | Removing test program assumption that "unsigned long" is the longest integer type, unfortunately violated by Microsoft C on x86_64. | Merged into the master sources in changes 178072, 178078, and 178096. |
2012-05-21/build-xci6ll |
Changes | Build with Clang on 64-bit Mac OS X. Essentially a re-port of the MPS to modern Mac OS X. Easy. | Merged into the master sources in change 178560. |
2012-07-23/cet-transform |
Changes | Refactoring and productizing of Transforms for long term support for Configura, and on 64-bit platforms. | Reviewed by NB (1), (2). General improvements merged into the master sources in change 179309. Transforms merged to CET custom mainline in change 179472. |
2012-07-26/linux-catchup |
Changes | Bring up to date with Linux. Essentially this is a re-port of the MPS to Linux, developing against Ubuntu 11 and 12 as references. | Merged into the master sources in changes 178816 and 178913. |
2012-08-15/variety-reform |
Changes | Reducing the number of varieties back to the original design of two (ish) with a hot variety that is fast with some checking and a cool variety that runs in reasonable time with plenty of checking. | Merged into the master sources in changes 179279 and 179288. |
2012-08-21/diagnostic-telemetry |
Changes | Reforming the way telemetry events are defined, generated, logged, and output, in order to make them easier to use for both developers and users. | Merged into the master sources in change 179289. |
2012-09-08/doxygen |
Changes | Evaluating doxygen for maintaining the MPS reference manual and possibly other documentation. | Abandoned. |
2012-09-10/scheme-example |
Changes | Integrating Richard Brooksby's simple scheme interpreter with the MPS to provide a better example of use than the previous "Hello world" program. | Merged into the master sources in changes 179429 and 179430. |
2012-09-13/compat-c++ |
Changes | Investigating whether the MPS can be build as C++. | Abandoned. |
2012-09-26/single-unit |
Changes | Optimizing the compilation of the MPS as a single translation unit. | Abandoned. |
2012-10-09/user-guide |
Changes | Writing a user guide and improving the existing documentation. | Merged into the master sources in change 180943. |
2012-10-10/measurement |
Changes | Working on better MPS measurement. | Merged into the master sources in change 180943. |
2013-05-01/keyword-arguments |
Changes | Replacing varargs interfaces with keyword interfaces. Details. | Reviewed by DL, GDR, NB. Merged into the master sources in change 181994 and change 182562. |
2013-05-17/emergency |
Changes | Fixing the MVT pool class (job003486) by moving the “emergency” allocation strategy out of the CBS module into its own module. Details. | Reviewed by RB (1), (2), DL. Merged into the master sources in change 182614 and change 183935. |
2013-05-21/final-destroy |
Changes | Fixing job003341 by making it possible to destroy a pool containing objects registered for finalization. | Merged into the master sources in change 182578. |
2013-06-05/diag |
Changes | Replacing DIAG system with EVENT s. |
Merged into the master sources in change 182575. |
2013-06-08/benchmarks |
Changes | Adapt various benchmarks used to measure other memory allocators and apply them to the MPS in order to get a comparison and set targets for improvement. | Merged into the master sources in change 184106. |
2013-06-13/cet-performance |
Changes | Improve analytical tools for performance and strategy in large (> 1 GiB) heaps (job003539). | Merged into 2013-07-02/cet-ap-key in change 182889. |
2013-06-18/macosx-threads |
Changes | Supporting threads on OS X (job001621). | Reviewed by GDR (1), (2). Merged into the master sources in change 183002. |
2013-06-21/raspberry-pi |
Changes | Porting the MPS to the Raspberry Pi. | Abandoned pending requirement for support. |
2013-07-02/cet-ap-key |
Changes | Adding a key to allocation point creation for location-dependent objects, to avoid bad strategy feedback behaviour (job003536). | Merged to CET custom mainline in change 183116. |
2013-08-21/lii6ll |
Changes | New supported platform lii6ll (job003596). Details. | Reviewed by RB. Merged into the master sources in change 183503. |
2013-10-21/cet-addr-to-obj |
Changes | Adding an addr to obj function mapping interior pointers to objects to aid stack unwinding (job003589). Details. | Reviewed by GDR (1), (2), (3), (4), RB. Merged to CET custom mainline in change 183907. |
2013-11-04/cet-i6-stack-probe |
Changes | Adding a stack probe for i6 to avoid a stack overflow exception in an inconsistent state. (job003640). | Reviewed by GDR. Merged to CET custom mainline in change 183921. |
2014-01-15/nailboard |
Changes | New nailboard implementation to support ambiguous interior pointers (job003359). | Reviewed by RB, DL. Merged into the master sources in change 185285). |
2014-01-17/cbs-tract-alloc |
Changes | Tract allocation using CBS (job003554). | Reviewed by DL, GDR. Merged into the master sources in change 184783. |
2014-01-22/chunk-rtree |
Changes | Replace the arena chunk ring with a binary splay tree (job003554). | Abandoned: superseded by 2014-02-22/splay-tune and 2014-05-17/chunk-tree . |
2014-01-29/mps-chain-zones |
Changes | Clean up the way chains allocate in zones (job003670). | Reviewed by DL. Merged into the master sources in change 184342. |
2014-01-25/spare-ring |
Changes | Improve scalability (job003654) and hysteresis (job003674) in VM arena. Details. | Reviewed by GDR, DL (1), (2). Merged into the master sources in change 184359. |
2014-02-19/remember-time |
Changes | Remember time with scanned segments for improved scalability (job003654). | Merged into 2014-04-14/remember-time-2 in change 185605. |
2014-02-22/splay-tune |
Changes | Improving the splay tree implementation. | Reviewed by DL, GDR (1), (2). Merged into the master sources in change 184745. |
2014-02-23/mvff-tune |
Changes | Improving the MVFF pool so that it is good enough to replace the old MV pool. | Merged into 2014-04-15/mvffnoseg in change 186079. |
2014-02-26/args-done |
Changes | Obsoleting MPS_ARGS_DONE (job003677). Details. |
Reviewed by RB, DL. Merged into the master sources in change 184554. |
2014-03-03/cet-perf-test |
Changes | Performance testing with CET. | Abandoned: was a test branch only. |
2014-03-21/chunk-tree |
Changes | Storing chunks in a tree rather than a ring to improve lookup scalability (job003554). | Abandoned: superseded by 2014-05-17/chunk-tree . |
2014-03-21/pellesc |
Changes | Supporting Pelles C (job003709). Details. | Reviewed by DL, RB. Merged into the master sources in change 185075. |
2014-03-25/ansi |
Changes | Adding ANSI platform configuration (job003716). Details. | Reviewed by DL, NB. Merged into the master sources in change 186045. |
2014-03-25/emscripten |
Changes | Experimenting with emscripten as a target platform | Abandoned pending requirement for support. |
2014-03-30/addrset |
Changes | Encapsulating set-of-addresses pattern (job003684). Details. | Reviewed by DL, RB (1), (2), NB. Merged into the master sources in change 186350. |
2014-04-08/align |
Changes | Alignment reform (job003748). Details. | Reviewed by DL, RB. Merged into the master sources in change 186481. |
2014-04-09/coverity |
Changes | Coverity scan (NOT FOR MERGE). | Abandoned: nothing significant found. |
2014-04-15/mvffnoseg |
Changes | Speeding up MVFF by removing segments (job003509) and adding hysteresis. Details. | Reviewed by DL, RB, NB. Merged into the master sources in change 186536. |
2014-04-16/segs |
Changes | Remove segment splitting and merging (job003766). Details. | Abandoned: we have a use case for segment splitting. |
2014-04-17/describe |
Changes | Describe indentation (job003767). Details. | Reviewed by DL, RB. Merged into the master sources in change 186528. |
2014-04-21/cpp |
Changes | Compilation with C++ (job003770) | Abandoned. |
2014-04-22/condemn |
Changes | Ensure segments get condemned (job003771). | Reviewed by NB. Merged into the master sources in change 185812. |
2014-04-23/awl |
Changes | Ensuring that AWL allocations provoke collections (job003772). Details. | Reviewed by RB (1), DL, RB (2). Merged into the master sources in change 186409. |
2014-04-28/cet-catchup-tryout |
Changes | Try out a merge of master into cet/main for testing. | Abandoned: was a test branch. |
2014-04-30/poolgen |
Changes | Pool generation data structure simplification (job003776). Details. | Reviewed by DL, NB. Merged into the master sources in change 186190. |
2014-05-15/size |
Changes | Pool size methods (job003787). Details. | Reviewed by RB, DL. Merged into the master sources in change 186540. |
2014-05-17/chunk-tree |
Changes | Replacing the chunk ring with a tree (job003554). Details. | Reviewed by DL, RB (1), (2). Merged into the master sources in change 186564. |
2014-05-28/align |
Changes | Make the arena alignment configurable (job003823). Details. | Reviewed by DL, RB. Merged into the master sources in change 186672. |
2014-06-10/amc-extend-by |
Changes | Add control for AMC extension size (job003824). Details. | Reviewed by GDR, RB. Merged into the master sources in change 186584. |
2014-06-11/grain |
Changes | Renaming “arena alignment” as “arena grain size” (job003833). Details. | Reviewed by DL, RB. Merged into the master sources in change 186573. |
2014-06-13/control |
Changes | Speeding up the control pool (job003701 and job003812) | Abandoned: superseded by 2016-03-01/mvff-control . |
2014-06-14/vm |
Changes | Storing the VM structure in the vmChunk. Details. | Reviewed by RB and DL. Merged into the master sources in change 186678. |
2014-06-19/cet-merge |
Changes | Merging master sources and custom/cet/main | Merged into custom/cet/main in change 186861. |
2014-09-29/reserved |
Changes | Avoiding iteration over the chunks (job003814) and fixing accounting for the client arena (job001887). Details. | Reviewed by RB (1), (2). Merged into the master sources in change 188090. |
2014-10-01/finalize |
Changes | Preventing unfinalizable objects being registered for finalization (job003865) and fixing address introspection (job003866). Details. | Reviewed by RB. Merged into the master sources in change 188932. |
2014-10-02/mvtnoseg |
Changes | Removing segments from MVT (job003838). | Abandoned. |
2014-10-11/snc |
Changes | SNC fixes: timely death (job003883), size accounting (job003880), test cases (job003879). Details. | Reviewed by NB, RB, NB. Merged into the master sources in change 191102. |
2014-10-13/format |
Changes | Asserting if you destroy a format that's still in use by a pool (job003889). Details. | Reviewed by RB. Merged into the master sources in change 190097. |
2014-10-25/thread |
Changes | Handling dead threads (job003348). Details. | Reviewed by RB. Merged into the master sources in change 188923. |
2014-10-26/sc |
Changes | Stack context at ArenaEnter (job003525). Details. | RB (1), (2), (3), GDR (1), (2), (3), (4), (5). Merged into the master sources in change 194595. |
2014-11-07/policy |
Changes | Improving allocation policy in the presence of a commit limit (job003898). | Abandoned. |
2015-08-06/config |
Changes | Arena configuration improvement (job003750). Details. | Reviewed by NB, RB. Merged into the master sources in change 189148. |
2015-08-10/arena-create |
Changes | Fix unwinding of failed arena create (job003922); fix early detection of too-small arena creation (job003923). Details. | Reviewed by NB (1), (2). Merged into the master sources in change 188144. |
2015-08-11/compact |
Changes | Testing that chunks are removed from the arena (job003925). Details. | Reviewed by RB, NB. Merged into the master sources in change 191113. |
2015-08-11/policy |
Changes | Collecting policy decisions (job003926). Details. | Reviewed by NB, NB, RB. Merged into the master sources in change 189330. |
2015-08-25/tradeoff |
Changes | Miscellaneous policy fixes (job003933, job003934, job003935, job003936, job003937, job003938). Details. | RB (1), (2). Merged into the master sources in change 190039. |
2015-09-04/stack |
Changes | Supporting tagged references on the stack (job003668). Details. | Reviewed by NB (1), GDR (1), RB (1), (2), GDR (2), NB (2), GDR (3). Merged into the master sources in change 189541. |
2015-09-07/tradeoff-2 |
Changes | Trade-off between responsiveness and throughput (job003539). | Abandoned: superseded by 2016-03-13/tradeoff-3 . |
2016-02-26/job003898 |
Changes | Improving allocation policy in the presence of a commit limit (job003898). | Reviewed by GDR. Merged into the master sources in change 189397. |
2016-03-01/closure-size |
Changes | Removing the mostly unused size component of the closure passing convention. Details. | Reviewed by NB. Merged into the master sources in change 189880. |
2016-03-01/mvff-control |
Changes | Replace MV with MVFF as the arena control pool, as a step in eliminating the tract utility pointer (job003798). Details (1), (2). | Reviewed by GDR (1), (2), (3). Merged into the master sources in change 194442. |
2016-03-12/pause |
Changes | Pause control (job003539). Details. | Reviewed by RB. Merged into the master sources in change 190053. |
2016-03-04/spare-fraction |
Changes | Expressing the arena spare commit limit as a fraction, not an absolute size (job003674). Details. | Reviewed by GDR. Merged into the master sources in change 194962. |
2016-03-13/without-reservation |
Changes | Remove the reservoir pool (job003985). | Reviewed by DL. Merged into the master sources in change 190106. |
2016-03-11/shield-coalesce |
Changes | Experimental branch for coalescing protects in shield | Reviewed by GDR, NB, NB (2). Merged into the master sources in change 190376. |
2016-03-13/defer-write-barrier |
Changes | Defer write barrier to reduce protection overhead (job003975). | Reviewed by NB, GDR. Merged into the master sources in change 190380. |
2016-03-27/cbs-tidy |
Changes | Extract address-ordered tree logic from CBS (work towards job003798). Details. | Reviewed by GDR, DL. Merged into the master sources in change 194572. |
2016-03-30/tract-p-elim |
Changes | Eliminate the pool utility pointer from the tract table (work towards job003798). Details. | Reviewed by GDR, DL. Merged into the master sources in change 194716. |
2016-03-30/tract-white-elim |
Changes | Eliminate the duplicate white set from tracts (work towards job003798). Details. | Reviewed by GDR, DL. Merged into the master sources in change 194638. |
2016-03-31/page-sparering-elim |
Changes | Eliminate the spare ring from the page table (work towards job003798). Details. | Reviewed by GDR (1), DL, GDR (2). Abandoned: superseded by 2018-07-29/page-sparering-elim . |
2016-04-06/classig |
Changes | Experimental class system to subsume signatures and protocol. | Abandoned: superseded by 2016-04-08/protidying . |
2016-04-08/protidying |
Changes | Reworking the inheritance protocol. Details. | Reviewed by GDR (1), (2), (3), (4), (5). Merged into the master sources in change 191498. |
2016-04-11/job003998 |
Changes | Avoid allocating empty chunks (job003998). Details. | Reviewed by RB, DL. Merged into the master sources in change 191388. |
2016-04-12/job004000 |
Changes | Condemn generations rather than zones (job004000). Details. | Reviewed by RB, DL (1), (2). Merged into the master sources in change 192191. |
2016-04-13/mortality |
Changes | Measurement of mortality (job003794). Details. | Reviewed by RB. Merged into the master sources in change 192195. |
2016-04-16/statistic |
Changes | Fixing the STATISTIC mechanism (job003986). Details. | Reviewed by RB. Merged into the master sources in change 191281. |
2016-04-16/trace-gens |
Changes | Representing the set of generations condemned by a trace (job004001, job004093). Details. | Reviewed by DL. Merged into the master sources in change 194685. |
2016-04-19/job004007 |
Changes | Avoiding buffers contributing to a generation's new size (job004007). Details. | Reviewed by RB. Merged into the master sources in change 191371. |
2016-04-19/job004011 |
Changes | Avoiding multiple collections of the world in a single poll (job004011). Details. | Reviewed by RB. Merged into the master sources in change 191374. |
2016-04-20/seghasbuffer |
Changes | Adding SegHasBuffer (job004012). Details. | Reviewed by RB, GDR. Merged into the master sources in change 192173. |
2016-04-21/amswalk |
Changes | AMSWalk (job003738). Details. | Reviewed by RB. Merged into the master sources in change 192184. |
2016-04-21/ld-history |
Changes | Moving LD history into its own structure to reduce arena bloat. Details | Reviewed by GDR. Merged into the master sources in change 191447. |
2016-04-22/access |
Changes | Handling access violations when an arena is locked (job004019). | Abandoned: superseded by 2016-05-02/job004019 . |
2016-04-23/inst-methods |
Changes | Converting some universally used functions to methods on Inst. Details. | Reviewed by GDR. Merged into the master sources in change 192180. |
2016-05-02/job004019 |
Changes | Handling access violations when an arena is locked (job004019) | Abandoned: behaviour is as designed. |
2016-09-12/job004020 |
Changes | Simplifying the building and debugging of MMQA tests (job004020, job004045). Details. | Merged into the master sources in change 192325. |
2016-09-06/job004006 |
Changes | Post-mortem debugging support (job003911, job003951, job004006). Details. | Reviewed by NB, GDR. Merged into the master sources in change 192365. |
2017-03-04/seg-methods |
Changes | Refactor methods from pools to segments (work towards job004025). Details. | Reviewed by DL. Merged into the master sources in change 194268. |
2018-06-13/fork |
Changes | Support fork() on platforms fr, li, and xc, to fix job004062. Details. | Reviewed by NB, DL, APT. Merged into the master sources in change 193816. |
2018-06-18/mrgseg |
Changes | Avoiding the write barrier for MRG segments (job004072). Details. | Reviewed by DL. Merged into the master sources in change 194453. |
2018-06-18/job004070 |
Changes | Make LO and AWL assert on invalid exact references (job004070). Details. | Reviewed by DL. Merged into the master sources in change 194284. |
2018-06-18/was-marked |
Changes | Simplifying the was-marked protocol (job004073). Details. | Reviewed by DL. Merged into the master sources in change 193940. |
2018-06-20/monitor |
Changes | Monitoring of telemetry (job001150). Details. | Reviewed by GDR (1), (2), DL (1), (2), GDR (3). Merged into the master sources in change 195235. |
2018-06-27/job004056 |
Changes | Avoiding lock initialization race on Windows (job004056). Details. | Reviewed by DL. Merged into the master sources in change 194409. |
2018-07-03/mfs-tractp |
Changes | Eliminating the tract utility pointer from MFS (work towards job003798). Details. | Reviewed by GDR, DL. Merged into the master sources in change 194414. |
2018-07-04/mvff-perf |
Changes | Improving performance of MVFF so that it is suitable for use as the control pool (work towards job003798). Details. | Reviewed by DL. Merged into the master sources in change 194439. |
2018-07-07/roots-walk |
Changes | Fixing roots walking so that it does not break formatted objects walking (job004090). Details. | Reviewed by DL. Merged into the master sources in change 194642. |
2018-07-09/seg-alloc |
Changes | Adding allocation methods to segments (work towards job004025). Details. | Reviewed by DL. Merged into the master sources in change 194690. |
2018-07-19/mark-sweep |
Changes | Sharing code for mark-and-sweep pools (job004025) | Abandoned: superseded by 2020-08-28/mark-sweep . |
2018-08-01/land-insert-steal |
Changes | New Land method LandInsertSteal (job004102). Details. | Reviewed by RB. Merged into the master sources in change 194968. |
2018-08-01/rm-mv |
Changes | Removing MV pool class following deprecation. Details. | Reviewed by DL. Merged into the master sources in change 194869. |
2018-10-08/fotest-flag |
Changes | Add a flag to fotest.c so that oomAlloc knows when to return error codes (job004104). | Reviewed by GDR (1), (2). Merged into the master sources in change 195974. |
2020-05-21/licence |
Changes | Change to a BSD 2-clause licence (job004165). | Merged into the master sources. |
5. Historical branches
The branches listed in this section predate our acquisition of the MPS on 2001-08-13. They were derived from the HOPE/RCS hierarchy by the procedure described in [NDL 2001-08-15].
The trunk branch was integrated into the master sources on 2001-10-31 by change 23678.
See section 3 for development branches which postdate our acquisition of the MPS.
A. References
[NDL 2001-08-15] | "MPS/MMREF import procedures"; Nick Levine; Ravenbrook Limited; 2001-08-15. |
[RB 2000-09-05] | "Re: Location for development branches" (e-mail message); Richard Brooksby; Ravenbrook Limited; 2000-09-05 11:41:30 GMT. |
B. Document History
2001-08-17 | NDL | Created. |
2001-09-13 | NDL | Updated in the light of revisions to the RCS import. |
2001-10-31 | NDL | Add MMConfigura-no-dongle and 2001-09-24/freebsd-port branches. |
2001-12-17 | NB | Add MMconfigura-in-arena and MMconfigura-shield-fix branches. |
2002-02-15 | NB | Add MMconfigura-awl branch, and note on merge of
MMconfigura-shield-fix branch. |
2002-04-15 | NB | Add MMconfigura-awl-auto and MMconfigura-ams-auto branches, and
note on merge of MMconfigura-shield-fix and MMconfigura-awl-auto
branches. |
2002-05-14 | NB | Add MMconfigura-incremental-step branch. |
2002-05-24 | NB | Added merge note for MMconfigura-incremental-step branch. |
2002-05-24 | RB | Added 2002-05-22/open-source-prep branch. |
2002-06-20 | NDL | Removed confidentiality notice, explained that almost all development branches are confidential, and updated the copyright / license. |
2003-02-13 | DRJ | Added 2002-12-30/opportunism branch. |
2006-06-02 | RHSK | Fixed duplicate html anchor ids/names, by adding suffix "b" to get eg. id="ref-GlobalGraphics-1997-04-28b". |
2006-06-02 | RHSK | Added 2006-05-31/feedback . |
2006-12-15 | RHSK | Merged 2003-02-17/gcgenmsg . Noted that 2002-05-22/open-source-prep has been merged too. |
2006-12-15 | RHSK | Added 2006-12-15/unfixed-summary . |
2006-12-15 | RHSK | 2006-05-31/feedback contains documentation only; code is no longer live. |
2006-12-29 | RHSK | integrate documentation from 2006-05-31/feedback to master: it now contains unfinished example/hw-gc only; code is no longer live. |
2007-09-27 | RHSK | 2007-09-27/awldiag : Investigating poolawl.c , improving diagnostic output. |
2008-10-23 | RHSK | 2007-12-19/vmarenagrow , 2008-03-11/auto_header , and 2008-08-14/vc9 branches |
2009-02-17 | RHSK | 2008-10-30/timing branch |
2010-03-15 | RHSK | 2010-03-11/vmem branch |
2010-11-06 | RHSK | 2010-11-06/transform branch |
2011-08-16 | PNJ | Altered the document style to make it more readable and practical. Provided a contents list and re ordered the sections so that the most current information is at the top. Removed the section numbering. |
2011-08-17 | PNJ | Added a list of recent branches that don't seem to have been documented. |
2012-10-09 | GDR | Added 2012-10-09/user-guide . |
2013-02-08 | GDR | The 2012-10-09/user-guide and 2012-10-10/measurement branches were merged into the master sources. |
2013-05-20 | GDR | New branches 2013-05-01/keyword-arguments and 2013-05-17/emergency . Update status of many branches. |
2013-05-21 | GDR | New branch 2013-05-21/final-destroy . |
2013-06-05 | GDR | New branch 2013-06-05/diag . |
2013-06-06 | GDR | Branches 2013-05-01/keyword-arguments , 2013-05-21/final-destroy and 2013-06-05/diag merged and moved to “dormant”. |
2013-06-08 | RB | New branch 2013-06-08/benchmarks . |
2013-06-09 | GDR | Merged 2013-05-17/emergency . |
2013-07-10 | GDR | New branches 2013-06-18/macosx-threads , 2013-06-21/raspberry-pi , and 2013-07-02/cet-ap-key . |
2013-08-21 | GDR | New branch 2013-08-21/lii6ll . |
2013-10-24 | DL | New branch 2013-10-21/cet-addr-to-obj . |
2013-11-04 | DL | New branch 2013-11-04/cet-i6-stack-probe . |
2013-12-20 | GDR | Branch 2013-07-02/cet-ap-key was merged. |
2014-01-06 | GDR | Branch 2013-06-18/macosx-threads was merged. |
2014-01-09 | GDR | Merged 2013-10-21/cet-addr-to-obj into custom/cet/main . |
2014-01-10 | GDR | Merged 2013-11-03/cet-i6-stack-probe into custom/cet/main and 2013-05-17/emergency into the master sources. |
2014-01-12 | GDR | Added many missing branches. |
2014-01-15 | GDR | New branch 2014-01-15/nailboard . |
2014-01-31 | GDR | New branches 2014-01-17/cbs-tract-alloc , 2014-01-22/chunk-rtree , 2014-01-25/spare-ring , 2014-01-29/mps-chain-zones . |
2014-02-17 | GDR | Merged 2014-01-25/spare-ring and 2014-01-29/mps-chain-zones into the master sources. |
2014-02-26 | DL | New branches 2014-02-19/remember-time , 2014-02-22/splay-tune , 2014-02-23/mvff-tune and 2014-02-26/args-done . |
2014-03-07 | GDR | New branches 2014-02-28/white-cuckoo , 2014-03-03/cet-perf-test and 2014-03-05/instrument-event . Update status and diffs for 2014-01-15/nailboard . |
2014-03-12 | RB | Updating status for 2014-02-22/splay-tune . |
2014-03-13 | RB | Updating status for 2014-01-17/cbs-tract-alloc . |
2014-05-01 | GDR | Added new section contianing branches that are ready for review. |
2014-05-26 | GDR | Add change links for historical branches. |
C. Copyright and License
This document is copyright © 2001-2014 Ravenbrook Limited. All rights reserved. This is an open source license. Contact Ravenbrook for commercial licensing options.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Redistributions in any form must be accompanied by information on how to obtain complete source code for this software and any accompanying software that uses this software. The source code must either be included in the distribution or be available for no more than the cost of distribution plus a nominal fee, and must be freely redistributable under reasonable conditions. For an executable file, complete source code means the source code for all modules it contains. It does not include source code for modules or files that typically accompany the major components of the operating system on which the executable file runs.
This software is provided by the copyright holders and contributors "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement, are disclaimed. In no event shall the copyright holders and contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.