[Webkit-unassigned] [Bug 53564] Make canHaveChildrenForEditing more efficient

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Feb 2 16:37:48 PST 2011


https://bugs.webkit.org/show_bug.cgi?id=53564





--- Comment #9 from Ryosuke Niwa <rniwa at webkit.org>  2011-02-02 16:37:48 PST ---
After my patch, the time profile looks much better although getFlag is still very hot.

    2.2%    2.2%    WebCore    WebCore::Node::getFlag(WebCore::Node::NodeFlags) const
    0.0%    0.8%    WebCore     WebCore::Node::parentNode() const
    0.0%    0.1%    WebCore      WebCore::PositionIterator::atEnd() const
    0.0%    0.1%    WebCore      WebCore::Range::compareBoundaryPoints(WebCore::Node*, int, WebCore::Node*, int)
    0.0%    0.1%    WebCore      WebCore::PositionIterator::atStart() const
    0.0%    0.1%    WebCore      WebCore::Range::setStart(WTF::PassRefPtr<WebCore::Node>, int, int&)
    0.0%    0.1%    WebCore      WebCore::Range::setEnd(WTF::PassRefPtr<WebCore::Node>, int, int&)
    0.0%    0.1%    WebCore      WebCore::positionInParentBeforeNode(WebCore::Node const*)
    0.0%    0.1%    WebCore      WebCore::Position::downstream(WebCore::EditingBoundaryCrossingRule) const
    0.0%    0.1%    WebCore      WebCore::Position::atStartOfTree() const
    0.0%    0.1%    WebCore      WebCore::enclosingVisualBoundary(WebCore::Node*)
    0.0%    0.0%    WebCore      WebCore::PositionIterator::increment()
    0.0%    0.0%    WebCore      WebCore::Node::rootEditableElement() const
    0.0%    0.0%    WebCore      WebCore::Range::commonAncestorContainer(WebCore::Node*, WebCore::Node*)
    0.0%    0.0%    WebCore      WebCore::PositionIterator::operator WebCore::Position() const
    0.0%    0.0%    WebCore      WebCore::Position::parentAnchoredEquivalent() const
    0.0%    0.0%    WebCore      WebCore::highestEditableRoot(WebCore::Position const&)
    0.0%    0.5%    WebCore     WebCore::Node::isElementNode() const
    0.0%    0.3%    WebCore      WebCore::Node::hasTagName(WebCore::QualifiedName const&) const
    0.0%    0.1%    WebCore       WebCore::endsOfNodeAreVisuallyDistinctPositions(WebCore::Node*)
    0.0%    0.1%    WebCore        WebCore::enclosingVisualBoundary(WebCore::Node*)
    0.0%    0.0%    WebCore        WebCore::Position::upstream(WebCore::EditingBoundaryCrossingRule) const
    0.0%    0.1%    WebCore       WebCore::highestEditableRoot(WebCore::Position const&)
    0.0%    0.0%    WebCore       WebCore::RenderObject::isHR() const
    0.0%    0.0%    WebCore       WebCore::Position::downstream(WebCore::EditingBoundaryCrossingRule) const
    0.0%    0.0%    WebCore       WebCore::Node::rootEditableElement() const
    0.0%    0.0%    WebCore       WebCore::Document::body() const
    0.0%    0.1%    WebCore      WebCore::toElement(WebCore::Node const*)
    0.0%    0.1%    WebCore      WebCore::isTableElement(WebCore::Node*)
    0.0%    0.0%    WebCore      WebCore::Node::rootEditableElement() const
    0.0%    0.0%    WebCore      WebCore::Element::recalcStyle(WebCore::Node::StyleChange)
    0.0%    0.4%    WebCore     WebCore::Node::isContainerNode() const
    0.0%    0.3%    WebCore     WebCore::Node::isTextNode() const
    0.0%    0.0%    WebCore     WebCore::Node::parentNodeGuaranteedHostFree() const
    0.0%    0.0%    WebCore     WebCore::Node::isShadowRoot() const
    0.0%    0.0%    WebCore     WebCore::Node::hasRareData() const
    0.0%    0.0%    WebCore     WebCore::Node::childNeedsStyleRecalc() const
    0.0%    0.0%    WebCore     WebCore::Node::appendChild(WTF::PassRefPtr<WebCore::Node>, int&, bool)
    0.0%    0.0%    WebCore     WebCore::editingIgnoresContent(WebCore::Node const*)
    1.5%    1.5%    libicucore.A.dylib    icu::RuleBasedBreakIterator::handleNext(icu::RBBIStateTable const*)
    1.3%    1.3%    JavaScriptCore    WTF::isMainThread()
    1.3%    1.3%    libSystem.B.dylib    __spin_lock
    1.0%    1.0%    libobjc.A.dylib    objc_msgSend
    1.0%    1.0%    WebCore    WebCore::Node::renderer() const
    0.7%    0.7%    WebCore    WebCore::Node::parentNode() const
    0.7%    0.7%    WebCore    WTF::RefPtr<WebCore::RenderStyle>::get() const
    0.7%    0.7%    WebCore    WebCore::Node::document() const
    0.6%    0.6%    WebCore    WebCore::TreeShared<WebCore::ContainerNode>::deref()

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list