diff options
Diffstat (limited to 'JavaScriptCore/profiler/ProfileNode.cpp')
-rw-r--r-- | JavaScriptCore/profiler/ProfileNode.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/JavaScriptCore/profiler/ProfileNode.cpp b/JavaScriptCore/profiler/ProfileNode.cpp index bfcfcbe..8f20bbe 100644 --- a/JavaScriptCore/profiler/ProfileNode.cpp +++ b/JavaScriptCore/profiler/ProfileNode.cpp @@ -56,8 +56,9 @@ static double getCount() #endif } -ProfileNode::ProfileNode(const CallIdentifier& callIdentifier, ProfileNode* headNode, ProfileNode* parentNode) - : m_callIdentifier(callIdentifier) +ProfileNode::ProfileNode(ExecState* callerCallFrame, const CallIdentifier& callIdentifier, ProfileNode* headNode, ProfileNode* parentNode) + : m_callerCallFrame(callerCallFrame) + , m_callIdentifier(callIdentifier) , m_head(headNode) , m_parent(parentNode) , m_nextSibling(0) @@ -72,8 +73,9 @@ ProfileNode::ProfileNode(const CallIdentifier& callIdentifier, ProfileNode* head startTimer(); } -ProfileNode::ProfileNode(ProfileNode* headNode, ProfileNode* nodeToCopy) - : m_callIdentifier(nodeToCopy->callIdentifier()) +ProfileNode::ProfileNode(ExecState* callerCallFrame, ProfileNode* headNode, ProfileNode* nodeToCopy) + : m_callerCallFrame(callerCallFrame) + , m_callIdentifier(nodeToCopy->callIdentifier()) , m_head(headNode) , m_parent(nodeToCopy->parent()) , m_nextSibling(0) @@ -87,7 +89,7 @@ ProfileNode::ProfileNode(ProfileNode* headNode, ProfileNode* nodeToCopy) { } -ProfileNode* ProfileNode::willExecute(const CallIdentifier& callIdentifier) +ProfileNode* ProfileNode::willExecute(ExecState* callerCallFrame, const CallIdentifier& callIdentifier) { for (StackIterator currentChild = m_children.begin(); currentChild != m_children.end(); ++currentChild) { if ((*currentChild)->callIdentifier() == callIdentifier) { @@ -96,7 +98,7 @@ ProfileNode* ProfileNode::willExecute(const CallIdentifier& callIdentifier) } } - RefPtr<ProfileNode> newChild = ProfileNode::create(callIdentifier, m_head ? m_head : this, this); // If this ProfileNode has no head it is the head. + RefPtr<ProfileNode> newChild = ProfileNode::create(callerCallFrame, callIdentifier, m_head ? m_head : this, this); // If this ProfileNode has no head it is the head. if (m_children.size()) m_children.last()->setNextSibling(newChild.get()); m_children.append(newChild.release()); |