OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/compiler.h" | 7 #include "src/compiler.h" |
8 | 8 |
9 #include "src/ast-numbering.h" | 9 #include "src/ast-numbering.h" |
10 #include "src/bootstrapper.h" | 10 #include "src/bootstrapper.h" |
(...skipping 1419 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1430 PrintF("[aborted optimizing "); | 1430 PrintF("[aborted optimizing "); |
1431 info->closure()->ShortPrint(); | 1431 info->closure()->ShortPrint(); |
1432 PrintF(" because: %s]\n", GetBailoutReason(info->bailout_reason())); | 1432 PrintF(" because: %s]\n", GetBailoutReason(info->bailout_reason())); |
1433 } | 1433 } |
1434 return Handle<Code>::null(); | 1434 return Handle<Code>::null(); |
1435 } | 1435 } |
1436 | 1436 |
1437 | 1437 |
1438 bool Compiler::DebuggerWantsEagerCompilation(CompilationInfo* info, | 1438 bool Compiler::DebuggerWantsEagerCompilation(CompilationInfo* info, |
1439 bool allow_lazy_without_ctx) { | 1439 bool allow_lazy_without_ctx) { |
1440 return LiveEditFunctionTracker::IsActive(info->isolate()) || | 1440 if (LiveEditFunctionTracker::IsActive(info->isolate())) return true; |
1441 (info->isolate()->DebuggerHasBreakPoints() && !allow_lazy_without_ctx); | 1441 Debug* debug = info->isolate()->debug(); |
| 1442 bool debugging = debug->is_active() || debug->has_break_points(); |
| 1443 return debugging && !allow_lazy_without_ctx; |
1442 } | 1444 } |
1443 | 1445 |
1444 | 1446 |
1445 CompilationPhase::CompilationPhase(const char* name, CompilationInfo* info) | 1447 CompilationPhase::CompilationPhase(const char* name, CompilationInfo* info) |
1446 : name_(name), info_(info), zone_(info->isolate()) { | 1448 : name_(name), info_(info), zone_(info->isolate()) { |
1447 if (FLAG_hydrogen_stats) { | 1449 if (FLAG_hydrogen_stats) { |
1448 info_zone_start_allocation_size_ = info->zone()->allocation_size(); | 1450 info_zone_start_allocation_size_ = info->zone()->allocation_size(); |
1449 timer_.Start(); | 1451 timer_.Start(); |
1450 } | 1452 } |
1451 } | 1453 } |
(...skipping 14 matching lines...) Expand all Loading... |
1466 AllowHandleDereference allow_deref; | 1468 AllowHandleDereference allow_deref; |
1467 bool tracing_on = info()->IsStub() | 1469 bool tracing_on = info()->IsStub() |
1468 ? FLAG_trace_hydrogen_stubs | 1470 ? FLAG_trace_hydrogen_stubs |
1469 : (FLAG_trace_hydrogen && | 1471 : (FLAG_trace_hydrogen && |
1470 info()->closure()->PassesFilter(FLAG_trace_hydrogen_filter)); | 1472 info()->closure()->PassesFilter(FLAG_trace_hydrogen_filter)); |
1471 return (tracing_on && | 1473 return (tracing_on && |
1472 base::OS::StrChr(const_cast<char*>(FLAG_trace_phase), name_[0]) != NULL); | 1474 base::OS::StrChr(const_cast<char*>(FLAG_trace_phase), name_[0]) != NULL); |
1473 } | 1475 } |
1474 | 1476 |
1475 } } // namespace v8::internal | 1477 } } // namespace v8::internal |
OLD | NEW |