Index: src/cpu-profiler.cc |
diff --git a/src/cpu-profiler.cc b/src/cpu-profiler.cc |
index bdb4ec427ed8df5236c940f3a24d97f7aba999ea..b064a8bd597d12c04b78f27ff3cab9e197ea1e32 100644 |
--- a/src/cpu-profiler.cc |
+++ b/src/cpu-profiler.cc |
@@ -446,6 +446,7 @@ void CpuProfiler::StartProcessorIfNotStarted() { |
} |
isolate_->logger()->LogCompiledFunctions(); |
isolate_->logger()->LogAccessorCallbacks(); |
+ LogBuiltins(); |
} |
// Enable stack sampling. |
Sampler* sampler = isolate_->logger()->sampler(); |
@@ -507,4 +508,18 @@ void CpuProfiler::StopProcessor() { |
} |
+void CpuProfiler::LogBuiltins() { |
+ Builtins* builtins = isolate_->builtins(); |
+ ASSERT(builtins->is_initialized()); |
+ for (int i = 0; i < Builtins::builtin_count; i++) { |
+ CodeEventsContainer evt_rec(CodeEventRecord::REPORT_BUILTIN); |
+ ReportBuiltinEventRecord* rec = &evt_rec.ReportBuiltinEventRecord_; |
+ Builtins::Name id = static_cast<Builtins::Name>(i); |
+ rec->start = builtins->builtin(id)->address(); |
+ rec->builtin_id = id; |
+ processor_->Enqueue(evt_rec); |
+ } |
+} |
+ |
+ |
} } // namespace v8::internal |