Index: src/profile-generator.h |
diff --git a/src/profile-generator.h b/src/profile-generator.h |
index 9135fe66be0a2b87b4b48df7f72033306128603d..5ebb92bba3b0ed6ed87b02e2dbe6f02280c30a9f 100644 |
--- a/src/profile-generator.h |
+++ b/src/profile-generator.h |
@@ -5,7 +5,6 @@ |
#ifndef V8_PROFILE_GENERATOR_H_ |
#define V8_PROFILE_GENERATOR_H_ |
-#include <map> |
#include "include/v8-profiler.h" |
#include "src/allocation.h" |
#include "src/hashmap.h" |
@@ -45,35 +44,15 @@ class StringsStorage { |
}; |
-// Provides a mapping from the offsets within generated code to |
-// the source line. |
-class JITLineInfoTable : public Malloced { |
- public: |
- JITLineInfoTable(); |
- ~JITLineInfoTable(); |
- |
- void SetPosition(int pc_offset, int line); |
- int GetSourceLineNumber(int pc_offset) const; |
- |
- bool empty() const { return pc_offset_map_.empty(); } |
- |
- private: |
- // pc_offset -> source line |
- typedef std::map<int, int> PcOffsetMap; |
- PcOffsetMap pc_offset_map_; |
- DISALLOW_COPY_AND_ASSIGN(JITLineInfoTable); |
-}; |
- |
class CodeEntry { |
public: |
// CodeEntry doesn't own name strings, just references them. |
- inline CodeEntry(Logger::LogEventsAndTags tag, const char* name, |
+ inline CodeEntry(Logger::LogEventsAndTags tag, |
+ const char* name, |
const char* name_prefix = CodeEntry::kEmptyNamePrefix, |
const char* resource_name = CodeEntry::kEmptyResourceName, |
int line_number = v8::CpuProfileNode::kNoLineNumberInfo, |
- int column_number = v8::CpuProfileNode::kNoColumnNumberInfo, |
- JITLineInfoTable* line_info = NULL, |
- Address instruction_start = NULL); |
+ int column_number = v8::CpuProfileNode::kNoColumnNumberInfo); |
~CodeEntry(); |
bool is_js_function() const { return is_js_function_tag(tag_); } |
@@ -83,7 +62,6 @@ class CodeEntry { |
const char* resource_name() const { return resource_name_; } |
int line_number() const { return line_number_; } |
int column_number() const { return column_number_; } |
- const JITLineInfoTable* line_info() const { return line_info_; } |
void set_shared_id(int shared_id) { shared_id_ = shared_id; } |
int script_id() const { return script_id_; } |
void set_script_id(int script_id) { script_id_ = script_id; } |
@@ -105,10 +83,6 @@ class CodeEntry { |
uint32_t GetCallUid() const; |
bool IsSameAs(CodeEntry* entry) const; |
- int GetSourceLine(int pc_offset) const; |
- |
- Address instruction_start() const { return instruction_start_; } |
- |
static const char* const kEmptyNamePrefix; |
static const char* const kEmptyResourceName; |
static const char* const kEmptyBailoutReason; |
@@ -125,8 +99,6 @@ class CodeEntry { |
int script_id_; |
List<OffsetRange>* no_frame_ranges_; |
const char* bailout_reason_; |
- JITLineInfoTable* line_info_; |
- Address instruction_start_; |
DISALLOW_COPY_AND_ASSIGN(CodeEntry); |
}; |
@@ -142,15 +114,11 @@ class ProfileNode { |
ProfileNode* FindOrAddChild(CodeEntry* entry); |
void IncrementSelfTicks() { ++self_ticks_; } |
void IncreaseSelfTicks(unsigned amount) { self_ticks_ += amount; } |
- void IncrementLineTicks(int src_line); |
CodeEntry* entry() const { return entry_; } |
unsigned self_ticks() const { return self_ticks_; } |
const List<ProfileNode*>* children() const { return &children_list_; } |
unsigned id() const { return id_; } |
- unsigned int GetHitLineCount() const { return line_ticks_.occupancy(); } |
- bool GetLineTicks(v8::CpuProfileNode::LineTick* entries, |
- unsigned int length) const; |
void Print(int indent); |
@@ -171,7 +139,6 @@ class ProfileNode { |
HashMap children_; |
List<ProfileNode*> children_list_; |
unsigned id_; |
- HashMap line_ticks_; |
DISALLOW_COPY_AND_ASSIGN(ProfileNode); |
}; |
@@ -182,11 +149,8 @@ class ProfileTree { |
ProfileTree(); |
~ProfileTree(); |
- ProfileNode* AddPathFromEnd( |
- const Vector<CodeEntry*>& path, |
- int src_line = v8::CpuProfileNode::kNoLineNumberInfo); |
- void AddPathFromStart(const Vector<CodeEntry*>& path, |
- int src_line = v8::CpuProfileNode::kNoLineNumberInfo); |
+ ProfileNode* AddPathFromEnd(const Vector<CodeEntry*>& path); |
+ void AddPathFromStart(const Vector<CodeEntry*>& path); |
ProfileNode* root() const { return root_; } |
unsigned next_node_id() { return next_node_id_++; } |
@@ -211,8 +175,7 @@ class CpuProfile { |
CpuProfile(const char* title, bool record_samples); |
// Add pc -> ... -> main() call path to the profile. |
- void AddPath(base::TimeTicks timestamp, const Vector<CodeEntry*>& path, |
- int src_line); |
+ void AddPath(base::TimeTicks timestamp, const Vector<CodeEntry*>& path); |
void CalculateTotalTicksAndSamplingRate(); |
const char* title() const { return title_; } |
@@ -314,16 +277,16 @@ class CpuProfilesCollection { |
void RemoveProfile(CpuProfile* profile); |
CodeEntry* NewCodeEntry( |
- Logger::LogEventsAndTags tag, const char* name, |
+ Logger::LogEventsAndTags tag, |
+ const char* name, |
const char* name_prefix = CodeEntry::kEmptyNamePrefix, |
const char* resource_name = CodeEntry::kEmptyResourceName, |
int line_number = v8::CpuProfileNode::kNoLineNumberInfo, |
- int column_number = v8::CpuProfileNode::kNoColumnNumberInfo, |
- JITLineInfoTable* line_info = NULL, Address instruction_start = NULL); |
+ int column_number = v8::CpuProfileNode::kNoColumnNumberInfo); |
// Called from profile generator thread. |
- void AddPathToCurrentProfiles(base::TimeTicks timestamp, |
- const Vector<CodeEntry*>& path, int src_line); |
+ void AddPathToCurrentProfiles( |
+ base::TimeTicks timestamp, const Vector<CodeEntry*>& path); |
// Limits the number of profiles that can be simultaneously collected. |
static const int kMaxSimultaneousProfiles = 100; |