summaryrefslogtreecommitdiff
path: root/compiler/optimizing/graph_visualizer.cc
diff options
context:
space:
mode:
authorRoland Levillain <rpl@google.com>2016-10-26 13:10:46 +0100
committerRoland Levillain <rpl@google.com>2016-10-27 11:06:12 +0100
commit24a4d11cdc5975215af079dc3d658b79e9b0717e (patch)
treec6ee859e8fcbf5b420ec396ffca763d53f632997 /compiler/optimizing/graph_visualizer.cc
parenta1aa3b1f40e496d6f8b3b305a4f956ddf2e425fc (diff)
Use CLREX in ARM/ARM64 CAS intrinsic Baker read barrier slow paths.
Follow clang's implementation, which uses CLREX in compare-and-exchange operations on the failure path, i.e. when the value read by the LDREX (ARM) or LDXR (ARM64) instruction is not the expected value, in order to release the monitor. The previous implementation was perfectly correct, but this one may improve performance on some micro-architectures. This change only affects the art::arm::ReadBarrierMarkAndUpdateFieldSlowPathARM and art::arm64::ReadBarrierMarkAndUpdateFieldSlowPathARM64 slow paths. Test: make test-art-target-run-test-004-UnsafeTest Bug: 29516905 Bug: 12687968 Change-Id: I99edd1ae6489dcec4a0089bfef52736114c6cd48
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions