summaryrefslogtreecommitdiff
path: root/compiler/optimizing/graph_visualizer.cc
diff options
context:
space:
mode:
authorRoland Levillain <rpl@google.com>2018-08-23 19:55:30 +0100
committerRoland Levillain <rpl@google.com>2018-09-06 17:57:21 +0100
commit0e840278fb2914678c648021950da9b5d4019468 (patch)
treea48c539c74d5c20b4302114d57dc036e38a92679 /compiler/optimizing/graph_visualizer.cc
parent9976b4e783311f19496ce0c70e2f99194187f90c (diff)
Make classes of LOS objects non-movable.
When using Generational Concurrent Copying (CC) collection and no boot image, there is an unlikely case where the class of an object allocated the Large-Object Space (LOS) might be moved by a sticky-bit (minor) collection, potentially creating a stale reference in the `klass_` field of this large object. To prevent this situation, make all the classes of objects eligible to allocations in the LOS (large strings and primitive arrays) non-movable when running without a boot image. This is not an issue when running with a boot image, as these classes are in an image space, which is immune. Also disable run-test 669-moveable-string-class-equals, as this test expects the String class to be movable when running without a boot image. Test: art/test/testrunner/testrunner.py --no-image Bug: 67628039 Bug: 12687968 Bug: 68181300 Change-Id: Iefce8e13b4d6df96c31d77b7e53b4ba79b5e641c
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions