summaryrefslogtreecommitdiff
path: root/compiler/optimizing/optimizing_compiler.cc
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2015-09-29 17:30:10 +0000
committerNicolas Geoffray <ngeoffray@google.com>2015-09-29 17:30:10 +0000
commitb7d27a53cb280a943c0a63a9e0806cf8e3ae4cde (patch)
treefdf0c3bb7630ed0d5598365059fca4c04cccb1bf /compiler/optimizing/optimizing_compiler.cc
parent43855ccb01703b188777fe59e1110e6a23803171 (diff)
Revert "Enable optimizations with --debuggable."
Build error with gcc. This reverts commit 43855ccb01703b188777fe59e1110e6a23803171. Change-Id: I45abc7ee0943b2ad7bd644c88858891fc7a38ead
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
-rw-r--r--compiler/optimizing/optimizing_compiler.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc
index dbfbd96e39..a2b613194f 100644
--- a/compiler/optimizing/optimizing_compiler.cc
+++ b/compiler/optimizing/optimizing_compiler.cc
@@ -321,7 +321,8 @@ static const int kMaximumCompilationTimeBeforeWarning = 100; /* ms */
OptimizingCompiler::OptimizingCompiler(CompilerDriver* driver)
: Compiler(driver, kMaximumCompilationTimeBeforeWarning),
run_optimizations_(
- driver->GetCompilerOptions().GetCompilerFilter() != CompilerOptions::kTime),
+ (driver->GetCompilerOptions().GetCompilerFilter() != CompilerOptions::kTime)
+ && !driver->GetCompilerOptions().GetDebuggable()),
delegate_(Create(driver, Compiler::Kind::kQuick)) {}
void OptimizingCompiler::Init() {
@@ -574,6 +575,12 @@ CompiledMethod* OptimizingCompiler::CompileOptimized(HGraph* graph,
CompilerDriver* compiler_driver,
const DexCompilationUnit& dex_compilation_unit,
PassObserver* pass_observer) const {
+ if (graph->HasTryCatch() && graph->IsDebuggable()) {
+ // TODO: b/24054676, stop creating catch phis eagerly to avoid special cases like phis without
+ // inputs.
+ return nullptr;
+ }
+
ScopedObjectAccess soa(Thread::Current());
StackHandleScopeCollection handles(soa.Self());
soa.Self()->TransitionFromRunnableToSuspended(kNative);