diff options
author | Vladimir Marko <vmarko@google.com> | 2020-12-16 12:10:03 +0000 |
---|---|---|
committer | Vladimir Marko <vmarko@google.com> | 2021-01-08 13:44:10 +0000 |
commit | 98873affc25ef6bc96f8c65f828f28530b8f3fcd (patch) | |
tree | be471ad310edb1aa3a7b3df44528905ec7ce9a6c /compiler/optimizing/code_generator.h | |
parent | 771708f3f0a15c1ae50617b4141c5f5dd47bf94f (diff) |
arm64: Implement VarHandle intrinsics for byte array views.
Using benchmarks provided by
https://android-review.googlesource.com/1420959
on blueline little cores with fixed frequency 1420800:
before after
GetByteArrayViewInt 27.093 0.024
SetByteArrayViewInt 28.067 0.024
GetByteArrayViewBigEndianInt 27.142 0.026
SetByteArrayViewBigEndianInt 28.040 0.025
Test: testrunner.py --target --64 --optimizing
Bug: 71781600
Change-Id: I604326675042bd63dce8ec15075714003ca9915d
Diffstat (limited to 'compiler/optimizing/code_generator.h')
-rw-r--r-- | compiler/optimizing/code_generator.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/optimizing/code_generator.h b/compiler/optimizing/code_generator.h index bd5483cc09..338aac0afc 100644 --- a/compiler/optimizing/code_generator.h +++ b/compiler/optimizing/code_generator.h @@ -27,6 +27,7 @@ #include "base/enums.h" #include "base/globals.h" #include "base/memory_region.h" +#include "class_root.h" #include "dex/string_reference.h" #include "dex/type_reference.h" #include "graph_visualizer.h" @@ -635,6 +636,7 @@ class CodeGenerator : public DeletableArenaObject<kArenaAllocCodeGenerator> { static uint32_t GetBootImageOffset(HLoadClass* load_class); static uint32_t GetBootImageOffset(HLoadString* load_string); static uint32_t GetBootImageOffset(HInvoke* invoke); + static uint32_t GetBootImageOffset(ClassRoot class_root); static uint32_t GetBootImageOffsetOfIntrinsicDeclaringClass(HInvoke* invoke); static void CreateSystemArrayCopyLocationSummary(HInvoke* invoke); |