Richard Brooksby
43b3f1a5cb
Generating a static superclass mapping and eliminating other superclass macros.
...
Copied from Perforce
Change: 190827
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
298addf910
Implementing isa, mustbea, couldbea, and reshaping the land classes to put the init, finish, and describe methods the right way in.
...
Copied from Perforce
Change: 190826
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
1d28eaff07
Eliminating the concept of "alias classes" in favour of "kinds".
...
Copied from Perforce
Change: 190825
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
2e191a810e
Referring to classes by their base identifiers.
...
Copied from Perforce
Change: 190823
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
09e73dd1da
Renaming protocolinst to inst and protocolclass to instclass to make naming consistent with other classes.
...
Copied from Perforce
Change: 190822
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
c1abe0e9fd
Abstracting class declarations and references to classes.
...
Copied from Perforce
Change: 190812
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
49534e914f
Protecting some segment accessor macros with rvalue.
...
Removing duplicate definition of SegPoolRing.
Copied from Perforce
Change: 190642
ServerID: perforce.ravenbrook.com
2016-04-02 15:53:57 +01:00
Richard Brooksby
e711121e82
Moving quicksort's workspace off the stack to limit mps stack usage.
...
Copied from Perforce
Change: 190332
ServerID: perforce.ravenbrook.com
2016-03-23 13:47:55 +00:00
Richard Brooksby
3ed0bc9440
Reorganising shield design and updating.
...
Renaming ShieldSuspend to ShieldHold and ShieldResume to ShieldRelease to reduce confusion.
Copied from Perforce
Change: 190320
ServerID: perforce.ravenbrook.com
2016-03-23 08:20:29 +00:00
Richard Brooksby
7d0cc19ca3
Tearing down shield correctly.
...
Copied from Perforce
Change: 190225
ServerID: perforce.ravenbrook.com
2016-03-20 01:01:54 +00:00
Richard Brooksby
f3bde6fd39
Promoting shield to first class structure.
...
Copied from Perforce
Change: 190219
ServerID: perforce.ravenbrook.com
2016-03-20 00:32:43 +00:00
Richard Brooksby
47899aff29
Importing good random number generator from testlib for use in quicksort and perhaps later in cuckoo hashing.
...
Copied from Perforce
Change: 190191
ServerID: perforce.ravenbrook.com
2016-03-19 08:57:27 +00:00
Richard Brooksby
40221476cc
Tidying up quicksort into an mpm utility.
...
Copied from Perforce
Change: 190171
ServerID: perforce.ravenbrook.com
2016-03-17 19:26:45 +00:00
Richard Brooksby
44f80af1ec
Merging branch mps/branch/2016-03-13/without-reservation into master sources.
...
Copied from Perforce
Change: 190106
ServerID: perforce.ravenbrook.com
2016-03-15 13:19:27 +00:00
Richard Brooksby
d54be414d9
Merging branch/2016-03-12/pause into the master sources.
...
Copied from Perforce
Change: 190053
ServerID: perforce.ravenbrook.com
2016-03-15 06:31:08 +00:00
Gareth Rees
2a3c4e0590
Address points made by rb in review < https://info.ravenbrook.com/mail/2016/03/14/18-48-19/0/ >
...
Copied from Perforce
Change: 190031
ServerID: perforce.ravenbrook.com
2016-03-14 20:10:14 +00:00
Richard Brooksby
1025b28674
Eliminating withreservoirpermit and all its variants.
...
Copied from Perforce
Change: 190005
ServerID: perforce.ravenbrook.com
2016-03-13 21:04:01 +00:00
Richard Brooksby
cc6262ae66
Basic removal of the reservoir pool from code and design.
...
Copied from Perforce
Change: 190000
ServerID: perforce.ravenbrook.com
2016-03-13 20:32:24 +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
Richard Brooksby
32d42e00cd
Catch-up merge from master sources to branch/2015-08-25/tradeoff.
...
Copied from Perforce
Change: 189891
ServerID: perforce.ravenbrook.com
2016-03-12 15:13:15 +00:00
Richard Brooksby
e3d69095db
Catch-up merge from master sources to branch/2016-03-01/closure-size.
...
Copied from Perforce
Change: 189728
ServerID: perforce.ravenbrook.com
2016-03-08 09:13:35 +00:00
Richard Brooksby
804f15dead
Removing the mostly unused size component of the closure convention.
...
Copied from Perforce
Change: 189503
ServerID: perforce.ravenbrook.com
2016-03-01 17:20:50 +00:00
Richard Brooksby
14774ccd06
Eliminating closure_size from area scanners and root registration functions, as it isn't all that useful.
...
Copied from Perforce
Change: 189491
ServerID: perforce.ravenbrook.com
2016-03-01 15:59:06 +00:00
Richard Brooksby
3804af1803
Catch-up merge from master sources to branch/2015-09-04/stack.
...
Copied from Perforce
Change: 189370
ServerID: perforce.ravenbrook.com
2016-02-27 00:54:00 +00:00
Richard Brooksby
078ac268d5
Catch-up merge from branch/2015-08-06/config to remove arenaconfigure.
...
Copied from Perforce
Change: 189335
ServerID: perforce.ravenbrook.com
2016-02-25 22:59:06 +00:00
Richard Brooksby
8d622806d0
Removing unused function arenascannable.
...
Reinstate when needed. See <https://info.ravenbrook.com/mail/2016/02/17/13-05-54/0/ >.
Copied from Perforce
Change: 189292
ServerID: perforce.ravenbrook.com
2016-02-25 17:09:09 +00:00
Richard Brooksby
b929dbbe4c
Moving scanning accounting to tracescanarea and creating analogous formatscan.
...
Copied from Perforce
Change: 189325
ServerID: perforce.ravenbrook.com
2016-02-19 12:11:50 +00:00
Richard Brooksby
6413f3bc27
Renaming "bottom" and "top" of stack to "cold" and "hot" end, to prevent confusion about descending stacks.
...
Correcting design documentation relating to stacks.
Referencing hot and cold end concepts from glossary entry for control stacks.
Copied from Perforce
Change: 189320
ServerID: perforce.ravenbrook.com
2016-02-18 23:49:58 +00:00
Richard Brooksby
4487895475
Detabifying code and restructuredtext files.
...
Copied from Perforce
Change: 189309
ServerID: perforce.ravenbrook.com
2016-02-18 19:58:13 +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
Richard Brooksby
c1918bc79b
Creating general mps_root_create_thread and renaming mps_root_create_stack as a specialised version of it, mps_root_create_thread_tagged.
...
Copied from Perforce
Change: 189198
ServerID: perforce.ravenbrook.com
2016-02-15 19:12:59 +00:00
Richard Brooksby
b384334a32
Reimplementing mps_root_create_reg in terms of rootcreatethreadtagged and abolishing rootreg. yay!
...
Copied from Perforce
Change: 189197
ServerID: perforce.ravenbrook.com
2016-02-15 18:19:30 +00:00
Richard Brooksby
ab41d5c4f7
Renaming rootreg_masked to rootthread_tagged with corresponding changes to other identifiers.
...
Copied from Perforce
Change: 189196
ServerID: perforce.ravenbrook.com
2016-02-15 17:57:06 +00:00
Richard Brooksby
fe206feb2d
Lifting stack and register area scanner into mps interface to allow generalisation of stack format.
...
Copied from Perforce
Change: 189195
ServerID: perforce.ravenbrook.com
2016-02-15 17:46:45 +00:00
Richard Brooksby
7238921356
Generalising roottable to rootarea and using it to implement mps_root_create_table_* and mps_root_create_area.
...
Copied from Perforce
Change: 189193
ServerID: perforce.ravenbrook.com
2016-02-15 17:30:45 +00:00
Richard Brooksby
fb6c150ba2
Generalising roottable_masked to rootarea_tagged and lifting scanner assumption.
...
Copied from Perforce
Change: 189192
ServerID: perforce.ravenbrook.com
2016-02-15 16:56:42 +00:00
Richard Brooksby
7df6c140f8
Generalising tracescanarea to be a checking wrapper for all area scanners.
...
Copied from Perforce
Change: 189190
ServerID: perforce.ravenbrook.com
2016-02-15 15:44:57 +00:00
Richard Brooksby
31870a9b95
Renaming tracescanareamasked to tracescanareatagged
...
Copied from Perforce
Change: 189133
ServerID: perforce.ravenbrook.com
2016-02-11 20:39:57 +00:00
Richard Brooksby
b2bc211404
Adding mps_root_create_table_tagged as an interface to more generally tagged roots.
...
Deprecating the less general mps_root_create_table_masked.
Copied from Perforce
Change: 189131
ServerID: perforce.ravenbrook.com
2016-02-11 20:28:39 +00:00
Richard Brooksby
aff58a3f60
Catch up merge from master sources.
...
Copied from Perforce
Change: 189130
ServerID: perforce.ravenbrook.com
2016-02-10 21:10:25 +00:00
Richard Brooksby
a2f78d0df6
Catch-up merge from masters.
...
Copied from Perforce
Change: 188921
ServerID: perforce.ravenbrook.com
2016-01-19 16:22:39 +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
800aa3b250
Policycollectiontime is now local to policy.c.
...
Improve comment for policyCondemnChain (document the mortalityReturn parameter to; fix design reference).
Copied from Perforce
Change: 188240
ServerID: perforce.ravenbrook.com
2015-09-04 16:02:46 +01:00
Gareth Rees
db81205af5
Move policy for mps_arena_step to policy module.
...
Copied from Perforce
Change: 188238
ServerID: perforce.ravenbrook.com
2015-09-04 15:25:37 +01:00
Gareth Rees
5af0bf9f01
Correct type for rootcreateregmasked.
...
Copied from Perforce
Change: 188233
ServerID: perforce.ravenbrook.com
2015-09-04 12:28:49 +01:00
Gareth Rees
ea6250898a
New function mps_root_create_reg_masked applies a mask and pattern test to all words in registers and on the stack when scanning them. this supports tagged references in these locations.
...
Consistently use the type "Word *" for pointers into the stack or into saved registers.
Remove TraceScanAreaTagged.
Copied from Perforce
Change: 188231
ServerID: perforce.ravenbrook.com
2015-09-04 12:22:03 +01:00
Gareth Rees
0ff67113ae
Separate the values "more work to do?" and "amount of work done" in tracepoll. previously, the code used "amount of work done > 0" when it needed "more work to do?" but that's not right, because on the last two calls to traceadvance, no "work" is done (because reclaim work is not measured), but there may still be more work to do.
...
Copied from Perforce
Change: 188218
ServerID: perforce.ravenbrook.com
2015-09-03 15:51:37 +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