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 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
113 INLINE(void set_shared_id(int shared_id)) { shared_id_ = shared_id; } | 113 INLINE(void set_shared_id(int shared_id)) { shared_id_ = shared_id; } |
114 INLINE(int security_token_id() const) { return security_token_id_; } | 114 INLINE(int security_token_id() const) { return security_token_id_; } |
115 | 115 |
116 INLINE(static bool is_js_function_tag(Logger::LogEventsAndTags tag)); | 116 INLINE(static bool is_js_function_tag(Logger::LogEventsAndTags tag)); |
117 | 117 |
118 List<OffsetRange>* no_frame_ranges() const { return no_frame_ranges_; } | 118 List<OffsetRange>* no_frame_ranges() const { return no_frame_ranges_; } |
119 void set_no_frame_ranges(List<OffsetRange>* ranges) { | 119 void set_no_frame_ranges(List<OffsetRange>* ranges) { |
120 no_frame_ranges_ = ranges; | 120 no_frame_ranges_ = ranges; |
121 } | 121 } |
122 | 122 |
| 123 void SetBuiltinId(Builtins::Name id); |
| 124 Builtins::Name builtin_id() const { return builtin_id_; } |
| 125 |
123 void CopyData(const CodeEntry& source); | 126 void CopyData(const CodeEntry& source); |
124 uint32_t GetCallUid() const; | 127 uint32_t GetCallUid() const; |
125 bool IsSameAs(CodeEntry* entry) const; | 128 bool IsSameAs(CodeEntry* entry) const; |
126 | 129 |
127 static const char* const kEmptyNamePrefix; | 130 static const char* const kEmptyNamePrefix; |
128 static const char* const kEmptyResourceName; | 131 static const char* const kEmptyResourceName; |
129 | 132 |
130 private: | 133 private: |
131 Logger::LogEventsAndTags tag_; | 134 Logger::LogEventsAndTags tag_ : 8; |
| 135 Builtins::Name builtin_id_ : 8; |
132 const char* name_prefix_; | 136 const char* name_prefix_; |
133 const char* name_; | 137 const char* name_; |
134 const char* resource_name_; | 138 const char* resource_name_; |
135 int line_number_; | 139 int line_number_; |
136 int shared_id_; | 140 int shared_id_; |
137 int security_token_id_; | 141 int security_token_id_; |
138 List<OffsetRange>* no_frame_ranges_; | 142 List<OffsetRange>* no_frame_ranges_; |
139 | 143 |
140 DISALLOW_COPY_AND_ASSIGN(CodeEntry); | 144 DISALLOW_COPY_AND_ASSIGN(CodeEntry); |
141 }; | 145 }; |
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
415 INLINE(CodeMap* code_map()) { return &code_map_; } | 419 INLINE(CodeMap* code_map()) { return &code_map_; } |
416 | 420 |
417 INLINE(void Tick()) { sample_rate_calc_.Tick(); } | 421 INLINE(void Tick()) { sample_rate_calc_.Tick(); } |
418 INLINE(double actual_sampling_rate()) { | 422 INLINE(double actual_sampling_rate()) { |
419 return sample_rate_calc_.ticks_per_ms(); | 423 return sample_rate_calc_.ticks_per_ms(); |
420 } | 424 } |
421 | 425 |
422 static const char* const kAnonymousFunctionName; | 426 static const char* const kAnonymousFunctionName; |
423 static const char* const kProgramEntryName; | 427 static const char* const kProgramEntryName; |
424 static const char* const kGarbageCollectorEntryName; | 428 static const char* const kGarbageCollectorEntryName; |
| 429 // Used to represent frames for which we have no reliable way to |
| 430 // detect function. |
| 431 static const char* const kUnresolvedFunctionName; |
425 | 432 |
426 private: | 433 private: |
427 INLINE(CodeEntry* EntryForVMState(StateTag tag)); | 434 INLINE(CodeEntry* EntryForVMState(StateTag tag)); |
428 | 435 |
429 CpuProfilesCollection* profiles_; | 436 CpuProfilesCollection* profiles_; |
430 CodeMap code_map_; | 437 CodeMap code_map_; |
431 CodeEntry* program_entry_; | 438 CodeEntry* program_entry_; |
432 CodeEntry* gc_entry_; | 439 CodeEntry* gc_entry_; |
| 440 CodeEntry* unresolved_entry_; |
433 SampleRateCalculator sample_rate_calc_; | 441 SampleRateCalculator sample_rate_calc_; |
434 | 442 |
435 DISALLOW_COPY_AND_ASSIGN(ProfileGenerator); | 443 DISALLOW_COPY_AND_ASSIGN(ProfileGenerator); |
436 }; | 444 }; |
437 | 445 |
438 | 446 |
439 } } // namespace v8::internal | 447 } } // namespace v8::internal |
440 | 448 |
441 #endif // V8_PROFILE_GENERATOR_H_ | 449 #endif // V8_PROFILE_GENERATOR_H_ |
OLD | NEW |