From: mstarzinger Date: Mon, 19 Jan 2015 16:51:39 +0000 (-0800) Subject: Remove exorbitant duplication of DebuggerHasBreakpoints. X-Git-Tag: upstream/4.7.83~4895 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0ef9ce4ad8024adef4eddac3419c141666cd0be1;p=platform%2Fupstream%2Fv8.git Remove exorbitant duplication of DebuggerHasBreakpoints. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/804713006 Cr-Commit-Position: refs/heads/master@{#26145} --- diff --git a/src/compiler.cc b/src/compiler.cc index f882568..bcae3b9 100644 --- a/src/compiler.cc +++ b/src/compiler.cc @@ -345,7 +345,7 @@ OptimizedCompileJob::Status OptimizedCompileJob::CreateGraph() { DCHECK(!info()->IsCompilingForDebugging()); // Do not use Crankshaft/TurboFan if we need to be able to set break points. - if (isolate()->DebuggerHasBreakPoints()) { + if (isolate()->debug()->has_break_points()) { return RetryOptimization(kDebuggerHasBreakPoints); } @@ -967,8 +967,7 @@ MaybeHandle Compiler::GetLazyCode(Handle function) { ASSIGN_RETURN_ON_EXCEPTION(isolate, result, GetUnoptimizedCodeCommon(&info), Code); - if (FLAG_always_opt && isolate->use_crankshaft() && - !isolate->DebuggerHasBreakPoints()) { + if (FLAG_always_opt && isolate->use_crankshaft()) { Handle opt_code; if (Compiler::GetOptimizedCode( function, result, @@ -1520,7 +1519,7 @@ Handle Compiler::GetConcurrentlyOptimizedCode(OptimizedCompileJob* job) { job->RetryOptimization(kOptimizationDisabled); } else if (info->HasAbortedDueToDependencyChange()) { job->RetryOptimization(kBailedOutDueToDependencyChange); - } else if (isolate->DebuggerHasBreakPoints()) { + } else if (isolate->debug()->has_break_points()) { job->RetryOptimization(kDebuggerHasBreakPoints); } else if (job->GenerateCode() == OptimizedCompileJob::SUCCEEDED) { RecordFunctionCompilation(Logger::LAZY_COMPILE_TAG, info.get(), shared); diff --git a/src/factory.cc b/src/factory.cc index 1f210bf..d6d15c6 100644 --- a/src/factory.cc +++ b/src/factory.cc @@ -1361,8 +1361,7 @@ Handle Factory::NewFunctionPrototype(Handle function) { static bool ShouldOptimizeNewClosure(Isolate* isolate, Handle info) { return isolate->use_crankshaft() && !info->is_toplevel() && - info->is_compiled() && info->allows_lazy_compilation() && - !isolate->DebuggerHasBreakPoints(); + info->is_compiled() && info->allows_lazy_compilation(); } diff --git a/src/isolate-inl.h b/src/isolate-inl.h index b44c4d6..d234279 100644 --- a/src/isolate-inl.h +++ b/src/isolate-inl.h @@ -25,11 +25,6 @@ SaveContext::SaveContext(Isolate* isolate) } -bool Isolate::DebuggerHasBreakPoints() { - return debug()->has_break_points(); -} - - base::RandomNumberGenerator* Isolate::random_number_generator() { if (random_number_generator_ == NULL) { if (FLAG_random_seed != 0) { diff --git a/src/isolate.h b/src/isolate.h index 27e6377..cac1d91 100644 --- a/src/isolate.h +++ b/src/isolate.h @@ -978,8 +978,6 @@ class Isolate { Debug* debug() { return debug_; } - inline bool DebuggerHasBreakPoints(); - CpuProfiler* cpu_profiler() const { return cpu_profiler_; } HeapProfiler* heap_profiler() const { return heap_profiler_; } diff --git a/src/objects.cc b/src/objects.cc index cbca817..38e95cb 100644 --- a/src/objects.cc +++ b/src/objects.cc @@ -9461,7 +9461,7 @@ void JSFunction::AttemptConcurrentOptimization() { } DCHECK(isolate->use_crankshaft()); DCHECK(!IsInOptimizationQueue()); - DCHECK(is_compiled() || isolate->DebuggerHasBreakPoints()); + DCHECK(is_compiled() || isolate->debug()->has_break_points()); DCHECK(!IsOptimized()); DCHECK(shared()->allows_lazy_compilation() || code()->optimizable()); DCHECK(isolate->concurrent_recompilation_enabled()); diff --git a/src/runtime-profiler.cc b/src/runtime-profiler.cc index 6c99714..109c1a5 100644 --- a/src/runtime-profiler.cc +++ b/src/runtime-profiler.cc @@ -113,11 +113,7 @@ void RuntimeProfiler::Optimize(JSFunction* function, const char* reason) { void RuntimeProfiler::AttemptOnStackReplacement(JSFunction* function, int loop_nesting_levels) { SharedFunctionInfo* shared = function->shared(); - // See AlwaysFullCompiler (in compiler.cc) comment on why we need - // Debug::has_break_points(). - if (!FLAG_use_osr || - isolate_->DebuggerHasBreakPoints() || - function->IsBuiltin()) { + if (!FLAG_use_osr || function->IsBuiltin()) { return; } @@ -147,7 +143,7 @@ void RuntimeProfiler::AttemptOnStackReplacement(JSFunction* function, void RuntimeProfiler::OptimizeNow() { HandleScope scope(isolate_); - if (!isolate_->use_crankshaft() || isolate_->DebuggerHasBreakPoints()) return; + if (!isolate_->use_crankshaft()) return; DisallowHeapAllocation no_gc; diff --git a/src/runtime/runtime-compiler.cc b/src/runtime/runtime-compiler.cc index f132d98..7ef287d 100644 --- a/src/runtime/runtime-compiler.cc +++ b/src/runtime/runtime-compiler.cc @@ -50,16 +50,13 @@ RUNTIME_FUNCTION(Runtime_CompileOptimized) { DCHECK(isolate->use_crankshaft()); Handle unoptimized(function->shared()->code()); - if (function->shared()->optimization_disabled() || - isolate->DebuggerHasBreakPoints()) { - // If the function is not optimizable or debugger is active continue - // using the code from the full compiler. + if (function->shared()->optimization_disabled()) { + // If the function is not optimizable continue using the code from the full + // compiler. if (FLAG_trace_opt) { - PrintF("[failed to optimize "); - function->PrintName(); - PrintF(": is code optimizable: %s, is debugger enabled: %s]\n", - function->shared()->optimization_disabled() ? "F" : "T", - isolate->DebuggerHasBreakPoints() ? "T" : "F"); + OFStream os(stdout); + os << "[failed to optimize " << Brief(*function) + << ", code is not optimizable]" << std::endl; } function->ReplaceCode(*unoptimized); return function->code();