diff options
Diffstat (limited to 'compiler/dex/quick/quick_compiler.cc')
-rw-r--r-- | compiler/dex/quick/quick_compiler.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/dex/quick/quick_compiler.cc b/compiler/dex/quick/quick_compiler.cc index 2523a83c39..28c485a41c 100644 --- a/compiler/dex/quick/quick_compiler.cc +++ b/compiler/dex/quick/quick_compiler.cc @@ -33,6 +33,7 @@ #include "dex/pass_driver_me_post_opt.h" #include "dex/pass_manager.h" #include "dex/quick/mir_to_lir.h" +#include "dex/verified_method.h" #include "driver/compiler_driver.h" #include "driver/compiler_options.h" #include "elf_writer_quick.h" @@ -661,6 +662,10 @@ CompiledMethod* QuickCompiler::Compile(const DexFile::CodeItem* code_item, return nullptr; } + if (driver->GetVerifiedMethod(&dex_file, method_idx)->HasRuntimeThrow()) { + return nullptr; + } + DCHECK(driver->GetCompilerOptions().IsCompilationEnabled()); Runtime* const runtime = Runtime::Current(); |