LCOV - code coverage report
Current view: top level - src/profiler - cpu-profiler-inl.h (source / functions) Hit Total Coverage
Test: app.info Lines: 16 16 100.0 %
Date: 2017-04-26 Functions: 1 1 100.0 %

          Line data    Source code
       1             : // Copyright 2010 the V8 project authors. All rights reserved.
       2             : // Use of this source code is governed by a BSD-style license that can be
       3             : // found in the LICENSE file.
       4             : 
       5             : #ifndef V8_PROFILER_CPU_PROFILER_INL_H_
       6             : #define V8_PROFILER_CPU_PROFILER_INL_H_
       7             : 
       8             : #include "src/profiler/cpu-profiler.h"
       9             : 
      10             : #include <new>
      11             : #include "src/profiler/circular-queue-inl.h"
      12             : #include "src/profiler/profile-generator-inl.h"
      13             : #include "src/profiler/unbound-queue-inl.h"
      14             : 
      15             : namespace v8 {
      16             : namespace internal {
      17             : 
      18             : void CodeCreateEventRecord::UpdateCodeMap(CodeMap* code_map) {
      19      204627 :   code_map->AddCode(start, entry, size);
      20             : }
      21             : 
      22             : 
      23             : void CodeMoveEventRecord::UpdateCodeMap(CodeMap* code_map) {
      24           6 :   code_map->MoveCode(from, to);
      25             : }
      26             : 
      27             : 
      28             : void CodeDisableOptEventRecord::UpdateCodeMap(CodeMap* code_map) {
      29          22 :   CodeEntry* entry = code_map->FindEntry(start);
      30          22 :   if (entry != NULL) {
      31          22 :     entry->set_bailout_reason(bailout_reason);
      32             :   }
      33             : }
      34             : 
      35             : 
      36             : void CodeDeoptEventRecord::UpdateCodeMap(CodeMap* code_map) {
      37          41 :   CodeEntry* entry = code_map->FindEntry(start);
      38          41 :   if (entry != NULL) entry->set_deopt_info(deopt_reason, deopt_id);
      39             : }
      40             : 
      41             : 
      42             : void ReportBuiltinEventRecord::UpdateCodeMap(CodeMap* code_map) {
      43      188160 :   CodeEntry* entry = code_map->FindEntry(start);
      44      188160 :   if (!entry) {
      45             :     // Code objects for builtins should already have been added to the map but
      46             :     // some of them have been filtered out by CpuProfiler.
      47             :     return;
      48             :   }
      49      120569 :   entry->SetBuiltinId(builtin_id);
      50             : }
      51             : 
      52             : 
      53      232021 : TickSample* ProfilerEventsProcessor::StartTickSample() {
      54      232021 :   void* address = ticks_buffer_.StartEnqueue();
      55      232021 :   if (address == NULL) return NULL;
      56             :   TickSampleEventRecord* evt =
      57      232021 :       new (address) TickSampleEventRecord(last_code_event_id_.Value());
      58      232021 :   return &evt->sample;
      59             : }
      60             : 
      61             : 
      62             : void ProfilerEventsProcessor::FinishTickSample() {
      63      232021 :   ticks_buffer_.FinishEnqueue();
      64             : }
      65             : 
      66             : }  // namespace internal
      67             : }  // namespace v8
      68             : 
      69             : #endif  // V8_PROFILER_CPU_PROFILER_INL_H_

Generated by: LCOV version 1.10