[parrot/parrot] 2586ee: [test] add easily repro GC testcase for GH #1159
GitHub
noreply at github.com
Fri Dec 19 13:51:13 UTC 2014
Branch: refs/heads/master
Home: https://github.com/parrot/parrot
Commit: 2586ee452181050084614a6c65b9fd4541e8c47e
https://github.com/parrot/parrot/commit/2586ee452181050084614a6c65b9fd4541e8c47e
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-12-18 (Thu, 18 Dec 2014)
Changed paths:
M t/stress/gc.t
Log Message:
-----------
[test] add easily repro GC testcase for GH #1159
Commit: 1e416f1bbfee0c9637ce0269af6ac37c1d6d8caa
https://github.com/parrot/parrot/commit/1e416f1bbfee0c9637ce0269af6ac37c1d6d8caa
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-12-18 (Thu, 18 Dec 2014)
Changed paths:
M include/parrot/gc_api.h
M src/gc/api.c
M src/gc/gc_gms.c
M src/gc/gc_private.h
M src/interp/api.c
M src/pmc/resizablepmcarray.pmc
M t/op/gc-leaky-box.t
M t/op/gc-leaky-call.t
M t/stress/gc.t
Log Message:
-----------
[core] add INTERPINFO_MAX_GENERATIONS api
Returns the defined constant for gms (changed from 4 to 3), or 0.
Allow -DGC_MAX_GENERATIONS=n to be set via --ccflags.
benchmarked with parrot-bench: 3 and 4 are the best, 8 is also interesting.
Todo string collects in t/op/gc-leaky-call.t and ..box.t
There's no apparent need to collect strings, when none are
allocated during a cycle.
But add a collectable string for the lulz
Commit: 2249402a43e4a8745a463df5a3116846cf8d40ab
https://github.com/parrot/parrot/commit/2249402a43e4a8745a463df5a3116846cf8d40ab
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-12-19 (Fri, 19 Dec 2014)
Changed paths:
M include/parrot/pobj.h
M src/gc/gc_gms.c
M t/stress/gc.t
Log Message:
-----------
[gc] enable on_dirty_list assertion, document pobj flags
and improve the GH #1159 testcase. It was too slow
Commit: 45758d20a34fd79f20c52dd2b3e884503f45733a
https://github.com/parrot/parrot/commit/45758d20a34fd79f20c52dd2b3e884503f45733a
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-12-19 (Fri, 19 Dec 2014)
Changed paths:
M src/gc/gc_gms.c
Log Message:
-----------
[gc] Change semantics of GC_MAX_GENERATIONS
GC_MAX_GENERATIONS=3 means now 3 generations: 0,1,2.
It was too odd and head-scratching to define 4 for max 3 generations
Commit: 6aa51883f931cf50c2dfb26c52699d8ddc73edd9
https://github.com/parrot/parrot/commit/6aa51883f931cf50c2dfb26c52699d8ddc73edd9
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-12-19 (Fri, 19 Dec 2014)
Changed paths:
M ChangeLog
M src/pmc/resizablepmcarray.pmc
M t/stress/gc.t
Log Message:
-----------
[gc] fix the GC regression GH #1159 in resizablepmcarray
Always do PARROT_GC_WRITE_BARRIER with rpa unshift, even with the fast case.
The same with resize skip, where only the right side is adjusted.
Just skip the WB when the old size == new size.
This should fix the gc errors on small machines with big programs.
parrot-bench is now 1.2% slower.
Compare: https://github.com/parrot/parrot/compare/d0d0694462ce...6aa51883f931
More information about the parrot-commits
mailing list