summaryrefslogtreecommitdiffstats
path: root/runtime/jni_internal.cc
diff options
context:
space:
mode:
authorAndreas Gampe <agampe@google.com>2015-03-25 17:19:53 -0700
committerAndreas Gampe <agampe@google.com>2015-03-27 21:43:21 -0700
commit81c6f8db12b203878a7d72444ead2bc7cf5c47ad (patch)
tree11caae30b75b700ac648356fd30759a6154be997 /runtime/jni_internal.cc
parentcac51526bbd03947676a8d49700425b19a57e447 (diff)
downloadart-81c6f8db12b203878a7d72444ead2bc7cf5c47ad.zip
art-81c6f8db12b203878a7d72444ead2bc7cf5c47ad.tar.gz
art-81c6f8db12b203878a7d72444ead2bc7cf5c47ad.tar.bz2
ART: PathClassLoader for compiler
Use an actual PathClassLoader when compiling apps, instead of a side structure and cutout. This CL sets up a minimal object 'cluster' that recreates the Java side of a regular ClassLoader such that the Class-Linker will recognize it and use the internal native fast-path. This CL removes the now unnecessary compile-time-classpath and replaces it with a single 'compiling-the-boot-image' flag in the compiler callbacks. Note: This functionality is *only* intended for the compiler, as the objects have not been completely initialized. Bug: 19781184 Change-Id: I7f36af12dd7852d21281110a25c119e8c0669c1d
Diffstat (limited to 'runtime/jni_internal.cc')
-rw-r--r--runtime/jni_internal.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/runtime/jni_internal.cc b/runtime/jni_internal.cc
index 6063e1e..566b097 100644
--- a/runtime/jni_internal.cc
+++ b/runtime/jni_internal.cc
@@ -164,8 +164,10 @@ static mirror::ClassLoader* GetClassLoader(const ScopedObjectAccess& soa)
// See if the override ClassLoader is set for gtests.
class_loader = soa.Decode<mirror::ClassLoader*>(soa.Self()->GetClassLoaderOverride());
if (class_loader != nullptr) {
- // If so, CommonCompilerTest should have set UseCompileTimeClassPath.
- CHECK(Runtime::Current()->UseCompileTimeClassPath());
+ // If so, CommonCompilerTest should have marked the runtime as a compiler not compiling an
+ // image.
+ CHECK(Runtime::Current()->IsAotCompiler());
+ CHECK(!Runtime::Current()->GetCompilerCallbacks()->IsBootImage());
return class_loader;
}
// Use the BOOTCLASSPATH.