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_PROFILE_GENERATOR_INL_H_
6 #define V8_PROFILE_GENERATOR_INL_H_
7
8 #include "src/profile-generator.h"
9
10 namespace v8 {
11 namespace internal {
12
CodeEntry(Logger::LogEventsAndTags tag,const char * name,const char * name_prefix,const char * resource_name,int line_number,int column_number)13 CodeEntry::CodeEntry(Logger::LogEventsAndTags tag,
14 const char* name,
15 const char* name_prefix,
16 const char* resource_name,
17 int line_number,
18 int column_number)
19 : tag_(tag),
20 builtin_id_(Builtins::builtin_count),
21 name_prefix_(name_prefix),
22 name_(name),
23 resource_name_(resource_name),
24 line_number_(line_number),
25 column_number_(column_number),
26 shared_id_(0),
27 script_id_(v8::UnboundScript::kNoScriptId),
28 no_frame_ranges_(NULL),
29 bailout_reason_(kEmptyBailoutReason) { }
30
31
is_js_function_tag(Logger::LogEventsAndTags tag)32 bool CodeEntry::is_js_function_tag(Logger::LogEventsAndTags tag) {
33 return tag == Logger::FUNCTION_TAG
34 || tag == Logger::LAZY_COMPILE_TAG
35 || tag == Logger::SCRIPT_TAG
36 || tag == Logger::NATIVE_FUNCTION_TAG
37 || tag == Logger::NATIVE_LAZY_COMPILE_TAG
38 || tag == Logger::NATIVE_SCRIPT_TAG;
39 }
40
41
ProfileNode(ProfileTree * tree,CodeEntry * entry)42 ProfileNode::ProfileNode(ProfileTree* tree, CodeEntry* entry)
43 : tree_(tree),
44 entry_(entry),
45 self_ticks_(0),
46 children_(CodeEntriesMatch),
47 id_(tree->next_node_id()) { }
48
49 } } // namespace v8::internal
50
51 #endif // V8_PROFILE_GENERATOR_INL_H_
52