OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 | 81 |
82 INLINE(bool is_js_function() const) { return is_js_function_tag(tag_); } | 82 INLINE(bool is_js_function() const) { return is_js_function_tag(tag_); } |
83 INLINE(const char* name_prefix() const) { return name_prefix_; } | 83 INLINE(const char* name_prefix() const) { return name_prefix_; } |
84 INLINE(bool has_name_prefix() const) { return name_prefix_[0] != '\0'; } | 84 INLINE(bool has_name_prefix() const) { return name_prefix_[0] != '\0'; } |
85 INLINE(const char* name() const) { return name_; } | 85 INLINE(const char* name() const) { return name_; } |
86 INLINE(const char* resource_name() const) { return resource_name_; } | 86 INLINE(const char* resource_name() const) { return resource_name_; } |
87 INLINE(int line_number() const) { return line_number_; } | 87 INLINE(int line_number() const) { return line_number_; } |
88 INLINE(void set_shared_id(int shared_id)) { shared_id_ = shared_id; } | 88 INLINE(void set_shared_id(int shared_id)) { shared_id_ = shared_id; } |
89 INLINE(int script_id() const) { return script_id_; } | 89 INLINE(int script_id() const) { return script_id_; } |
90 INLINE(void set_script_id(int script_id)) { script_id_ = script_id; } | 90 INLINE(void set_script_id(int script_id)) { script_id_ = script_id; } |
| 91 INLINE(void set_bailout_reason(const char* bailout_reason)) { |
| 92 bailout_reason_ = bailout_reason; |
| 93 } |
| 94 INLINE(const char* bailout_reason() const) { return bailout_reason_; } |
91 | 95 |
92 INLINE(static bool is_js_function_tag(Logger::LogEventsAndTags tag)); | 96 INLINE(static bool is_js_function_tag(Logger::LogEventsAndTags tag)); |
93 | 97 |
94 List<OffsetRange>* no_frame_ranges() const { return no_frame_ranges_; } | 98 List<OffsetRange>* no_frame_ranges() const { return no_frame_ranges_; } |
95 void set_no_frame_ranges(List<OffsetRange>* ranges) { | 99 void set_no_frame_ranges(List<OffsetRange>* ranges) { |
96 no_frame_ranges_ = ranges; | 100 no_frame_ranges_ = ranges; |
97 } | 101 } |
98 | 102 |
99 void SetBuiltinId(Builtins::Name id); | 103 void SetBuiltinId(Builtins::Name id); |
100 Builtins::Name builtin_id() const { return builtin_id_; } | 104 Builtins::Name builtin_id() const { return builtin_id_; } |
101 | 105 |
102 void CopyData(const CodeEntry& source); | 106 void CopyData(const CodeEntry& source); |
103 uint32_t GetCallUid() const; | 107 uint32_t GetCallUid() const; |
104 bool IsSameAs(CodeEntry* entry) const; | 108 bool IsSameAs(CodeEntry* entry) const; |
105 | 109 |
106 static const char* const kEmptyNamePrefix; | 110 static const char* const kEmptyNamePrefix; |
107 static const char* const kEmptyResourceName; | 111 static const char* const kEmptyResourceName; |
| 112 static const char* const kEmptyBailoutReason; |
108 | 113 |
109 private: | 114 private: |
110 Logger::LogEventsAndTags tag_ : 8; | 115 Logger::LogEventsAndTags tag_ : 8; |
111 Builtins::Name builtin_id_ : 8; | 116 Builtins::Name builtin_id_ : 8; |
112 const char* name_prefix_; | 117 const char* name_prefix_; |
113 const char* name_; | 118 const char* name_; |
114 const char* resource_name_; | 119 const char* resource_name_; |
115 int line_number_; | 120 int line_number_; |
116 int shared_id_; | 121 int shared_id_; |
117 int script_id_; | 122 int script_id_; |
118 List<OffsetRange>* no_frame_ranges_; | 123 List<OffsetRange>* no_frame_ranges_; |
| 124 const char* bailout_reason_; |
119 | 125 |
120 DISALLOW_COPY_AND_ASSIGN(CodeEntry); | 126 DISALLOW_COPY_AND_ASSIGN(CodeEntry); |
121 }; | 127 }; |
122 | 128 |
123 | 129 |
124 class ProfileTree; | 130 class ProfileTree; |
125 | 131 |
126 class ProfileNode { | 132 class ProfileNode { |
127 public: | 133 public: |
128 INLINE(ProfileNode(ProfileTree* tree, CodeEntry* entry)); | 134 INLINE(ProfileNode(ProfileTree* tree, CodeEntry* entry)); |
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
344 CodeEntry* gc_entry_; | 350 CodeEntry* gc_entry_; |
345 CodeEntry* unresolved_entry_; | 351 CodeEntry* unresolved_entry_; |
346 | 352 |
347 DISALLOW_COPY_AND_ASSIGN(ProfileGenerator); | 353 DISALLOW_COPY_AND_ASSIGN(ProfileGenerator); |
348 }; | 354 }; |
349 | 355 |
350 | 356 |
351 } } // namespace v8::internal | 357 } } // namespace v8::internal |
352 | 358 |
353 #endif // V8_PROFILE_GENERATOR_H_ | 359 #endif // V8_PROFILE_GENERATOR_H_ |
OLD | NEW |