Gareth Rees
b60a1636fc
Fix the mortality of the world to avoid runaway feedback between the dynamic criterion and the mortality of the arena's top generation as described in < https://info.ravenbrook.com/mail/2018/07/13/19-53-23/0/ >.
...
Copied from Perforce
Change: 194648
2018-07-13 20:56:08 +01:00
Gareth Rees
326a8c6bbd
Generation's computed mortality has denominator of condemned memory (not new memory), so use the same denominator when predicting the mortality for a trace.
...
Simpler to compute predicted mortality as casualties/condemned instead of 1 - survivors/condemned.
Copied from Perforce
Change: 194634
2018-07-13 12:07:54 +01:00
Gareth Rees
6684c5d10f
Catch-up merge from master sources at changelevel 194628.
...
Copied from Perforce
Change: 194631
2018-07-13 11:28:36 +01:00
Gareth Rees
7d956be9ce
Must get the new size of the generation before condemning it (afterwards, the condemned memory is accounted as "old", not "new").
...
Copied from Perforce
Change: 194628
2018-07-13 10:55:30 +01:00
Gareth Rees
5bd92654df
Improve describe output for generations.
...
Must take SegBase(seg) before reclaiming the segment in case it gets destroyed.
Copied from Perforce
Change: 194624
2018-07-12 09:47:29 +01:00
Gareth Rees
9410be10b5
Reclaim the same generations that were condemned.
...
Copied from Perforce
Change: 194621
2018-07-12 07:51:04 +01:00
Gareth Rees
f65c8fdfdb
Update common assertions in the manual.
...
Convert capacity to bytes once on initialization rather than every time it is used.
Copied from Perforce
Change: 194612
2018-07-11 21:27:47 +01:00
Gareth Rees
c3fd9d5ba7
Represent the set of generations condemned for a trace.
...
Eliminate duplication between policyCondemnChain and traceCondemnAll.
Compute better mortality estimate for collection of the world.
Copied from Perforce
Change: 194611
2018-07-11 21:14:43 +01:00
Gareth Rees
344d0b8e94
Catch-up merge from master sources at changelevel 194605 to branch/2016-04-16/trace-gens.
...
Copied from Perforce
Change: 194608
2018-07-11 19:09:05 +01:00
Gareth Rees
8ba262a175
Update manual to match the code.
...
Copied from Perforce
Change: 194605
2018-07-11 17:52:50 +01:00
Gareth Rees
880b97bfb1
There is now no difference between the sets of sources for compilers mv and pc, so eliminate the duplication.
...
Copied from Perforce
Change: 194602
2018-07-11 17:09:07 +01:00
Gareth Rees
b742e99f96
Mmqa tests function/{7,21,22}.c now pass on 32-bit platforms.
...
MMQA tests function/{8,98}.c now pass on 64-bit platforms.
Copied from Perforce
Change: 194599
2018-07-11 16:24:47 +01:00
Gareth Rees
60350161e2
Correct file type to text+k.
...
Copied from Perforce
Change: 194596
2018-07-11 15:24:16 +01:00
Gareth Rees
602564a4e1
Merge branch/2014-10-26/sc into the master sources.
...
Copied from Perforce
Change: 194595
2018-07-11 15:20:49 +01:00
Gareth Rees
eb34c8c1ea
Assert that stackhot gives us an address that's warmer than the jump buffer, as suggested by nb.
...
Copied from Perforce
Change: 194594
2018-07-11 15:02:19 +01:00
Gareth Rees
da3e952e73
Attribute_noinline is not needed by the smoke tests.
...
Copied from Perforce
Change: 194590
2018-07-11 14:44:28 +01:00
Gareth Rees
ca11ef7be4
Avoid "warning c4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)" from microsoft visual c.
...
Copied from Perforce
Change: 194586
2018-07-11 13:13:17 +01:00
Gareth Rees
539f327335
Avoid "warning c4312: 'type cast': conversion from 'unsigned int' to 'addr' of greater size" from microsoft visual c.
...
Copied from Perforce
Change: 194583
2018-07-11 12:56:00 +01:00
Gareth Rees
a639813270
Ssixi3.c and ssixi6.c were deleted, so don't try to compile them.
...
Copied from Perforce
Change: 194580
2018-07-11 11:08:56 +01:00
Gareth Rees
60b4e0639b
Force stackhot not to be inlined, avoiding the problem described in < https://info.ravenbrook.com/mail/2018/07/11/09-48-49/0/ >
...
Copied from Perforce
Change: 194577
2018-07-11 10:57:28 +01:00
Gareth Rees
83256946e6
Merge branch 2016-03-27/cbs-tidy into the master sources.
...
Copied from Perforce
Change: 194572
2018-07-10 15:31:25 +01:00
Gareth Rees
cbd9bedbf1
Justify invalidation in rangefinish, as suggested by rb < https://info.ravenbrook.com/mail/2018/07/10/11-01-54/0/ >
...
Copied from Perforce
Change: 194560
2018-07-10 12:13:33 +01:00
Gareth Rees
83ff561110
Update copyright as suggested by dl in review < https://info.ravenbrook.com/mail/2018/07/10/09-59-36/0/ >
...
Copied from Perforce
Change: 194555
2018-07-10 11:22:18 +01:00
Gareth Rees
93eb55b739
Add awl to gcbench.
...
Copied from Perforce
Change: 194552
2018-07-10 10:06:19 +01:00
Gareth Rees
ace93858db
Correct diagram in .anal.entry-points (rootscan is called by rootswalk).
...
Copied from Perforce
Change: 194519
2018-07-08 21:09:21 +01:00
Gareth Rees
aa69a7cb78
Add some margin around the diagram.
...
Copied from Perforce
Change: 194518
2018-07-08 21:04:42 +01:00
Gareth Rees
84bca466a0
Update release notes.
...
Copied from Perforce
Change: 194515
2018-07-08 08:28:09 +01:00
Gareth Rees
04ece0abac
Need to capture the stack in mps_arena_roots_walk, as explained in design.mps.stack-scan.anal.entry-points.
...
Copied from Perforce
Change: 194497
2018-07-07 21:30:00 +01:00
Gareth Rees
353768d313
Fix issues identified in review by gdr < https://info.ravenbrook.com/mail/2018/07/07/15-54-49/0/ >
...
Copied from Perforce
Change: 194494
2018-07-07 19:23:58 +01:00
Gareth Rees
616318e3ce
Fumbled the merge.
...
Copied from Perforce
Change: 194488
2018-07-06 21:47:19 +01:00
Gareth Rees
e5b175a961
Catch-up merge from master sources at changelevel 194484 to branch/2014-10-26/sc.
...
Copied from Perforce
Change: 194487
2018-07-06 21:42:35 +01:00
Gareth Rees
85e6b88e07
Don't make multiple calls to controlalloc when you could just make one and divvy it up yourself.
...
Copied from Perforce
Change: 194484
2018-07-06 18:56:12 +01:00
Gareth Rees
2248184124
Check that traces with no condemned objects can be started and finished without error in each automatic pool class. regression test for job004086.
...
Copied from Perforce
Change: 194475
2018-07-06 14:26:54 +01:00
Gareth Rees
e156138206
No need for rvalue(&(...)) -- the result of the & operator is not an lvalue.
...
Copied from Perforce
Change: 194456
2018-07-05 22:53:02 +01:00
Gareth Rees
551d35fa0a
Merge branch/2018-06-18/mrgseg into the master sources.
...
Copied from Perforce
Change: 194453
2018-07-05 16:28:15 +01:00
Gareth Rees
3366ef1bc2
Catch-up merge from master sources at changelevel 194449 to branch/2018-06-18/mrgseg.
...
Copied from Perforce
Change: 194452
2018-07-05 16:22:24 +01:00
Gareth Rees
9013f77478
Ensure that the mmqa test case is compiled using the same variety as the mps library against which it is linked, in case it needs to inspect internal mps data structures.
...
Copied from Perforce
Change: 194449
2018-07-05 15:57:33 +01:00
Gareth Rees
254fbb080e
Update mpscopyrightnotice, as required by §3.1.1 of https://info.ravenbrook.com/project/mps/master/procedure/version-create
...
Copied from Perforce
Change: 194446
2018-07-05 14:55:06 +01:00
Gareth Rees
22e8a66a54
Bring release notes up to date.
...
Copied from Perforce
Change: 194445
2018-07-05 14:31:09 +01:00
Gareth Rees
a4bbb4ddc2
Merge branch/2016-03-01/mvff-control into the master sources.
...
Copied from Perforce
Change: 194442
2018-07-05 13:37:01 +01:00
Gareth Rees
2b469ef694
Merge branch/2018-07-04/mvff-perf into the master sources.
...
Copied from Perforce
Change: 194439
2018-07-05 12:54:16 +01:00
Gareth Rees
2f8172e981
Restore descriptive version of comment as suggested by rb < https://info.ravenbrook.com/mail/2018/07/05/11-08-52/0/ >
...
Copied from Perforce
Change: 194436
2018-07-05 12:17:41 +01:00
Gareth Rees
7f41cd5d86
Rename "node" to "rangetree" as suggested in review by gdr < https://info.ravenbrook.com/mail/2018/07/05/10-17-35/0/ >
...
Get Xcode builds working.
Add rangetree.[ch] to the source code index.
Copied from Perforce
Change: 194434
2018-07-05 12:06:47 +01:00
Gareth Rees
b9fc9e7ce1
Fix issues identified in review by gdr < https://info.ravenbrook.com/mail/2018/07/05/10-17-35/0/ >
...
Copied from Perforce
Change: 194430
2018-07-05 11:20:51 +01:00
Gareth Rees
5076ca4c04
Fix the check of the cbs overlapping insertion failure case: in order for the inserted block not to overlap it's right neighbour, its limit must be <= the base of the right neighbour (not the limit as previously written). this mistake was introduced accidentally in change 182344.
...
Copied from Perforce
Change: 194427
2018-07-05 10:43:47 +01:00
Gareth Rees
01ee85b290
No need for rvalue(&(...)) -- the result of the & operator is not an lvalue.
...
Copied from Perforce
Change: 194424
2018-07-05 10:24:22 +01:00
Gareth Rees
5887f80601
Function implementations call the macro implementations, to reduce the burden of keeping the functions and macros consistent.
...
Copied from Perforce
Change: 194418
2018-07-05 09:28:01 +01:00
Gareth Rees
2ef794b39b
Merge branch/2018-07-03/mfs-tractp into the master sources.
...
Copied from Perforce
Change: 194414
2018-07-04 17:13:53 +01:00
Gareth Rees
233ddac5e8
Avoid emitting poolalloc and poolfree events in the hot variety, so that they not affected asymmetrically by the poolfree macro.
...
Copied from Perforce
Change: 194410
2018-07-04 16:51:13 +01:00
Gareth Rees
6b0e42e0e9
Merge branch 2018-06-27/job004056.
...
Copied from Perforce
Change: 194409
2018-07-04 16:46:04 +01:00