diff options
| author | 2015-08-25 09:22:37 -0700 | |
|---|---|---|
| committer | 2015-08-27 10:53:12 -0700 | |
| commit | a727e372d8f6929cd30b983f6969c7a50fc83bb6 (patch) | |
| tree | f71b33bf46053e0ccbd191ac74a850e87145eb98 /compiler/driver/compiler_driver.cc | |
| parent | 706ea6a0294ef8bc3def050142c548c082fa8e30 (diff) | |
ART: Balanced locking
Change the verifier to check for balanced locking. When balanced
locking can't be guaranteed, use a new failure kind to punt to
the interpreter.
Add smali tests, with JNI code to check the balanced-locking result.
Bug: 23502994
Change-Id: Icd7db0be20ef2f69f0ac784de43dcba990035cd8
Diffstat (limited to 'compiler/driver/compiler_driver.cc')
| -rw-r--r-- | compiler/driver/compiler_driver.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc index c006e62a16..89668f2e4e 100644 --- a/compiler/driver/compiler_driver.cc +++ b/compiler/driver/compiler_driver.cc @@ -601,7 +601,7 @@ static void CompileMethod(Thread* self, // Do not have failures that should punt to the interpreter. !verified_method->HasRuntimeThrow() && (verified_method->GetEncounteredVerificationFailures() & - verifier::VERIFY_ERROR_FORCE_INTERPRETER) == 0 && + (verifier::VERIFY_ERROR_FORCE_INTERPRETER | verifier::VERIFY_ERROR_LOCKING)) == 0 && // Is eligable for compilation by methods-to-compile filter. driver->IsMethodToCompile(method_ref); if (compile) { |