Take line boxes out of the arena.
authorakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 30 Oct 2013 22:27:59 +0000 (22:27 +0000)
committerakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 30 Oct 2013 22:27:59 +0000 (22:27 +0000)
commit0bfa1285508bc9e6edca2f5c0e39d51c87ca2a0e
treeb8245ad2a5bc5a26c5cac82dfb52bb15a42f282b
parentd3cf3151ff7cc317ac845b0d6fc529a2dfa5ef92
Take line boxes out of the arena.
<https://webkit.org/b/123533>

Stop arena-allocating line boxes so we can move forward on improving
render tree memory management. This will also allow more rendering
code to take advantage of malloc optimizations.

This will likely regress performance on some micro-benchmarks, but
it's something we want to do sooner rather than later so we have time
to restabilize it. All improvements to the simple line layout's
coverage will help with recouping whatever is regressed.

BiDi runs are the only remaining user of the arena now.

Reviewed by Antti Koivisto

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@158321 268f45cc-cd09-0410-ab3c-d52691b4dbfc
24 files changed:
Source/WebCore/ChangeLog
Source/WebCore/WebCore.exp.in
Source/WebCore/rendering/InlineBox.cpp
Source/WebCore/rendering/InlineBox.h
Source/WebCore/rendering/InlineFlowBox.cpp
Source/WebCore/rendering/InlineFlowBox.h
Source/WebCore/rendering/InlineTextBox.cpp
Source/WebCore/rendering/InlineTextBox.h
Source/WebCore/rendering/RenderBlockFlow.cpp
Source/WebCore/rendering/RenderBlockFlow.h
Source/WebCore/rendering/RenderBlockLineLayout.cpp
Source/WebCore/rendering/RenderBox.cpp
Source/WebCore/rendering/RenderInline.cpp
Source/WebCore/rendering/RenderLineBoxList.cpp
Source/WebCore/rendering/RenderLineBoxList.h
Source/WebCore/rendering/RenderLineBreak.cpp
Source/WebCore/rendering/RenderText.cpp
Source/WebCore/rendering/RenderTextLineBoxes.cpp
Source/WebCore/rendering/RenderTextLineBoxes.h
Source/WebCore/rendering/RootInlineBox.cpp
Source/WebCore/rendering/RootInlineBox.h
Source/WebCore/rendering/svg/RenderSVGInline.cpp
Source/WebCore/rendering/svg/RenderSVGInlineText.cpp
Source/WebCore/rendering/svg/RenderSVGText.cpp