diff options
author | Roland Levillain <rpl@google.com> | 2017-03-17 15:15:21 +0000 |
---|---|---|
committer | Roland Levillain <rpl@google.com> | 2017-03-17 18:25:48 +0000 |
commit | 1663d16e87f35246a2858e5ef1237b9907edbe6f (patch) | |
tree | 5f1cfb67ca08e7cadff0a2bd5ee8ca6539df076f /compiler/optimizing/graph_visualizer.cc | |
parent | 9cc0ea8140e0106e132efc3c1c5c458fa196ae41 (diff) |
Fix the artificial dependency in ARM/ARM64 SystemArrayCopy intrinsics.
Ensure that the base source address register (`src_curr_addr`) is
assigned from the `src` register after `src` is made dependent on the
lock word of `src`.
Before this CL, the artificial (or "fake") dependency of `src` on
`tmp` was present, but because `src_curr_addr` was computed from `src`
*before* that artificial dependency, it meant that it was basically
useless. This could explain some stale reference bugs.
After this CL, `src_curr_addr` is computed from `src` *after* the
artificial dependency.
Test: m test-art-target on Baker read barrier configuration.
Bug: 12687968
Change-Id: If30a2e35ca04b0b6d054e2a6c6b1e9c6879cf4a9
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions