Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(306)

Side by Side Diff: src/sampler.cc

Issue 430503007: Rename ASSERT* to DCHECK*. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: REBASE and fixes Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/safepoint-table.cc ('k') | src/scanner.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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/sampler.h" 5 #include "src/sampler.h"
6 6
7 #if V8_OS_POSIX && !V8_OS_CYGWIN 7 #if V8_OS_POSIX && !V8_OS_CYGWIN
8 8
9 #define USE_SIGNALS 9 #define USE_SIGNALS
10 10
(...skipping 486 matching lines...) Expand 10 before | Expand all | Expand 10 after
497 static void AddActiveSampler(Sampler* sampler) { 497 static void AddActiveSampler(Sampler* sampler) {
498 bool need_to_start = false; 498 bool need_to_start = false;
499 base::LockGuard<base::Mutex> lock_guard(mutex_); 499 base::LockGuard<base::Mutex> lock_guard(mutex_);
500 if (instance_ == NULL) { 500 if (instance_ == NULL) {
501 // Start a thread that will send SIGPROF signal to VM threads, 501 // Start a thread that will send SIGPROF signal to VM threads,
502 // when CPU profiling will be enabled. 502 // when CPU profiling will be enabled.
503 instance_ = new SamplerThread(sampler->interval()); 503 instance_ = new SamplerThread(sampler->interval());
504 need_to_start = true; 504 need_to_start = true;
505 } 505 }
506 506
507 ASSERT(sampler->IsActive()); 507 DCHECK(sampler->IsActive());
508 ASSERT(!instance_->active_samplers_.Contains(sampler)); 508 DCHECK(!instance_->active_samplers_.Contains(sampler));
509 ASSERT(instance_->interval_ == sampler->interval()); 509 DCHECK(instance_->interval_ == sampler->interval());
510 instance_->active_samplers_.Add(sampler); 510 instance_->active_samplers_.Add(sampler);
511 511
512 if (need_to_start) instance_->StartSynchronously(); 512 if (need_to_start) instance_->StartSynchronously();
513 } 513 }
514 514
515 static void RemoveActiveSampler(Sampler* sampler) { 515 static void RemoveActiveSampler(Sampler* sampler) {
516 SamplerThread* instance_to_remove = NULL; 516 SamplerThread* instance_to_remove = NULL;
517 { 517 {
518 base::LockGuard<base::Mutex> lock_guard(mutex_); 518 base::LockGuard<base::Mutex> lock_guard(mutex_);
519 519
520 ASSERT(sampler->IsActive()); 520 DCHECK(sampler->IsActive());
521 bool removed = instance_->active_samplers_.RemoveElement(sampler); 521 bool removed = instance_->active_samplers_.RemoveElement(sampler);
522 ASSERT(removed); 522 DCHECK(removed);
523 USE(removed); 523 USE(removed);
524 524
525 // We cannot delete the instance immediately as we need to Join() the 525 // We cannot delete the instance immediately as we need to Join() the
526 // thread but we are holding mutex_ and the thread may try to acquire it. 526 // thread but we are holding mutex_ and the thread may try to acquire it.
527 if (instance_->active_samplers_.is_empty()) { 527 if (instance_->active_samplers_.is_empty()) {
528 instance_to_remove = instance_; 528 instance_to_remove = instance_;
529 instance_ = NULL; 529 instance_ = NULL;
530 } 530 }
531 } 531 }
532 532
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
568 568
569 base::Mutex* SamplerThread::mutex_ = NULL; 569 base::Mutex* SamplerThread::mutex_ = NULL;
570 SamplerThread* SamplerThread::instance_ = NULL; 570 SamplerThread* SamplerThread::instance_ = NULL;
571 571
572 572
573 // 573 //
574 // StackTracer implementation 574 // StackTracer implementation
575 // 575 //
576 DISABLE_ASAN void TickSample::Init(Isolate* isolate, 576 DISABLE_ASAN void TickSample::Init(Isolate* isolate,
577 const RegisterState& regs) { 577 const RegisterState& regs) {
578 ASSERT(isolate->IsInitialized()); 578 DCHECK(isolate->IsInitialized());
579 timestamp = base::TimeTicks::HighResolutionNow(); 579 timestamp = base::TimeTicks::HighResolutionNow();
580 pc = regs.pc; 580 pc = regs.pc;
581 state = isolate->current_vm_state(); 581 state = isolate->current_vm_state();
582 582
583 // Avoid collecting traces while doing GC. 583 // Avoid collecting traces while doing GC.
584 if (state == GC) return; 584 if (state == GC) return;
585 585
586 Address js_entry_sp = isolate->js_entry_sp(); 586 Address js_entry_sp = isolate->js_entry_sp();
587 if (js_entry_sp == 0) { 587 if (js_entry_sp == 0) {
588 // Not executing JS now. 588 // Not executing JS now.
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
637 profiling_(false), 637 profiling_(false),
638 has_processing_thread_(false), 638 has_processing_thread_(false),
639 active_(false), 639 active_(false),
640 is_counting_samples_(false), 640 is_counting_samples_(false),
641 js_and_external_sample_count_(0) { 641 js_and_external_sample_count_(0) {
642 data_ = new PlatformData; 642 data_ = new PlatformData;
643 } 643 }
644 644
645 645
646 Sampler::~Sampler() { 646 Sampler::~Sampler() {
647 ASSERT(!IsActive()); 647 DCHECK(!IsActive());
648 delete data_; 648 delete data_;
649 } 649 }
650 650
651 651
652 void Sampler::Start() { 652 void Sampler::Start() {
653 ASSERT(!IsActive()); 653 DCHECK(!IsActive());
654 SetActive(true); 654 SetActive(true);
655 SamplerThread::AddActiveSampler(this); 655 SamplerThread::AddActiveSampler(this);
656 } 656 }
657 657
658 658
659 void Sampler::Stop() { 659 void Sampler::Stop() {
660 ASSERT(IsActive()); 660 DCHECK(IsActive());
661 SamplerThread::RemoveActiveSampler(this); 661 SamplerThread::RemoveActiveSampler(this);
662 SetActive(false); 662 SetActive(false);
663 } 663 }
664 664
665 665
666 void Sampler::IncreaseProfilingDepth() { 666 void Sampler::IncreaseProfilingDepth() {
667 base::NoBarrier_AtomicIncrement(&profiling_, 1); 667 base::NoBarrier_AtomicIncrement(&profiling_, 1);
668 #if defined(USE_SIGNALS) 668 #if defined(USE_SIGNALS)
669 SignalHandler::IncreaseSamplerCount(); 669 SignalHandler::IncreaseSamplerCount();
670 #endif 670 #endif
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
738 #endif // USE_SIMULATOR 738 #endif // USE_SIMULATOR
739 SampleStack(state); 739 SampleStack(state);
740 } 740 }
741 ResumeThread(profiled_thread); 741 ResumeThread(profiled_thread);
742 } 742 }
743 743
744 #endif // USE_SIGNALS 744 #endif // USE_SIGNALS
745 745
746 746
747 } } // namespace v8::internal 747 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/safepoint-table.cc ('k') | src/scanner.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698