summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Gampe <agampe@google.com>2014-08-18 16:40:13 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-08-16 04:09:33 +0000
commit9d352c06d8b6e9ea6343cc4f361a3309c2ce7ebe (patch)
tree3b80492a704a4c491aeb57f9da483859d14237b3
parent7628848182492bdcdcd7e4161680a4e24ce9486e (diff)
parente98c8899ba2ae36d52aa7152a29469c314fdc20d (diff)
downloadart-9d352c06d8b6e9ea6343cc4f361a3309c2ce7ebe.zip
art-9d352c06d8b6e9ea6343cc4f361a3309c2ce7ebe.tar.gz
art-9d352c06d8b6e9ea6343cc4f361a3309c2ce7ebe.tar.bz2
Merge "ART: Avoid expensive class lookup in compiler driver"
-rw-r--r--compiler/driver/compiler_driver.cc8
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc
index 49aa4b7..3915381 100644
--- a/compiler/driver/compiler_driver.cc
+++ b/compiler/driver/compiler_driver.cc
@@ -1529,7 +1529,13 @@ static bool SkipClass(ClassLinker* class_linker, jobject class_loader, const Dex
return true;
}
- return SkipClassCheckClassPath(descriptor, dex_file, dex_files);
+ if (dex_files.size() > 1) {
+ // Multi-dex compilation, only take first class.
+ return SkipClassCheckClassPath(descriptor, dex_file, dex_files);
+ } else {
+ // Single dex, take everything.
+ return false;
+ }
}
// A fast version of SkipClass above if the class pointer is available