summaryrefslogtreecommitdiff
path: root/test/ProfileTestMultiDex/Main.java
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2020-11-17 12:17:58 +0000
committerVladimir Marko <vmarko@google.com>2020-11-20 11:03:41 +0000
commitac3fcff3ad61fe468517163f47ec2239dff4e17f (patch)
tree16c6188f3957ea91453d19c46702ecf71cc64eed /test/ProfileTestMultiDex/Main.java
parentb1cbfc7419eb0491f49c94191bcc920de2a3724e (diff)
arm: Implement VarHandle.get/set intrinsics.
Including Opaque, Acquire/Release and Volatile variants. Refactor Unsafe.get/put operations to share code with the new VarHandle intrinsics, fixing potentially non-atomic 64-bit "Ordered" operations in the process. Using benchmarks provided by https://android-review.googlesource.com/1420959 on blueline little cores with fixed frequency 1420800: before after GetStaticFieldInt 23.937 0.014 GetStaticFieldString 24.497 0.019 GetFieldInt 27.510 0.016 GetFieldString 28.000 0.021 GetAcquireStaticFieldInt 23.953 0.017 GetAcquireStaticFieldString 24.532 0.021 GetAcquireFieldInt 27.457 0.020 GetAcquireFieldString 28.137 0.023 GetOpaqueStaticFieldInt 23.955 0.014 GetOpaqueStaticFieldString 24.530 0.019 GetOpaqueFieldInt 27.461 0.016 GetOpaqueFieldString 28.164 0.021 GetVolatileStaticFieldInt 23.971 0.017 GetVolatileStaticFieldString 24.612 0.021 GetVolatileFieldInt 27.518 0.020 GetVolatileFieldString 28.178 0.023 SetStaticFieldInt 25.291 0.014 SetStaticFieldString 28.873 0.018 SetFieldInt 28.676 0.016 SetFieldString 32.286 0.021 SetVolatileStaticFieldInt 25.339 0.021 SetVolatileStaticFieldString 28.904 0.028 SetVolatileFieldInt 28.730 0.023 SetVolatileFieldString 32.322 0.030 SetOpaqueStaticFieldInt 25.343 0.014 SetOpaqueStaticFieldString 28.992 0.018 SetOpaqueFieldInt 28.749 0.016 SetOpaqueFieldString 32.317 0.022 SetReleaseStaticFieldInt 25.354 0.016 SetReleaseStaticFieldString 28.906 0.025 SetReleaseFieldInt 28.678 0.017 SetReleaseFieldString 32.262 0.027 Test: Covered by existing test 712-varhandle-invocations. Test: testrunner.py --target --32 --optimizing Test: Repeat with ART_USE_READ_BARRIER=false ART_HEAP_POISONING=true. Test: Repeat with ART_READ_BARRIER_TYPE=TABLELOOKUP. Bug: 71781600 Change-Id: I0ac6d0c154791d787d5c4abd8095e3c2eee9abbb
Diffstat (limited to 'test/ProfileTestMultiDex/Main.java')
0 files changed, 0 insertions, 0 deletions