summaryrefslogtreecommitdiff
path: root/compiler/optimizing/graph_visualizer.cc
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2018-08-08 15:15:33 +0100
committerVladimir Marko <vmarko@google.com>2018-08-14 16:36:39 +0100
commit94796f8e1b1d920c6107ffddf4efdabcf85e1da4 (patch)
treee6c068b622bc60b1570eb1c54d3ddeea4972b1a2 /compiler/optimizing/graph_visualizer.cc
parent248141f724cbb9d436f13181b5301172c4385cc2 (diff)
ARM64: Reimplement the UnsafeCASObject intrinsic.
For the UnsafeCASObject with Baker read barriers, drop the old code updating the field. Perform the main path CAS loop and redirect the flow for failure to a slow path that marks the old value and compares it with the expected value (if not marking, this is just a few instructions to determine that they differ). If it's the same, the old value is known to be the from-space reference to the expected object and the slow path performs a modified CAS loop checking for both expected object references (from-space and to-space). Test: Already covered by the 160-read-barrier-stress. Test: m test-art-host-gtest Test: Pixel 2 XL boots. Test: testrunner.py --target --optimizing --64 Test: ART_HEAP_POISONING=true testrunner.py --target --optimizing --64 Bug: 36141117 Change-Id: I175806dbc003640c9bb6759be6788311bcc9310c
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions