Richard Brooksby
ea53ac476e
Converting land finish methods to specialize instfinish.
...
Copied from Perforce
Change: 191606
ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
de1f3907cc
Converting pool finish methods to specialize instfinish, and fixing up quite a few calls to use nextmethod.
...
Copied from Perforce
Change: 191605
ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
6217b5b3a5
Converting pool describe methods to specialise instdescribe.
...
Copied from Perforce
Change: 191604
ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
5f7db268e2
Making finish a method on inst and implementing generic finish for segments.
...
Copied from Perforce
Change: 191602
ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
b9e791798b
Making describe a method on inst and implementing generic describe for segments.
...
Copied from Perforce
Change: 191601
ServerID: perforce.ravenbrook.com
2016-04-23 15:37:11 +01:00
Richard Brooksby
4be15a5b0b
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
Richard Brooksby
e87ff3aa7c
Responding to review by gdr < https://info.ravenbrook.com/mail/2016/04/21/09-36-07/0/ >.
...
Copied from Perforce
Change: 191432
ServerID: perforce.ravenbrook.com
2016-04-21 10:56:35 +01:00
Richard Brooksby
02a8064a07
Moving location dependency history into its own structure to reduce arenastruct bloat.
...
Copied from Perforce
Change: 191417
ServerID: perforce.ravenbrook.com
2016-04-21 09:05:34 +01:00
Richard Brooksby
65a770e91f
Avoid using "class" as an identifier, since tools like lldb parse expressions as c++, and it can't be named.
...
Copied from Perforce
Change: 191304
ServerID: perforce.ravenbrook.com
2016-04-19 23:00:02 +01:00
Richard Brooksby
1c0704e3c8
Catch-up merge from master sources to branch/2016-04-08/protidying.
...
Copied from Perforce
Change: 191251
ServerID: perforce.ravenbrook.com
2016-04-19 16:37:51 +01:00
Gareth Rees
aabe4992eb
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
77b12d3ee7
Catch-up merge from master sources to branch/2014-10-11/snc.
...
Copied from Perforce
Change: 191065
ServerID: perforce.ravenbrook.com
2016-04-13 13:07:19 +01:00
Richard Brooksby
538b18430f
Using superclass init and finish in the arena bootstrap and teardown.
...
Copied from Perforce
Change: 190895
ServerID: perforce.ravenbrook.com
2016-04-11 13:35:16 +01:00
Richard Brooksby
d303ed0aeb
Turning pool init methods the right way in, so that they each call the next method up the class hierarchy.
...
Copied from Perforce
Change: 190858
ServerID: perforce.ravenbrook.com
2016-04-10 17:49:08 +01:00
Richard Brooksby
cf29dcc98d
Making arenas properly inherit from instances, and converting remaining method calls to use the method macro, while noting uses which are inside-out.
...
Copied from Perforce
Change: 190856
ServerID: perforce.ravenbrook.com
2016-04-10 14:00:55 +01:00
Richard Brooksby
c92bf9505a
Explicitly making inststruct the prefix of instances, eliminating pointer punning of class pointers, and reducing likelihood of editing errors.
...
Copied from Perforce
Change: 190830
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
dad08f0000
Eliminating issubclasspoly and replacing with compile-time constant test.
...
Copied from Perforce
Change: 190829
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
d3d57e828d
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
484d3b77bf
Removing always-zero offset from pool class structure.
...
Copied from Perforce
Change: 190819
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
313fd5d5da
Removing unused offset field in arena classes.
...
Copied from Perforce
Change: 190818
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
590c23a935
Moving common fields into the base class, starting with the class name.
...
Copied from Perforce
Change: 190816
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
cae4514c1b
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
0f3a469fa7
Responding to review by gdr < https://info.ravenbrook.com/mail/2016/03/21/21-05-49/0/ >.
...
Copied from Perforce
Change: 190336
ServerID: perforce.ravenbrook.com
2016-03-23 14:23:14 +00:00
Richard Brooksby
4204f99d67
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
5bc87114ea
Counting shield holds and releases, to ensure they are nested correctly.
...
Counting the number of unsynced segments in order to check consistency.
Moving the extra shield hold for request.dylan.160098 around actual whitening, and adding a matching shield release.
Copied from Perforce
Change: 190321
ServerID: perforce.ravenbrook.com
2016-03-23 11:59:57 +00:00
Richard Brooksby
b97bd74013
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
e09dbaab0f
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
ff69c9af04
Separating flag for segment in shield cache from depth, clarifying code and optimising segfree somewhat.
...
Copied from Perforce
Change: 190194
ServerID: perforce.ravenbrook.com
2016-03-19 13:42:09 +00:00
Richard Brooksby
7ab4a5c7cf
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
641cdc164c
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
662a1b1b9b
Allocate the shield cache. also improve commentary quite a bit.
...
Copied from Perforce
Change: 190147
ServerID: perforce.ravenbrook.com
2016-03-17 13:37:40 +00:00
Richard Brooksby
9583c0f68a
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
26da5b46b0
Catch-up merge from master sources to branch/2014-10-13/format.
...
Copied from Perforce
Change: 190060
ServerID: perforce.ravenbrook.com
2016-03-15 10:02:21 +00:00
Richard Brooksby
d4a055f70b
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
e034e7aeea
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
ca7dcd913e
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
Richard Brooksby
e89429df8b
Can't use count as a bitfield.
...
Copied from Perforce
Change: 189965
ServerID: perforce.ravenbrook.com
2016-03-13 14:23:41 +00:00
Richard Brooksby
47dbed0eee
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
06af849502
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
31de518300
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
f9041d9a20
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
275770ed43
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
Gareth Rees
973f5369e1
Rename chain.h to locus.h, for consistency with other modules, where the interface has the same name as the implemention.
...
Copied from Perforce
Change: 189682
ServerID: perforce.ravenbrook.com
2016-03-06 18:56:32 +00:00
Richard Brooksby
50384dd478
Fixing terminology from "top" to "hot end" of stack.
...
Copied from Perforce
Change: 189530
ServerID: perforce.ravenbrook.com
2016-03-02 10:16:44 +00:00
Richard Brooksby
a3efd2d694
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
a0e001c000
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
eac348d664
Catch-up merge from masters.
...
Copied from Perforce
Change: 188921
ServerID: perforce.ravenbrook.com
2016-01-19 16:22:39 +00:00
Gareth Rees
edf30c06b4
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
b4db3bd09f
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
511ec1c025
Catch-up merge from branch/2015-08-10/arena-create to branch/2015-08-06/config.
...
Copied from Perforce
Change: 188104
ServerID: perforce.ravenbrook.com
2015-08-10 12:49:36 +01:00