Changeset 112225 in webkit


Ignore:
Timestamp:
Mar 27, 2012 1:34:19 AM (12 years ago)
Author:
loislo@chromium.org
Message:

Web Inspector: HeapSnapshot: speed-up distanceToWindow calculation.
https://bugs.webkit.org/show_bug.cgi?id=82305

Reviewed by Yury Semikhatsky.

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype._bfs):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r112224 r112225  
     12012-03-27  Ilya Tikhonovsky  <loislo@chromium.org>
     2
     3        Web Inspector: HeapSnapshot: speed-up distanceToWindow calculation.
     4        https://bugs.webkit.org/show_bug.cgi?id=82305
     5
     6        Reviewed by Yury Semikhatsky.
     7
     8        * inspector/front-end/HeapSnapshot.js:
     9        (WebInspector.HeapSnapshot.prototype._bfs):
     10
    1112012-03-27  Nikolas Zimmermann  <nzimmermann@rim.com>
    212
  • trunk/Source/WebCore/inspector/front-end/HeapSnapshot.js

    r112222 r112225  
    11491149    {
    11501150        var index = 0;
    1151         var node = this.rootNode;
     1151        var nodes = this._nodes;
    11521152        while (index < list.length) {
    11531153            var nodeIndex = list[index++]; // shift generates too much garbage.
     
    11571157            }
    11581158            var distance = this._distancesToWindow[nodeIndex] + 1;
    1159             node.nodeIndex = nodeIndex;
    1160             for (var iter = node.edges; iter.hasNext(); iter.next()) {
    1161                 var childNodeIndex = iter.edge.nodeIndex;
     1159            var edgesCount = nodes[nodeIndex + this._edgesCountOffset];
     1160            var edgeToNodeIndex = nodeIndex + this._firstEdgeOffset + this._edgeToNodeOffset;
     1161            for (var i = 0; i < edgesCount; ++i) {
     1162                var childNodeIndex = nodes[edgeToNodeIndex];
     1163                edgeToNodeIndex += this._edgeFieldsCount;
    11621164                if (childNodeIndex in this._distancesToWindow)
    11631165                    continue;
Note: See TracChangeset for help on using the changeset viewer.