diff options
author | Mathieu Chartier <mathieuc@google.com> | 2015-04-24 16:55:16 -0700 |
---|---|---|
committer | Andreas Gampe <agampe@google.com> | 2015-04-25 22:08:16 +0000 |
commit | f36cb5f65cb150151aa40b23937e2b0ad75cc546 (patch) | |
tree | 25365c69a089bc491a4b070ee3403be964cfc606 /compiler/jit | |
parent | 33984b4d6b79b2d65258e69506e5669be704db82 (diff) | |
download | android_art-f36cb5f65cb150151aa40b23937e2b0ad75cc546.tar.gz android_art-f36cb5f65cb150151aa40b23937e2b0ad75cc546.tar.bz2 android_art-f36cb5f65cb150151aa40b23937e2b0ad75cc546.zip |
Move Class.newInstance to native
Avoids 1 allocation and several JNI transitions.
Before:
Class_classNewInstance: 4462.39 ns; σ=39.42 ns @ 3 trials
After:
Class_classNewInstance: 1073.39 ns; σ=24.14 ns @ 10 trials
Bug: 20269715
Bug: 20566996
Change-Id: Icd52155ce79a978a4d869855bfdfd7735abd8187
Diffstat (limited to 'compiler/jit')
-rw-r--r-- | compiler/jit/jit_compiler.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/jit/jit_compiler.cc b/compiler/jit/jit_compiler.cc index 6a085482ff..7c400ee82c 100644 --- a/compiler/jit/jit_compiler.cc +++ b/compiler/jit/jit_compiler.cc @@ -62,7 +62,7 @@ extern "C" bool jit_compile_method(void* handle, mirror::ArtMethod* method, Thre JitCompiler::JitCompiler() : total_time_(0) { auto* pass_manager_options = new PassManagerOptions; - pass_manager_options->SetDisablePassList("GVN,DCE"); + pass_manager_options->SetDisablePassList("GVN,DCE,GVNCleanup"); compiler_options_.reset(new CompilerOptions( CompilerOptions::kDefaultCompilerFilter, CompilerOptions::kDefaultHugeMethodThreshold, |