Skip to content

Commit

Permalink
2010-08-08 James Robinson <jamesr@chromium.org>
Browse files Browse the repository at this point in the history
        Reviewed by Adam Barth.

        Set the shouldLazyAttach flag to true in the tree builder's adoption agency algorithm
        https://bugs.webkit.org/show_bug.cgi?id=43610

        Sets the shouldLazyAttach flag to true for appendChild() calls inside the HTML tree
        builder's adoption agency flag.  This is a speedup assuming that nodes subjected
        to the adoption agency are likely to be frequently reparented, and thus it is better
        to delay creating the render tree until later (when hopefully the DOM is finalized).

        On my mac pro this speeds up fast/parser/residual-style-hang.html by 2.6X.

        * html/HTMLTreeBuilder.cpp:
        (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
2010-08-08  James Robinson  <jamesr@chromium.org>

        Reviewed by Adam Barth.

        Set the shouldLazyAttach flag to true in the tree builder's adoption agency algorithm
        https://bugs.webkit.org/show_bug.cgi?id=43610

        New baselines for tests where the render tree depends on 0x0 render objects being
        created/destroyed during adoption agency fixups.

        * platform/mac/fast/forms/formmove3-expected.txt:
        * platform/mac/fast/forms/preserveFormDuringResidualStyle-expected.txt:
        * platform/mac/fast/invalid/003-expected.txt:
        * platform/mac/fast/invalid/019-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug647-expected.txt:
        * platform/mac/tables/mozilla/other/wa_table_tr_align-expected.txt:


Canonical link: https://commits.webkit.org/55767@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@64954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
jamesr committed Aug 8, 2010
1 parent 50be431 commit 795565b
Show file tree
Hide file tree
Showing 11 changed files with 50 additions and 23 deletions.
17 changes: 17 additions & 0 deletions LayoutTests/ChangeLog
@@ -1,3 +1,20 @@
2010-08-08 James Robinson <jamesr@chromium.org>

Reviewed by Adam Barth.

Set the shouldLazyAttach flag to true in the tree builder's adoption agency algorithm
https://bugs.webkit.org/show_bug.cgi?id=43610

New baselines for tests where the render tree depends on 0x0 render objects being
created/destroyed during adoption agency fixups.

* platform/mac/fast/forms/formmove3-expected.txt:
* platform/mac/fast/forms/preserveFormDuringResidualStyle-expected.txt:
* platform/mac/fast/invalid/003-expected.txt:
* platform/mac/fast/invalid/019-expected.txt:
* platform/mac/tables/mozilla/bugs/bug647-expected.txt:
* platform/mac/tables/mozilla/other/wa_table_tr_align-expected.txt:

2010-08-08 Mihai Parparita <mihaip@chromium.org>

Reviewed by Adam Barth.
Expand Down
12 changes: 8 additions & 4 deletions LayoutTests/platform/chromium/test_expectations.txt
Expand Up @@ -112,8 +112,6 @@ BUG34759 WIN DEBUG SLOW : inspector/console-log-before-inspector-open.html = PAS

BUG36539 SLOW : http/tests/misc/uncacheable-script-repeated.html = PASS

BUG47937 WIN DEBUG SLOW : fast/parser/residual-style-hang.html = PASS

// -----------------------------------------------------------------
// SKIPPED TESTS
// -----------------------------------------------------------------
Expand Down Expand Up @@ -3172,11 +3170,17 @@ BUG51161 LINUX DEBUG : svg/clip-path/clip-path-text.svg = CRASH

BUGWK43543 : http/tests/misc/isindex-formdata.html = TIMEOUT
BUGWK43543 : http/tests/misc/isindex-with-no-form-base-href.html = TEXT TIMEOUT
BUGWK43543 DEBUG : fast/parser/residual-style-dom.html = TIMEOUT
BUGWK43543 LINUX MAC DEBUG : fast/parser/residual-style-hang.html = TIMEOUT

BUGPFELDMAN WIN : http/tests/inspector-enabled/console-log-before-frame-navigation.html = TEXT

// Need rebaselines due to landing of bug 43610
BUGJAMESR WIN LINUX : fast/forms/formmove3-expected.txt = TEXT
BUGJAMESR WIN LINUX : fast/forms/preserveFormDuringResidualStyle-expected.txt = TEXT
BUGJAMESR WIN LINUX : fast/invalid/003-expected.txt = TEXT
BUGJAMESR WIN LINUX : fast/invalid/019-expected.txt = TEXT
BUGJAMESR WIN LINUX : tables/mozilla/bugs/bug647-expected.txt = TEXT
BUGJAMESR WIN LINUX : tables/mozilla/other/wa_table_tr_align-expected.txt = TEXT

// Failure caused by r64749
BUGSATISH: fast/speech/input-text-speechbutton.html = TIMEOUT

Expand Down
5 changes: 0 additions & 5 deletions LayoutTests/platform/gtk/Skipped
Expand Up @@ -5862,11 +5862,6 @@ inspector/debugger-breakpoints-not-activated-on-reload.html
# outside of the double-click distance.
editing/selection/5195166-1.html

# Times out. We need to figure out whether this is just caused by a slow bot
# or if there's a real bug here.
# https://bugs.webkit.org/show_bug.cgi?id=43540
fast/parser/residual-style-hang.html

# Remaining Sputnik failures
# https://bugs.webkit.org/show_bug.cgi?id=43568
fast/js/sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.12_Array_prototype_splice/S15.4.4.12_A2.1_T3.html
Expand Down
1 change: 1 addition & 0 deletions LayoutTests/platform/mac/fast/forms/formmove3-expected.txt
Expand Up @@ -30,5 +30,6 @@ layer at (0,0) size 800x600
RenderInline {A} at (0,0) size 0x0 [color=#0000EE]
RenderText {#text} at (0,0) size 0x0
RenderBlock (anonymous) at (0,28) size 784x18
RenderText {#text} at (0,0) size 0x0
RenderText {#text} at (0,0) size 104x18
text run at (0,0) width 104: "Form did submit"
Expand Up @@ -26,6 +26,8 @@ layer at (0,0) size 800x600
RenderBlock (anonymous) at (0,25) size 784x0
RenderInline {FONT} at (0,0) size 0x0
RenderText {#text} at (0,0) size 0x0
RenderBlock (anonymous) at (0,25) size 784x0
RenderText {#text} at (0,0) size 0x0
RenderBlock {DIV} at (0,25) size 784x36
RenderText {#text} at (0,0) size 775x36
text run at (0,0) width 775: "Success! This test succeeds if the input named mover is not detached from its form when it is moved around in the DOM to"
Expand Down
4 changes: 1 addition & 3 deletions LayoutTests/platform/mac/fast/invalid/003-expected.txt
Expand Up @@ -43,9 +43,6 @@ layer at (0,0) size 800x600
RenderBlock (anonymous) at (0,136) size 784x0
RenderInline {FONT} at (0,0) size 0x0 [color=#FF0000]
RenderInline {I} at (0,0) size 0x0
RenderBlock (anonymous) at (0,136) size 784x0 [color=#FF0000]
RenderBlock (anonymous) at (0,136) size 784x0
RenderInline {FONT} at (0,0) size 0x0 [color=#FF0000]
RenderBlock {P} at (0,136) size 784x18
RenderInline {FONT} at (0,0) size 123x18 [color=#FF0000]
RenderInline {I} at (0,0) size 93x18
Expand All @@ -56,6 +53,7 @@ layer at (0,0) size 800x600
RenderText {#text} at (123,0) size 126x18
text run at (123,0) width 126: " I should not be red."
RenderBlock (anonymous) at (0,170) size 784x18
RenderText {#text} at (0,0) size 0x0
RenderInline {B} at (0,0) size 131x18
RenderText {#text} at (0,0) size 36x18
text run at (0,0) width 36: "Bold "
Expand Down
3 changes: 0 additions & 3 deletions LayoutTests/platform/mac/fast/invalid/019-expected.txt
Expand Up @@ -10,9 +10,6 @@ layer at (0,0) size 800x600
RenderBlock (anonymous) at (0,0) size 784x0
RenderInline {B} at (0,0) size 0x0
RenderInline {NOBR} at (0,0) size 0x0
RenderBlock (anonymous) at (0,0) size 784x0
RenderBlock (anonymous) at (0,0) size 784x0
RenderInline {B} at (0,0) size 0x0
RenderBlock {DIV} at (0,0) size 784x64
RenderBlock (anonymous) at (0,0) size 784x36
RenderInline {B} at (0,0) size 763x36
Expand Down
Expand Up @@ -26,6 +26,8 @@ layer at (0,0) size 800x600
RenderText {#text} at (33,0) size 24x13
text run at (33,0) width 24: "inside"
RenderText {#text} at (0,0) size 0x0
RenderBlock (anonymous) at (2,15) size 90x0
RenderText {#text} at (0,0) size 0x0
RenderBlock (anonymous) at (0,23) size 100x18
RenderText {#text} at (10,0) size 79x18
text run at (10,0) width 79: "outside table"
Expand Up @@ -238,9 +238,6 @@ layer at (0,0) size 785x1308
RenderBlock (anonymous) at (2,56) size 336x0
RenderInline {B} at (0,0) size 0x0
RenderInline {FONT} at (0,0) size 0x0 [color=#FF0000]
RenderBlock (anonymous) at (2,56) size 336x0
RenderBlock (anonymous) at (2,56) size 336x0
RenderInline {B} at (0,0) size 0x0
RenderBlock {P} at (2,72) size 336x0
RenderInline {B} at (0,0) size 0x0
RenderInline {FONT} at (0,0) size 0x0 [color=#FF0000]
Expand Down Expand Up @@ -289,9 +286,6 @@ layer at (0,0) size 785x1308
RenderBlock (anonymous) at (2,56) size 336x0
RenderInline {B} at (0,0) size 0x0
RenderInline {FONT} at (0,0) size 0x0 [color=#FF0000]
RenderBlock (anonymous) at (2,56) size 336x0
RenderBlock (anonymous) at (2,56) size 336x0
RenderInline {B} at (0,0) size 0x0
RenderBlock {P} at (2,72) size 336x0
RenderInline {B} at (0,0) size 0x0
RenderInline {FONT} at (0,0) size 0x0 [color=#FF0000]
Expand Down
17 changes: 17 additions & 0 deletions WebCore/ChangeLog
@@ -1,3 +1,20 @@
2010-08-08 James Robinson <jamesr@chromium.org>

Reviewed by Adam Barth.

Set the shouldLazyAttach flag to true in the tree builder's adoption agency algorithm
https://bugs.webkit.org/show_bug.cgi?id=43610

Sets the shouldLazyAttach flag to true for appendChild() calls inside the HTML tree
builder's adoption agency flag. This is a speedup assuming that nodes subjected
to the adoption agency are likely to be frequently reparented, and thus it is better
to delay creating the render tree until later (when hopefully the DOM is finalized).

On my mac pro this speeds up fast/parser/residual-style-hang.html by 2.6X.

* html/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

2010-08-08 Nikita Vasilyev <me@elv1s.ru>

Reviewed by Pavel Feldman.
Expand Down
4 changes: 2 additions & 2 deletions WebCore/html/HTMLTreeBuilder.cpp
Expand Up @@ -1716,7 +1716,7 @@ void HTMLTreeBuilder::callTheAdoptionAgency(AtomicHTMLToken& token)
// 6.6
// Use appendChild instead of parserAddChild to handle possible reparenting.
ExceptionCode ec;
node->element()->appendChild(lastNode->element(), ec);
node->element()->appendChild(lastNode->element(), ec, true);
ASSERT(!ec);
// 6.7
lastNode = node;
Expand All @@ -1731,7 +1731,7 @@ void HTMLTreeBuilder::callTheAdoptionAgency(AtomicHTMLToken& token)
m_tree.fosterParent(lastNode->element());
else {
ExceptionCode ec;
commonAncestor->appendChild(lastNode->element(), ec);
commonAncestor->appendChild(lastNode->element(), ec, true);
ASSERT(!ec);
}
// 8
Expand Down

0 comments on commit 795565b

Please sign in to comment.