arm64: Implement VarHandle GetAndBitwiseOp intrinsics.
Using benchmarks provided by
https://android-review.googlesource.com/1420959
on blueline little cores with fixed frequency 1420800:
before after
GetAndBitwiseOrStaticFieldInt 23.917 0.026
GetAndBitwiseOrFieldInt 26.828 0.026
GetAndBitwiseOrAcquireStaticFieldInt 23.908 0.025
GetAndBitwiseOrAcquireFieldInt 26.822 0.026
GetAndBitwiseOrReleaseStaticFieldInt 23.906 0.026
GetAndBitwiseOrReleaseFieldInt 26.831 0.026
GetAndBitwiseXorStaticFieldInt 23.829 0.026
GetAndBitwiseXorFieldInt 26.784 0.026
GetAndBitwiseXorAcquireStaticFieldInt 23.841 0.025
GetAndBitwiseXorAcquireFieldInt 26.788 0.026
GetAndBitwiseXorReleaseStaticFieldInt 23.835 0.026
GetAndBitwiseXorReleaseFieldInt 26.788 0.026
GetAndBitwiseAndStaticFieldInt 23.874 0.026
GetAndBitwiseAndFieldInt 26.797 0.026
GetAndBitwiseAndAcquireStaticFieldInt 23.871 0.025
GetAndBitwiseAndAcquireFieldInt 26.792 0.026
GetAndBitwiseAndReleaseStaticFieldInt 23.865 0.026
GetAndBitwiseAndReleaseFieldInt 26.786 0.026
Test: Covered by existing test 712-varhandle-invocations.
Test: testrunner.py --target --64 --optimizing
Bug: 71781600
Change-Id: I8263f6b1b125c46190da06a9a05e60335bf69992
1 file changed