summaryrefslogtreecommitdiffstats
path: root/src/profile-generator.h
diff options
context:
space:
mode:
authorKristian Monsen <kristianm@google.com>2010-06-28 14:14:28 +0100
committerKristian Monsen <kristianm@google.com>2010-07-02 09:44:56 +0100
commit9dcf7e2f83591d471e88bf7d230651900b8e424b (patch)
tree0a26792d5c298ecf46ab9be2252662fee5628f66 /src/profile-generator.h
parenta94adf74b8a91ff002b9cade1736e5c4a50d52fb (diff)
downloadandroid_external_v8-9dcf7e2f83591d471e88bf7d230651900b8e424b.tar.gz
android_external_v8-9dcf7e2f83591d471e88bf7d230651900b8e424b.tar.bz2
android_external_v8-9dcf7e2f83591d471e88bf7d230651900b8e424b.zip
Update V8 to r4924 as required by WebKit r61871
Change-Id: Ic819dad0c1c9e035b8ffd306c96656ba87c5e85a
Diffstat (limited to 'src/profile-generator.h')
-rw-r--r--src/profile-generator.h25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/profile-generator.h b/src/profile-generator.h
index 3f90702b..4e423c8d 100644
--- a/src/profile-generator.h
+++ b/src/profile-generator.h
@@ -429,9 +429,10 @@ class HeapEntry;
class HeapGraphEdge {
public:
enum Type {
- CONTEXT_VARIABLE,
- ELEMENT,
- PROPERTY
+ CONTEXT_VARIABLE = v8::HeapGraphEdge::CONTEXT_VARIABLE,
+ ELEMENT = v8::HeapGraphEdge::ELEMENT,
+ PROPERTY = v8::HeapGraphEdge::PROPERTY,
+ INTERNAL = v8::HeapGraphEdge::INTERNAL
};
HeapGraphEdge(Type type, const char* name, HeapEntry* from, HeapEntry* to);
@@ -443,7 +444,7 @@ class HeapGraphEdge {
return index_;
}
const char* name() const {
- ASSERT(type_ == CONTEXT_VARIABLE || type_ == PROPERTY);
+ ASSERT(type_ == CONTEXT_VARIABLE || type_ == PROPERTY || type_ == INTERNAL);
return name_;
}
HeapEntry* from() const { return from_; }
@@ -468,12 +469,12 @@ class CachedHeapGraphPath;
class HeapEntry {
public:
enum Type {
- INTERNAL,
- ARRAY,
- STRING,
- JS_OBJECT,
- CODE,
- CLOSURE
+ INTERNAL = v8::HeapGraphNode::INTERNAL,
+ ARRAY = v8::HeapGraphNode::ARRAY,
+ STRING = v8::HeapGraphNode::STRING,
+ OBJECT = v8::HeapGraphNode::OBJECT,
+ CODE = v8::HeapGraphNode::CODE,
+ CLOSURE = v8::HeapGraphNode::CLOSURE
};
explicit HeapEntry(HeapSnapshot* snapshot)
@@ -533,6 +534,7 @@ class HeapEntry {
void PaintReachableFromOthers() { painted_ = kPaintReachableFromOthers; }
void SetClosureReference(const char* name, HeapEntry* entry);
void SetElementReference(int index, HeapEntry* entry);
+ void SetInternalReference(const char* name, HeapEntry* entry);
void SetPropertyReference(const char* name, HeapEntry* entry);
void SetAutoIndexReference(HeapEntry* entry);
@@ -542,6 +544,7 @@ class HeapEntry {
void Print(int max_depth, int indent);
private:
+ void AddEdge(HeapGraphEdge* edge);
int CalculateTotalSize();
int CalculateNonSharedTotalSize();
void FindRetainingPaths(HeapEntry* node, CachedHeapGraphPath* prev_path);
@@ -641,6 +644,8 @@ class HeapSnapshot {
void SetClosureReference(
HeapEntry* parent, String* reference_name, Object* child);
void SetElementReference(HeapEntry* parent, int index, Object* child);
+ void SetInternalReference(
+ HeapEntry* parent, const char* reference_name, Object* child);
void SetPropertyReference(
HeapEntry* parent, String* reference_name, Object* child);