diff options
author | Roland Levillain <rpl@google.com> | 2018-07-10 19:19:31 +0100 |
---|---|---|
committer | Roland Levillain <rpl@google.com> | 2018-08-21 17:53:01 +0100 |
commit | b1e1dc3aa52e6bb258adabede233d98266d0e1f5 (patch) | |
tree | 830c8c6b7aeea562bb9b6709819fdb850df80881 /compiler/optimizing/graph_visualizer.cc | |
parent | 5c4b3cc8b167ff492e5ec6d414416b67c7dd501f (diff) |
Sweep only objects in the live stack in sticky-bit CC collections.
Reuse the same strategy used in sticky-bit Concurrent Mark-Sweep
(CMS) collections for sticky-bit Concurrent Copying (CC) collections
walk the live stack (which contains allocations made outside the
region space since the previous GC thread flip phase) and free
unmarked objects.
As a side effect, this change address a bug that used to trigger GC
crashes during a sticky-bit CC (young-generation) collection involving
an unreachable newly allocated object in the non-moving space with a
dangling reference to an object cleared or moved from a newly
allocated region of the region space.
Test: ART run-tests & gtests, libcore tests, JDWP tests (host & device)
Test: Device/emulator boot test
Bug: 67628039
Bug: 12687968
Change-Id: If5d94d854effdc8a614c1c3e3facb2221824aff2
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions