Ignore:
Timestamp:
Jun 16, 2008, 12:52:46 PM (17 years ago)
Author:
[email protected]
Message:

2008-06-16 Kevin McCullough <[email protected]>

Reviewed by Sam.

<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
profiler.

  • Remove the last of the uses of recursion in the profiler.
  • JavaScriptCore.exp: Export the new function's signature.
  • profiler/Profile.cpp: (KJS::calculateVisibleTotalTime): Added a new static method for recalculating the visibleTotalTime of methods after focus has changed which are visible. (KJS::stopProfiling): (KJS::Profile::focus): Implemented focus without recursion.
  • profiler/Profile.h: Moved implementation into the definition file.
  • profiler/ProfileNode.cpp: (KJS::ProfileNode::traverseNextNodePreOrder): Added an argument for whether or not to process the children nodes, this allows focus to skip sub trees which have been set as not visible. (KJS::ProfileNode::calculateVisibleTotalTime): This function set's a node's total visible time to the sum of its self time and its children's total times. (KJS::ProfileNode::focus): Implemented focus without recursion.
  • profiler/ProfileNode.h: (KJS::CallIdentifier::operator!= ): (KJS::ProfileNode::setActualTotalTime): Expanded setting the total time so that focus could modify only the visible total time. (KJS::ProfileNode::setVisibleTotalTime):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/JavaScriptCore.exp

    r34587 r34602  
    9292__ZN3KJS11JSImmediate8toStringEPKNS_7JSValueE
    9393__ZN3KJS11ProfileNode4sortEPFbRKN3WTF6RefPtrIS0_EES5_E
    94 __ZN3KJS11ProfileNode5focusERKNS_14CallIdentifierEb
    9594__ZN3KJS11ProgramNode6createEPNS_14SourceElementsEPN3WTF6VectorISt4pairINS_10IdentifierEjELm16EEEPNS4_INS3_6RefPtrINS_12FuncDeclNodeEEELm16EEEbb
    9695__ZN3KJS11PropertyMap11getLocationERKNS_10IdentifierE
     
    157156__ZN3KJS7JSArray4infoE
    158157__ZN3KJS7Profile10restoreAllEv
     158__ZN3KJS7Profile5focusEPKNS_11ProfileNodeE
    159159__ZN3KJS7Profile7excludeEPKNS_11ProfileNodeE
    160160__ZN3KJS7Profile7forEachEPFvPNS_11ProfileNodeEE
Note: See TracChangeset for help on using the changeset viewer.