Take RenderObjects out of the arena.
authorakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 16 Oct 2013 22:28:24 +0000 (22:28 +0000)
committerakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 16 Oct 2013 22:28:24 +0000 (22:28 +0000)
<https://webkit.org/b/122895>

Reviewed by Antti Koivisto.

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

Line boxes and BiDi runs remain in the arena for now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157535 268f45cc-cd09-0410-ab3c-d52691b4dbfc

167 files changed:
Source/WebCore/ChangeLog
Source/WebCore/dom/Document.cpp
Source/WebCore/dom/Element.cpp
Source/WebCore/dom/Element.h
Source/WebCore/dom/Text.cpp
Source/WebCore/dom/Text.h
Source/WebCore/html/BaseButtonInputType.cpp
Source/WebCore/html/BaseButtonInputType.h
Source/WebCore/html/FileInputType.cpp
Source/WebCore/html/FileInputType.h
Source/WebCore/html/HTMLAppletElement.cpp
Source/WebCore/html/HTMLAppletElement.h
Source/WebCore/html/HTMLBRElement.cpp
Source/WebCore/html/HTMLBRElement.h
Source/WebCore/html/HTMLButtonElement.cpp
Source/WebCore/html/HTMLButtonElement.h
Source/WebCore/html/HTMLCanvasElement.cpp
Source/WebCore/html/HTMLCanvasElement.h
Source/WebCore/html/HTMLDetailsElement.cpp
Source/WebCore/html/HTMLDetailsElement.h
Source/WebCore/html/HTMLElement.cpp
Source/WebCore/html/HTMLElement.h
Source/WebCore/html/HTMLFieldSetElement.cpp
Source/WebCore/html/HTMLFieldSetElement.h
Source/WebCore/html/HTMLFrameElement.cpp
Source/WebCore/html/HTMLFrameElement.h
Source/WebCore/html/HTMLFrameSetElement.cpp
Source/WebCore/html/HTMLFrameSetElement.h
Source/WebCore/html/HTMLIFrameElement.cpp
Source/WebCore/html/HTMLIFrameElement.h
Source/WebCore/html/HTMLImageElement.cpp
Source/WebCore/html/HTMLImageElement.h
Source/WebCore/html/HTMLInputElement.cpp
Source/WebCore/html/HTMLInputElement.h
Source/WebCore/html/HTMLMediaElement.cpp
Source/WebCore/html/HTMLMediaElement.h
Source/WebCore/html/HTMLMeterElement.cpp
Source/WebCore/html/HTMLMeterElement.h
Source/WebCore/html/HTMLPlugInImageElement.cpp
Source/WebCore/html/HTMLPlugInImageElement.h
Source/WebCore/html/HTMLProgressElement.cpp
Source/WebCore/html/HTMLProgressElement.h
Source/WebCore/html/HTMLSelectElement.cpp
Source/WebCore/html/HTMLSelectElement.h
Source/WebCore/html/HTMLSummaryElement.cpp
Source/WebCore/html/HTMLSummaryElement.h
Source/WebCore/html/HTMLTextAreaElement.cpp
Source/WebCore/html/HTMLTextAreaElement.h
Source/WebCore/html/HTMLVideoElement.cpp
Source/WebCore/html/HTMLVideoElement.h
Source/WebCore/html/HiddenInputType.cpp
Source/WebCore/html/HiddenInputType.h
Source/WebCore/html/ImageInputType.cpp
Source/WebCore/html/ImageInputType.h
Source/WebCore/html/InputType.cpp
Source/WebCore/html/InputType.h
Source/WebCore/html/RangeInputType.cpp
Source/WebCore/html/RangeInputType.h
Source/WebCore/html/SearchInputType.cpp
Source/WebCore/html/SearchInputType.h
Source/WebCore/html/TextFieldInputType.cpp
Source/WebCore/html/TextFieldInputType.h
Source/WebCore/html/shadow/DetailsMarkerControl.cpp
Source/WebCore/html/shadow/DetailsMarkerControl.h
Source/WebCore/html/shadow/MediaControlElements.cpp
Source/WebCore/html/shadow/MediaControlElements.h
Source/WebCore/html/shadow/MeterShadowElement.cpp
Source/WebCore/html/shadow/MeterShadowElement.h
Source/WebCore/html/shadow/ProgressShadowElement.cpp
Source/WebCore/html/shadow/ProgressShadowElement.h
Source/WebCore/html/shadow/SliderThumbElement.cpp
Source/WebCore/html/shadow/SliderThumbElement.h
Source/WebCore/html/shadow/TextControlInnerElements.cpp
Source/WebCore/html/shadow/TextControlInnerElements.h
Source/WebCore/html/track/TextTrackCue.cpp
Source/WebCore/html/track/TextTrackCue.h
Source/WebCore/mathml/MathMLInlineContainerElement.cpp
Source/WebCore/mathml/MathMLInlineContainerElement.h
Source/WebCore/mathml/MathMLMathElement.cpp
Source/WebCore/mathml/MathMLMathElement.h
Source/WebCore/mathml/MathMLTextElement.cpp
Source/WebCore/mathml/MathMLTextElement.h
Source/WebCore/page/FrameView.cpp
Source/WebCore/rendering/FlowThreadController.cpp
Source/WebCore/rendering/RenderBlock.cpp
Source/WebCore/rendering/RenderButton.cpp
Source/WebCore/rendering/RenderElement.cpp
Source/WebCore/rendering/RenderEmbeddedObject.cpp
Source/WebCore/rendering/RenderFullScreen.cpp
Source/WebCore/rendering/RenderInline.cpp
Source/WebCore/rendering/RenderLayer.cpp
Source/WebCore/rendering/RenderListItem.cpp
Source/WebCore/rendering/RenderMenuList.cpp
Source/WebCore/rendering/RenderMultiColumnBlock.cpp
Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp
Source/WebCore/rendering/RenderObject.cpp
Source/WebCore/rendering/RenderObject.h
Source/WebCore/rendering/RenderRuby.cpp
Source/WebCore/rendering/RenderRubyRun.cpp
Source/WebCore/rendering/RenderScrollbar.cpp
Source/WebCore/rendering/RenderTable.cpp
Source/WebCore/rendering/RenderTableCell.cpp
Source/WebCore/rendering/RenderTableRow.cpp
Source/WebCore/rendering/RenderTableSection.cpp
Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp
Source/WebCore/rendering/mathml/RenderMathMLFenced.cpp
Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp
Source/WebCore/rendering/mathml/RenderMathMLRow.cpp
Source/WebCore/rendering/mathml/RenderMathMLScripts.cpp
Source/WebCore/rendering/style/ContentData.cpp
Source/WebCore/style/StyleResolveTree.cpp
Source/WebCore/svg/SVGAElement.cpp
Source/WebCore/svg/SVGAElement.h
Source/WebCore/svg/SVGAltGlyphElement.cpp
Source/WebCore/svg/SVGAltGlyphElement.h
Source/WebCore/svg/SVGCircleElement.cpp
Source/WebCore/svg/SVGCircleElement.h
Source/WebCore/svg/SVGClipPathElement.cpp
Source/WebCore/svg/SVGClipPathElement.h
Source/WebCore/svg/SVGDefsElement.cpp
Source/WebCore/svg/SVGDefsElement.h
Source/WebCore/svg/SVGEllipseElement.cpp
Source/WebCore/svg/SVGEllipseElement.h
Source/WebCore/svg/SVGFilterElement.cpp
Source/WebCore/svg/SVGFilterElement.h
Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.cpp
Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.h
Source/WebCore/svg/SVGForeignObjectElement.cpp
Source/WebCore/svg/SVGForeignObjectElement.h
Source/WebCore/svg/SVGGElement.cpp
Source/WebCore/svg/SVGGElement.h
Source/WebCore/svg/SVGGraphicsElement.cpp
Source/WebCore/svg/SVGGraphicsElement.h
Source/WebCore/svg/SVGImageElement.cpp
Source/WebCore/svg/SVGImageElement.h
Source/WebCore/svg/SVGLinearGradientElement.cpp
Source/WebCore/svg/SVGLinearGradientElement.h
Source/WebCore/svg/SVGMarkerElement.cpp
Source/WebCore/svg/SVGMarkerElement.h
Source/WebCore/svg/SVGMaskElement.cpp
Source/WebCore/svg/SVGMaskElement.h
Source/WebCore/svg/SVGPathElement.cpp
Source/WebCore/svg/SVGPathElement.h
Source/WebCore/svg/SVGPatternElement.cpp
Source/WebCore/svg/SVGPatternElement.h
Source/WebCore/svg/SVGRadialGradientElement.cpp
Source/WebCore/svg/SVGRadialGradientElement.h
Source/WebCore/svg/SVGRectElement.cpp
Source/WebCore/svg/SVGRectElement.h
Source/WebCore/svg/SVGSVGElement.cpp
Source/WebCore/svg/SVGSVGElement.h
Source/WebCore/svg/SVGStopElement.cpp
Source/WebCore/svg/SVGStopElement.h
Source/WebCore/svg/SVGSwitchElement.cpp
Source/WebCore/svg/SVGSwitchElement.h
Source/WebCore/svg/SVGSymbolElement.cpp
Source/WebCore/svg/SVGSymbolElement.h
Source/WebCore/svg/SVGTRefElement.cpp
Source/WebCore/svg/SVGTRefElement.h
Source/WebCore/svg/SVGTSpanElement.cpp
Source/WebCore/svg/SVGTSpanElement.h
Source/WebCore/svg/SVGTextElement.cpp
Source/WebCore/svg/SVGTextElement.h
Source/WebCore/svg/SVGTextPathElement.cpp
Source/WebCore/svg/SVGTextPathElement.h
Source/WebCore/svg/SVGUseElement.cpp
Source/WebCore/svg/SVGUseElement.h

index f6f5a7f..3639971 100644 (file)
@@ -1,3 +1,16 @@
+2013-10-16  Andreas Kling  <akling@apple.com>
+
+        Take RenderObjects out of the arena.
+        <https://webkit.org/b/122895>
+
+        Reviewed by Antti Koivisto.
+
+        Stop arena-allocating renderers so we can move forward on improving
+        render tree memory management. This will also allow rendering code
+        to take advantage of malloc optimizations.
+
+        Line boxes and BiDi runs remain in the arena for now.
+
 2013-10-16  Roger Fong  <roger_fong@apple.com>
 
         [Windows] Speculative fix for test, media/video-canvas-drawing-output.html.
index 2cec215..b02cb4e 100644 (file)
@@ -1931,7 +1931,7 @@ void Document::createRenderTree()
 
     m_renderArena = std::make_unique<RenderArena>();
     
-    setRenderView(new (*m_renderArena) RenderView(*this));
+    setRenderView(new RenderView(*this));
 #if USE(ACCELERATED_COMPOSITING)
     renderView()->setIsInWindow(true);
 #endif
index 3c4dfad..db12cad 100644 (file)
@@ -1347,7 +1347,7 @@ bool Element::rendererIsNeeded(const RenderStyle& style)
     return style.display() != NONE;
 }
 
-RenderElement* Element::createRenderer(RenderArena&, RenderStyle& style)
+RenderElement* Element::createRenderer(RenderStyle& style)
 {
     return RenderElement::createFor(*this, style);
 }
index f76eb47..e45cb04 100644 (file)
@@ -304,7 +304,7 @@ public:
     void lazyAttach(ShouldSetAttached = SetAttached);
     void lazyReattach(ShouldSetAttached = SetAttached);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool rendererIsNeeded(const RenderStyle&);
     void didAffectSelector(AffectedSelectorMask);
 
index 6f8f870..12aa48e 100644 (file)
@@ -191,16 +191,16 @@ static bool isSVGText(Text* text)
 }
 #endif
 
-RenderText* Text::createTextRenderer(RenderArena& arena, RenderStyle& style)
+RenderText* Text::createTextRenderer(RenderStyle& style)
 {
 #if ENABLE(SVG)
     if (isSVGText(this) || isSVGShadowText(this))
-        return new (arena) RenderSVGInlineText(*this, dataImpl());
+        return new RenderSVGInlineText(*this, dataImpl());
 #endif
     if (style.hasTextCombine())
-        return new (arena) RenderCombineText(*this, dataImpl());
+        return new RenderCombineText(*this, dataImpl());
 
-    return new (arena) RenderText(*this, dataImpl());
+    return new RenderText(*this, dataImpl());
 }
 
 bool Text::childTypeAllowed(NodeType) const
index 5910a6a..5d97a9d 100644 (file)
@@ -47,7 +47,7 @@ public:
     String wholeText() const;
     PassRefPtr<Text> replaceWholeText(const String&, ExceptionCode&);
     
-    RenderText* createTextRenderer(RenderArena&, RenderStyle&);
+    RenderText* createTextRenderer(RenderStyle&);
     
     virtual bool canContainRangeEndPoint() const OVERRIDE FINAL { return true; }
 
index 4675de4..0673c9c 100644 (file)
@@ -52,9 +52,9 @@ bool BaseButtonInputType::appendFormData(FormDataList&, bool) const
     return false;
 }
 
-RenderElement* BaseButtonInputType::createRenderer(RenderArena& arena, RenderStyle&) const
+RenderElement* BaseButtonInputType::createRenderer(RenderStyle&) const
 {
-    return new (arena) RenderButton(element());
+    return new RenderButton(element());
 }
 
 bool BaseButtonInputType::storesValueSeparateFromAttribute()
index 8bfed8f..f3bdc8e 100644 (file)
@@ -43,7 +43,7 @@ protected:
 private:
     virtual bool shouldSaveAndRestoreFormControlState() const OVERRIDE;
     virtual bool appendFormData(FormDataList&, bool) const OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
     virtual bool storesValueSeparateFromAttribute() OVERRIDE;
     virtual void setValue(const String&, bool, TextFieldEventBehavior) OVERRIDE;
 };
index 0eee166..d29fa12 100644 (file)
@@ -212,9 +212,9 @@ void FileInputType::handleDOMActivateEvent(Event* event)
     event->setDefaultHandled();
 }
 
-RenderElement* FileInputType::createRenderer(RenderArena& arena, RenderStyle&) const
+RenderElement* FileInputType::createRenderer(RenderStyle&) const
 {
-    return new (arena) RenderFileUploadControl(element());
+    return new RenderFileUploadControl(element());
 }
 
 bool FileInputType::canSetStringValue() const
index 21fcdc6..6a4ac93 100644 (file)
@@ -59,7 +59,7 @@ private:
     virtual bool valueMissing(const String&) const OVERRIDE;
     virtual String valueMissingText() const OVERRIDE;
     virtual void handleDOMActivateEvent(Event*) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
     virtual bool canSetStringValue() const OVERRIDE;
     virtual bool canChangeFromAnotherType() const OVERRIDE;
     virtual FileList* files() OVERRIDE;
index 0a0fecc..07893f3 100644 (file)
@@ -75,7 +75,7 @@ bool HTMLAppletElement::rendererIsNeeded(const RenderStyle& style)
     return HTMLPlugInImageElement::rendererIsNeeded(style);
 }
 
-RenderElement* HTMLAppletElement::createRenderer(RenderArena&, RenderStyle& style)
+RenderElement* HTMLAppletElement::createRenderer(RenderStyle& style)
 {
     if (!canEmbedJava())
         return RenderElement::createFor(*this, style);
index 46260a9..86012ca 100644 (file)
@@ -37,7 +37,7 @@ private:
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     virtual RenderWidget* renderWidgetForJSBindings() const;
     virtual void updateWidget(PluginCreationOption) OVERRIDE;
index 985d8b4..b408e68 100644 (file)
@@ -71,12 +71,12 @@ void HTMLBRElement::collectStyleForPresentationAttribute(const QualifiedName& na
         HTMLElement::collectStyleForPresentationAttribute(name, value, style);
 }
 
-RenderElement* HTMLBRElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLBRElement::createRenderer(RenderStyle& style)
 {
     if (style.hasContent())
         return RenderElement::createFor(*this, style);
 
-    return new (arena) RenderLineBreak(*this);
+    return new RenderLineBreak(*this);
 }
 
 }
index 5ab0149..c57cce6 100644 (file)
@@ -41,7 +41,7 @@ private:
     virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE;
     virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*) OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 };
 
 } // namespace
index edd82d9..664becc 100644 (file)
@@ -57,9 +57,9 @@ void HTMLButtonElement::setType(const AtomicString& type)
     setAttribute(typeAttr, type);
 }
 
-RenderElement* HTMLButtonElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLButtonElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderButton(*this);
+    return new RenderButton(*this);
 }
 
 const AtomicString& HTMLButtonElement::formControlType() const
index 60383cc..d72495b 100644 (file)
@@ -45,7 +45,7 @@ private:
 
     virtual const AtomicString& formControlType() const;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     // HTMLFormControlElement always creates one, but buttons don't need it.
     virtual bool alwaysCreateUserAgentShadowRoot() const OVERRIDE { return false; }
index 7bfcd23..2c5758c 100644 (file)
@@ -109,16 +109,16 @@ void HTMLCanvasElement::parseAttribute(const QualifiedName& name, const AtomicSt
     HTMLElement::parseAttribute(name, value);
 }
 
-RenderElement* HTMLCanvasElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLCanvasElement::createRenderer(RenderStyle& style)
 {
     Frame* frame = document().frame();
     if (frame && frame->script().canExecuteScripts(NotAboutToExecuteScript)) {
         m_rendererIsCanvas = true;
-        return new (arena) RenderHTMLCanvas(*this);
+        return new RenderHTMLCanvas(*this);
     }
 
     m_rendererIsCanvas = false;
-    return HTMLElement::createRenderer(arena, style);
+    return HTMLElement::createRenderer(style);
 }
 
 void HTMLCanvasElement::willAttachRenderers()
index 1d9cbee..7452c67 100644 (file)
@@ -144,7 +144,7 @@ private:
     HTMLCanvasElement(const QualifiedName&, Document&);
 
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual void willAttachRenderers() OVERRIDE;
     virtual bool areAuthorShadowsAllowed() const OVERRIDE;
 
index 967392f..cdf93dc 100644 (file)
@@ -112,9 +112,9 @@ HTMLDetailsElement::HTMLDetailsElement(const QualifiedName& tagName, Document& d
     ASSERT(hasTagName(detailsTag));
 }
 
-RenderElement* HTMLDetailsElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLDetailsElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderBlockFlow(*this);
+    return new RenderBlockFlow(*this);
 }
 
 void HTMLDetailsElement::didAddUserAgentShadowRoot(ShadowRoot* root)
index 6fcb3e0..9ec8944 100644 (file)
@@ -35,7 +35,7 @@ public:
 private:
     HTMLDetailsElement(const QualifiedName&, Document&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE;
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
 
index b47f20c..4e786b9 100644 (file)
@@ -784,10 +784,10 @@ bool HTMLElement::rendererIsNeeded(const RenderStyle& style)
     return StyledElement::rendererIsNeeded(style);
 }
 
-RenderElement* HTMLElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLElement::createRenderer(RenderStyle& style)
 {
     if (hasLocalName(wbrTag))
-        return new (arena) RenderLineBreak(*this);
+        return new RenderLineBreak(*this);
     return RenderElement::createFor(*this, style);
 }
 
index b947f58..bf12c04 100644 (file)
@@ -82,7 +82,7 @@ public:
     bool ieForbidsInsertHTML() const;
 
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     HTMLFormElement* form() const { return virtualForm(); }
 
index 873f347..169ed7a 100644 (file)
@@ -83,9 +83,9 @@ const AtomicString& HTMLFieldSetElement::formControlType() const
     return fieldset;
 }
 
-RenderElement* HTMLFieldSetElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLFieldSetElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderFieldset(*this);
+    return new RenderFieldset(*this);
 }
 
 HTMLLegendElement* HTMLFieldSetElement::legend() const
index f25f669..98202a9 100644 (file)
@@ -49,7 +49,7 @@ private:
 
     virtual bool isEnumeratable() const OVERRIDE { return true; }
     virtual bool supportsFocus() const OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual const AtomicString& formControlType() const OVERRIDE;
     virtual bool recalcWillValidate() const OVERRIDE { return false; }
     virtual void childrenChanged(const ChildChange&) OVERRIDE;
index 805bd16..1481941 100644 (file)
@@ -54,9 +54,9 @@ bool HTMLFrameElement::rendererIsNeeded(const RenderStyle&)
     return isURLAllowed();
 }
 
-RenderElement* HTMLFrameElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLFrameElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderFrame(*this);
+    return new RenderFrame(*this);
 }
 
 bool HTMLFrameElement::noResize() const
index 7246791..96346b4 100644 (file)
@@ -42,7 +42,7 @@ private:
     virtual void didAttachRenderers() OVERRIDE;
 
     virtual bool rendererIsNeeded(const RenderStyle&);
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
 
index bd69b07..482ee98 100644 (file)
@@ -155,12 +155,12 @@ bool HTMLFrameSetElement::rendererIsNeeded(const RenderStyle& style)
     return style.isStyleAvailable();
 }
 
-RenderElement* HTMLFrameSetElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLFrameSetElement::createRenderer(RenderStyle& style)
 {
     if (style.hasContent())
         return RenderElement::createFor(*this, style);
     
-    return new (arena) RenderFrameSet(*this);
+    return new RenderFrameSet(*this);
 }
 
 HTMLFrameSetElement* HTMLFrameSetElement::findContaining(Element* descendant)
index 7f0d3c1..dd79be8 100644 (file)
@@ -75,7 +75,7 @@ private:
 
     virtual void willAttachRenderers() OVERRIDE;
     virtual bool rendererIsNeeded(const RenderStyle&);
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     
     virtual void defaultEventHandler(Event*);
 
index e19c862..5e7b5c9 100644 (file)
@@ -95,9 +95,9 @@ bool HTMLIFrameElement::rendererIsNeeded(const RenderStyle& style)
     return isURLAllowed() && style.display() != NONE;
 }
 
-RenderElement* HTMLIFrameElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLIFrameElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderIFrame(*this);
+    return new RenderIFrame(*this);
 }
 
 bool HTMLIFrameElement::shouldDisplaySeamlessly() const
index 90769f4..02911a3 100644 (file)
@@ -42,7 +42,7 @@ private:
     virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*) OVERRIDE;
 
     virtual bool rendererIsNeeded(const RenderStyle&);
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual void didRecalcStyle(Style::Change) OVERRIDE;
 };
index a67fab8..d5b597f 100644 (file)
@@ -177,12 +177,12 @@ String HTMLImageElement::altText() const
     return alt;
 }
 
-RenderElement* HTMLImageElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLImageElement::createRenderer(RenderStyle& style)
 {
     if (style.hasContent())
         return RenderElement::createFor(*this, style);
 
-    RenderImage* image = new (arena) RenderImage(*this);
+    RenderImage* image = new RenderImage(*this);
     image->setImageResource(RenderImageResource::create());
     return image;
 }
index 9ed141f..3cd9d72 100644 (file)
@@ -98,7 +98,7 @@ private:
     virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*) OVERRIDE;
 
     virtual void didAttachRenderers() OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     virtual bool canStartSelection() const OVERRIDE;
 
index b6581ed..a9724fd 100644 (file)
@@ -791,9 +791,9 @@ bool HTMLInputElement::rendererIsNeeded(const RenderStyle& style)
     return m_inputType->rendererIsNeeded() && HTMLTextFormControlElement::rendererIsNeeded(style);
 }
 
-RenderElement* HTMLInputElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLInputElement::createRenderer(RenderStyle& style)
 {
-    return m_inputType->createRenderer(arena, style);
+    return m_inputType->createRenderer(style);
 }
 
 void HTMLInputElement::willAttachRenderers()
index 0870020..751cb87 100644 (file)
@@ -200,7 +200,7 @@ public:
     bool canHaveSelection() const;
 
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual void willAttachRenderers() OVERRIDE;
     virtual void didAttachRenderers() OVERRIDE;
     virtual void didDetachRenderers() OVERRIDE;
index 226eb4b..32e0b00 100644 (file)
@@ -563,11 +563,11 @@ bool HTMLMediaElement::rendererIsNeeded(const RenderStyle& style)
 #endif
 }
 
-RenderElement* HTMLMediaElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLMediaElement::createRenderer(RenderStyle&)
 {
 #if ENABLE(PLUGIN_PROXY_FOR_VIDEO)
     // Setup the renderer if we already have a proxy widget.
-    RenderEmbeddedObject* mediaRenderer = new (arena) RenderEmbeddedObject(*this);
+    RenderEmbeddedObject* mediaRenderer = new RenderEmbeddedObject(*this);
     if (m_proxyWidget) {
         mediaRenderer->setWidget(m_proxyWidget);
 
@@ -576,7 +576,7 @@ RenderElement* HTMLMediaElement::createRenderer(RenderArena& arena, RenderStyle&
     }
     return mediaRenderer;
 #else
-    return new (arena) RenderMedia(*this);
+    return new RenderMedia(*this);
 #endif
 }
 
index a5af03b..68eeb76 100644 (file)
@@ -439,7 +439,7 @@ private:
     virtual bool supportsFocus() const OVERRIDE;
     virtual bool isMouseFocusable() const OVERRIDE;
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE;
     virtual InsertionNotificationRequest insertedInto(ContainerNode&) OVERRIDE;
     virtual void removedFrom(ContainerNode&) OVERRIDE;
index 4ca3f64..a4d76be 100644 (file)
@@ -57,12 +57,12 @@ PassRefPtr<HTMLMeterElement> HTMLMeterElement::create(const QualifiedName& tagNa
     return meter;
 }
 
-RenderElement* HTMLMeterElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLMeterElement::createRenderer(RenderStyle& style)
 {
     if (hasAuthorShadowRoot() || !document().page()->theme()->supportsMeter(style.appearance()))
         return RenderElement::createFor(*this, style);
 
-    return new (arena) RenderMeter(*this);
+    return new RenderMeter(*this);
 }
 
 bool HTMLMeterElement::childShouldCreateRenderer(const Node* child) const
index 32df35f..63c66fa 100644 (file)
@@ -72,7 +72,7 @@ private:
     virtual bool supportLabels() const OVERRIDE { return true; }
 
     virtual bool recalcWillValidate() const { return false; }
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE;
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
 
index dfbd8f0..60a68d9 100644 (file)
@@ -195,7 +195,7 @@ bool HTMLPlugInImageElement::wouldLoadAsNetscapePlugin(const String& url, const
     return false;
 }
 
-RenderElement* HTMLPlugInImageElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLPlugInImageElement::createRenderer(RenderStyle& style)
 {
     // Once a PlugIn Element creates its renderer, it needs to be told when the Document goes
     // inactive or reactivates so it can clear the renderer before going into the page cache.
@@ -205,7 +205,7 @@ RenderElement* HTMLPlugInImageElement::createRenderer(RenderArena& arena, Render
     }
 
     if (displayState() == DisplayingSnapshot) {
-        RenderSnapshottedPlugIn* renderSnapshottedPlugIn = new (arena) RenderSnapshottedPlugIn(*this);
+        RenderSnapshottedPlugIn* renderSnapshottedPlugIn = new RenderSnapshottedPlugIn(*this);
         renderSnapshottedPlugIn->updateSnapshot(m_snapshotImage);
         return renderSnapshottedPlugIn;
     }
@@ -217,12 +217,12 @@ RenderElement* HTMLPlugInImageElement::createRenderer(RenderArena& arena, Render
         return RenderElement::createFor(*this, style);
 
     if (isImageType()) {
-        RenderImage* image = new (arena) RenderImage(*this);
+        RenderImage* image = new RenderImage(*this);
         image->setImageResource(RenderImageResource::create());
         return image;
     }
 
-    return new (arena) RenderEmbeddedObject(*this);
+    return new RenderEmbeddedObject(*this);
 }
 
 bool HTMLPlugInImageElement::willRecalcStyle(Style::Change)
index 5bce411..69f81c5 100644 (file)
@@ -125,7 +125,7 @@ protected:
     virtual bool isRestartedPlugin() const OVERRIDE { return m_isRestartedPlugin; }
 
 private:
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool willRecalcStyle(Style::Change) OVERRIDE;
 
     virtual void didAddUserAgentShadowRoot(ShadowRoot*) OVERRIDE;
index f9dc9c3..36f7159 100644 (file)
@@ -59,12 +59,12 @@ PassRefPtr<HTMLProgressElement> HTMLProgressElement::create(const QualifiedName&
     return progress.release();
 }
 
-RenderElement* HTMLProgressElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* HTMLProgressElement::createRenderer(RenderStyle& style)
 {
     if (!style.hasAppearance() || hasAuthorShadowRoot())
         return RenderElement::createFor(*this, style);
 
-    return new (arena) RenderProgress(*this);
+    return new RenderProgress(*this);
 }
 
 bool HTMLProgressElement::childShouldCreateRenderer(const Node* child) const
index ea3afbf..aa44a45 100644 (file)
@@ -54,7 +54,7 @@ private:
     virtual bool shouldAppearIndeterminate() const OVERRIDE;
     virtual bool supportLabels() const OVERRIDE { return true; }
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE;
     RenderProgress* renderProgress() const;
 
index 0525749..54b2c18 100644 (file)
@@ -344,11 +344,11 @@ bool HTMLSelectElement::canSelectAll() const
     return !usesMenuList();
 }
 
-RenderElement* HTMLSelectElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLSelectElement::createRenderer(RenderStyle&)
 {
     if (usesMenuList())
-        return new (arena) RenderMenuList(*this);
-    return new (arena) RenderListBox(*this);
+        return new RenderMenuList(*this);
+    return new RenderListBox(*this);
 }
 
 bool HTMLSelectElement::childShouldCreateRenderer(const Node* child) const
index de8d44b..b10bce2 100644 (file)
@@ -132,7 +132,7 @@ private:
     virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE;
 
     virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool appendFormData(FormDataList&, bool) OVERRIDE;
 
     virtual void reset() OVERRIDE;
index a415f02..ff44fab 100644 (file)
@@ -66,9 +66,9 @@ HTMLSummaryElement::HTMLSummaryElement(const QualifiedName& tagName, Document& d
     ASSERT(hasTagName(summaryTag));
 }
 
-RenderElement* HTMLSummaryElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLSummaryElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderBlockFlow(*this);
+    return new RenderBlockFlow(*this);
 }
 
 bool HTMLSummaryElement::childShouldCreateRenderer(const Node* child) const
index 6e088f8..8abac56 100644 (file)
@@ -36,7 +36,7 @@ public:
 private:
     HTMLSummaryElement(const QualifiedName&, Document&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE;
     virtual void defaultEventHandler(Event*);
 
index dd033d9..f7e8164 100644 (file)
@@ -208,9 +208,9 @@ void HTMLTextAreaElement::parseAttribute(const QualifiedName& name, const Atomic
         HTMLTextFormControlElement::parseAttribute(name, value);
 }
 
-RenderElement* HTMLTextAreaElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLTextAreaElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderTextControlMultiLine(*this);
+    return new RenderTextControlMultiLine(*this);
 }
 
 bool HTMLTextAreaElement::appendFormData(FormDataList& encoding, bool)
index 472754d..2cbdef9 100644 (file)
@@ -100,7 +100,7 @@ private:
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE;
     virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool appendFormData(FormDataList&, bool) OVERRIDE;
     virtual void reset() OVERRIDE;
     virtual bool hasCustomFocusLogic() const OVERRIDE;
index ed67c6b..a8295f7 100644 (file)
@@ -69,9 +69,9 @@ bool HTMLVideoElement::rendererIsNeeded(const RenderStyle& style)
 }
 
 #if !ENABLE(PLUGIN_PROXY_FOR_VIDEO)
-RenderElement* HTMLVideoElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* HTMLVideoElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderVideo(*this);
+    return new RenderVideo(*this);
 }
 #endif
 
index 203c164..dbb1feb 100644 (file)
@@ -76,7 +76,7 @@ private:
 
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
 #if !ENABLE(PLUGIN_PROXY_FOR_VIDEO)
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 #endif
     virtual void didAttachRenderers() OVERRIDE;
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
index c88bc63..83a63fb 100644 (file)
@@ -72,7 +72,7 @@ bool HiddenInputType::supportsValidation() const
     return false;
 }
 
-RenderElement* HiddenInputType::createRenderer(RenderArena&, RenderStyle&) const
+RenderElement* HiddenInputType::createRenderer(RenderStyle&) const
 {
     ASSERT_NOT_REACHED();
     return 0;
index aaa5d92..e387a1a 100644 (file)
@@ -45,7 +45,7 @@ private:
     virtual FormControlState saveFormControlState() const OVERRIDE;
     virtual void restoreFormControlState(const FormControlState&) OVERRIDE;
     virtual bool supportsValidation() const OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
     virtual void accessKeyAction(bool sendMouseEvents) OVERRIDE;
     virtual bool rendererIsNeeded() OVERRIDE;
     virtual bool storesValueSeparateFromAttribute() OVERRIDE;
index 8303cd5..89356d7 100644 (file)
@@ -101,9 +101,9 @@ void ImageInputType::handleDOMActivateEvent(Event* event)
     event->setDefaultHandled();
 }
 
-RenderElement* ImageInputType::createRenderer(RenderArena& arena, RenderStyle&) const
+RenderElement* ImageInputType::createRenderer(RenderStyle&) const
 {
-    RenderImage* image = new (arena) RenderImage(element());
+    RenderImage* image = new RenderImage(element());
     image->setImageResource(RenderImageResource::create());
     return image;
 }
index e66ead3..4a6b5ba 100644 (file)
@@ -48,7 +48,7 @@ private:
     virtual bool isFormDataAppendable() const OVERRIDE;
     virtual bool appendFormData(FormDataList&, bool) const OVERRIDE;
     virtual bool supportsValidation() const OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
     virtual void handleDOMActivateEvent(Event*) OVERRIDE;
     virtual void altAttributeChanged() OVERRIDE;
     virtual void srcAttributeChanged() OVERRIDE;
index fbb731a..90078bb 100644 (file)
@@ -468,7 +468,7 @@ PassRefPtr<HTMLFormElement> InputType::formForSubmission() const
     return element().form();
 }
 
-RenderElement* InputType::createRenderer(RenderArena&, RenderStyle& style) const
+RenderElement* InputType::createRenderer(RenderStyle& style) const
 {
     return RenderElement::createFor(element(), style);
 }
index b934549..b8422a8 100644 (file)
@@ -232,7 +232,7 @@ public:
     // Miscellaneous functions
 
     virtual bool rendererIsNeeded();
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const;
+    virtual RenderElement* createRenderer(RenderStyle&) const;
     virtual void addSearchResult();
     virtual void attach();
     virtual void detach();
index 0e81e5c..80b3b65 100644 (file)
@@ -286,9 +286,9 @@ HTMLElement* RangeInputType::sliderThumbElement() const
     return &typedSliderThumbElement();
 }
 
-RenderElement* RangeInputType::createRenderer(RenderArena& arena, RenderStyle&) const
+RenderElement* RangeInputType::createRenderer(RenderStyle&) const
 {
-    return new (arena) RenderSlider(element());
+    return new RenderSlider(element());
 }
 
 Decimal RangeInputType::parseToNumber(const String& src, const Decimal& defaultValue) const
index fcf1ec1..4863e0f 100644 (file)
@@ -54,7 +54,7 @@ private:
     virtual bool isSteppable() const OVERRIDE;
     virtual void handleMouseDownEvent(MouseEvent*) OVERRIDE;
     virtual void handleKeydownEvent(KeyboardEvent*) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
     virtual void createShadowSubtree() OVERRIDE;
     virtual Decimal parseToNumber(const String&, const Decimal&) const OVERRIDE;
     virtual String serialize(const Decimal&) const OVERRIDE;
index 2325ba5..fc8dd76 100644 (file)
@@ -69,9 +69,9 @@ void SearchInputType::addSearchResult()
         toRenderSearchField(renderer)->addSearchResult();
 }
 
-RenderElement* SearchInputType::createRenderer(RenderArena& arena, RenderStyle&) const
+RenderElement* SearchInputType::createRenderer(RenderStyle&) const
 {
-    return new (arena) RenderSearchField(element());
+    return new RenderSearchField(element());
 }
 
 const AtomicString& SearchInputType::formControlType() const
index 51c96aa..9c0a75a 100644 (file)
@@ -49,7 +49,7 @@ private:
     explicit SearchInputType(HTMLInputElement&);
     virtual void attach() OVERRIDE;
     virtual void addSearchResult() OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
     virtual const AtomicString& formControlType() const OVERRIDE;
     virtual bool shouldRespectSpeechAttribute() OVERRIDE;
     virtual bool isSearchField() const OVERRIDE;
index 40e9dd3..b065c68 100644 (file)
@@ -201,9 +201,9 @@ bool TextFieldInputType::shouldSubmitImplicitly(Event* event)
     return (event->type() == eventNames().textInputEvent && event->eventInterface() == TextEventInterfaceType && static_cast<TextEvent*>(event)->data() == "\n") || InputType::shouldSubmitImplicitly(event);
 }
 
-RenderElement* TextFieldInputType::createRenderer(RenderArena& arena, RenderStyle&) const
+RenderElement* TextFieldInputType::createRenderer(RenderStyle&) const
 {
-    return new (arena) RenderTextControlSingleLine(element());
+    return new RenderTextControlSingleLine(element());
 }
 
 bool TextFieldInputType::needsContainer() const
index 25dfc48..93c10ad 100644 (file)
@@ -84,7 +84,7 @@ private:
     virtual void handleBeforeTextInsertedEvent(BeforeTextInsertedEvent*) OVERRIDE;
     virtual void forwardEvent(Event*) OVERRIDE;
     virtual bool shouldSubmitImplicitly(Event*) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
     virtual bool shouldUseInputMethod() const OVERRIDE;
     virtual String sanitizeValue(const String&) const OVERRIDE;
     virtual bool shouldRespectListAttribute() OVERRIDE;
index 8ee11b4..44b5a59 100644 (file)
@@ -45,9 +45,9 @@ DetailsMarkerControl::DetailsMarkerControl(Document& document)
 {
 }
 
-RenderElement* DetailsMarkerControl::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* DetailsMarkerControl::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderDetailsMarker(*this);
+    return new RenderDetailsMarker(*this);
 }
 
 bool DetailsMarkerControl::rendererIsNeeded(const RenderStyle& style)
index 3ef4d03..325b953 100644 (file)
@@ -45,7 +45,7 @@ public:
 private:
     DetailsMarkerControl(Document&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool rendererIsNeeded(const RenderStyle&);
     virtual const AtomicString& shadowPseudoId() const;
 
index 355865f..37ee144 100644 (file)
@@ -337,9 +337,9 @@ void MediaControlTimelineContainerElement::setTimeDisplaysHidden(bool hidden)
     }
 }
 
-RenderElement* MediaControlTimelineContainerElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* MediaControlTimelineContainerElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderMediaControlTimelineContainer(*this);
+    return new RenderMediaControlTimelineContainer(*this);
 }
 
 // ----------------------------
@@ -356,9 +356,9 @@ PassRefPtr<MediaControlVolumeSliderContainerElement> MediaControlVolumeSliderCon
     return element.release();
 }
 
-RenderElement* MediaControlVolumeSliderContainerElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* MediaControlVolumeSliderContainerElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderMediaVolumeSliderContainer(*this);
+    return new RenderMediaVolumeSliderContainer(*this);
 }
 
 void MediaControlVolumeSliderContainerElement::defaultEventHandler(Event* event)
@@ -1210,9 +1210,9 @@ PassRefPtr<MediaControlTextTrackContainerElement> MediaControlTextTrackContainer
     return element.release();
 }
 
-RenderElement* MediaControlTextTrackContainerElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* MediaControlTextTrackContainerElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderTextTrackContainerElement(*this);
+    return new RenderTextTrackContainerElement(*this);
 }
 
 const AtomicString& MediaControlTextTrackContainerElement::textTrackContainerElementShadowPseudoId()
index 3ec0963..5ae86e1 100644 (file)
@@ -112,7 +112,7 @@ private:
     explicit MediaControlTimelineContainerElement(Document&);
     virtual const AtomicString& shadowPseudoId() const OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 };
 
 // ----------------------------
@@ -129,7 +129,7 @@ private:
     virtual const AtomicString& shadowPseudoId() const OVERRIDE;
     virtual void defaultEventHandler(Event*) OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 };
 
 // ----------------------------
@@ -455,7 +455,7 @@ private:
     explicit MediaControlTextTrackContainerElement(Document&);
     virtual const AtomicString& shadowPseudoId() const OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     virtual PassRefPtr<Image> createTextTrackRepresentationImage() OVERRIDE;
     virtual void textTrackRepresentationBoundsChanged(const IntRect&) OVERRIDE;
index 8cd6b23..647ae6a 100644 (file)
@@ -76,9 +76,9 @@ bool MeterInnerElement::rendererIsNeeded(const RenderStyle& style)
     return render && !render->theme()->supportsMeter(render->style()->appearance()) && HTMLDivElement::rendererIsNeeded(style);
 }
 
-RenderElement* MeterInnerElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* MeterInnerElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderMeter(*this);
+    return new RenderMeter(*this);
 }
 
 const AtomicString& MeterValueElement::valuePseudoId() const
index a089175..b504f22 100644 (file)
@@ -59,7 +59,7 @@ private:
     MeterInnerElement(Document&);
 
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 };
 
 inline PassRefPtr<MeterInnerElement> MeterInnerElement::create(Document& document)
index 2717e3c..e3168db 100644 (file)
@@ -61,9 +61,9 @@ ProgressInnerElement::ProgressInnerElement(Document& document)
 {
 }
 
-RenderElement* ProgressInnerElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* ProgressInnerElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderProgress(*this);
+    return new RenderProgress(*this);
 }
 
 bool ProgressInnerElement::rendererIsNeeded(const RenderStyle& style)
index 0a38863..acf07f8 100644 (file)
@@ -58,7 +58,7 @@ public:
 private:
     ProgressInnerElement(Document&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool rendererIsNeeded(const RenderStyle&);
 };
 
index 3738ea6..bdcd9a8 100644 (file)
@@ -205,9 +205,9 @@ void SliderThumbElement::setPositionFromValue()
         renderer()->setNeedsLayout();
 }
 
-RenderElement* SliderThumbElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SliderThumbElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSliderThumb(*this);
+    return new RenderSliderThumb(*this);
 }
 
 bool SliderThumbElement::isDisabledFormControl() const
@@ -444,9 +444,9 @@ PassRefPtr<SliderContainerElement> SliderContainerElement::create(Document& docu
     return adoptRef(new SliderContainerElement(document));
 }
 
-RenderElement* SliderContainerElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SliderContainerElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSliderContainer(*this);
+    return new RenderSliderContainer(*this);
 }
 
 const AtomicString& SliderContainerElement::shadowPseudoId() const
index ef32b9d..29757d2 100644 (file)
@@ -54,7 +54,7 @@ public:
 private:
     SliderThumbElement(Document&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual PassRefPtr<Element> cloneElementWithoutAttributesAndChildren() OVERRIDE;
     virtual bool isDisabledFormControl() const OVERRIDE;
     virtual bool matchesReadOnlyPseudoClass() const OVERRIDE;
@@ -96,7 +96,7 @@ public:
 
 private:
     SliderContainerElement(Document&);
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual const AtomicString& shadowPseudoId() const;
 };
 
index 21e5a01..ad63fd4 100644 (file)
@@ -58,9 +58,9 @@ PassRefPtr<TextControlInnerContainer> TextControlInnerContainer::create(Document
     return adoptRef(new TextControlInnerContainer(document));
 }
     
-RenderElement* TextControlInnerContainer::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* TextControlInnerContainer::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderTextControlInnerContainer(*this);
+    return new RenderTextControlInnerContainer(*this);
 }
 
 TextControlInnerElement::TextControlInnerElement(Document& document)
@@ -112,9 +112,9 @@ void TextControlInnerTextElement::defaultEventHandler(Event* event)
         HTMLDivElement::defaultEventHandler(event);
 }
 
-RenderElement* TextControlInnerTextElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* TextControlInnerTextElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderTextControlInnerBlock(*this);
+    return new RenderTextControlInnerBlock(*this);
 }
 
 PassRefPtr<RenderStyle> TextControlInnerTextElement::customStyleForRenderer()
index f2d1bef..d6d3f73 100644 (file)
@@ -40,7 +40,7 @@ public:
     static PassRefPtr<TextControlInnerContainer> create(Document&);
 protected:
     TextControlInnerContainer(Document&);
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 };
 
 class TextControlInnerElement FINAL : public HTMLDivElement {
@@ -63,7 +63,7 @@ public:
 
 private:
     TextControlInnerTextElement(Document&);
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual PassRefPtr<RenderStyle> customStyleForRenderer() OVERRIDE;
     virtual bool isMouseFocusable() const OVERRIDE { return false; }
 };
index 42ecc04..4617a7e 100644 (file)
@@ -176,9 +176,9 @@ const AtomicString& TextTrackCueBox::textTrackCueBoxShadowPseudoId()
     return trackDisplayBoxShadowPseudoId;
 }
 
-RenderElement* TextTrackCueBox::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* TextTrackCueBox::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderTextTrackCue(*this);
+    return new RenderTextTrackCue(*this);
 }
 
 // ----------------------------
index 09a73a3..f2f3147 100644 (file)
@@ -64,7 +64,7 @@ public:
 protected:
     TextTrackCueBox(Document&, TextTrackCue*);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     TextTrackCue* m_cue;
 };
index 8449278..207289e 100644 (file)
@@ -54,36 +54,36 @@ PassRefPtr<MathMLInlineContainerElement> MathMLInlineContainerElement::create(co
     return adoptRef(new MathMLInlineContainerElement(tagName, document));
 }
 
-RenderElement* MathMLInlineContainerElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* MathMLInlineContainerElement::createRenderer(RenderStyle&)
 {
     if (hasLocalName(mrowTag))
-        return new (arena) RenderMathMLRow(*this);
+        return new RenderMathMLRow(*this);
     if (hasLocalName(msubTag))
-        return new (arena) RenderMathMLScripts(*this);
+        return new RenderMathMLScripts(*this);
     if (hasLocalName(msupTag))
-        return new (arena) RenderMathMLScripts(*this);
+        return new RenderMathMLScripts(*this);
     if (hasLocalName(msubsupTag))
-        return new (arena) RenderMathMLScripts(*this);
+        return new RenderMathMLScripts(*this);
     if (hasLocalName(mmultiscriptsTag))
-        return new (arena) RenderMathMLScripts(*this);
+        return new RenderMathMLScripts(*this);
     if (hasLocalName(moverTag))
-        return new (arena) RenderMathMLUnderOver(*this);
+        return new RenderMathMLUnderOver(*this);
     if (hasLocalName(munderTag))
-        return new (arena) RenderMathMLUnderOver(*this);
+        return new RenderMathMLUnderOver(*this);
     if (hasLocalName(munderoverTag))
-        return new (arena) RenderMathMLUnderOver(*this);
+        return new RenderMathMLUnderOver(*this);
     if (hasLocalName(mfracTag))
-        return new (arena) RenderMathMLFraction(*this);
+        return new RenderMathMLFraction(*this);
     if (hasLocalName(msqrtTag))
-        return new (arena) RenderMathMLSquareRoot(*this);
+        return new RenderMathMLSquareRoot(*this);
     if (hasLocalName(mrootTag))
-        return new (arena) RenderMathMLRoot(*this);
+        return new RenderMathMLRoot(*this);
     if (hasLocalName(mfencedTag))
-        return new (arena) RenderMathMLFenced(*this);
+        return new RenderMathMLFenced(*this);
     if (hasLocalName(mtableTag))
-        return new (arena) RenderMathMLTable(*this);
+        return new RenderMathMLTable(*this);
 
-    return new (arena) RenderMathMLBlock(*this);
+    return new RenderMathMLBlock(*this);
 }
 
 }
index 157de2e..786d7e4 100644 (file)
@@ -40,7 +40,7 @@ protected:
     MathMLInlineContainerElement(const QualifiedName& tagName, Document&);
 
 private:
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 };
     
 }
index 661ace9..2e64b0b 100644 (file)
@@ -51,9 +51,9 @@ Node::InsertionNotificationRequest MathMLMathElement::insertedInto(ContainerNode
     return MathMLInlineContainerElement::insertedInto(insertionPoint);
 }
 
-RenderElement* MathMLMathElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* MathMLMathElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderMathMLMath(*this);
+    return new RenderMathMLMath(*this);
 }
 
 }
index 113b517..c124edb 100644 (file)
@@ -40,7 +40,7 @@ private:
     MathMLMathElement(const QualifiedName& tagName, Document&);
 
     virtual InsertionNotificationRequest insertedInto(ContainerNode&) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 };
     
 }
index cc973eb..e23f1eb 100644 (file)
@@ -63,14 +63,14 @@ void MathMLTextElement::childrenChanged(const ChildChange& change)
         renderer()->updateFromElement();
 }
 
-RenderElement* MathMLTextElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* MathMLTextElement::createRenderer(RenderStyle& style)
 {
     if (hasLocalName(MathMLNames::moTag))
-        return new (arena) RenderMathMLOperator(*this);
+        return new RenderMathMLOperator(*this);
     if (hasLocalName(MathMLNames::mspaceTag))
-        return new (arena) RenderMathMLSpace(*this);
+        return new RenderMathMLSpace(*this);
 
-    return MathMLElement::createRenderer(arena, style);
+    return MathMLElement::createRenderer(style);
 }
 
 }
index 90e2bc9..946baac 100644 (file)
@@ -40,7 +40,7 @@ public:
 private:
     MathMLTextElement(const QualifiedName& tagName, Document&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual void childrenChanged(const ChildChange&) OVERRIDE;
 };
     
index 10e1a94..87ae952 100644 (file)
@@ -3217,7 +3217,7 @@ void FrameView::updateScrollCorner()
 
     if (cornerStyle) {
         if (!m_scrollCorner)
-            m_scrollCorner = new (renderer->renderArena()) RenderScrollbarPart(renderer->document());
+            m_scrollCorner = new RenderScrollbarPart(renderer->document());
         m_scrollCorner->setStyle(cornerStyle.release());
         invalidateScrollCorner(cornerRect);
     } else if (m_scrollCorner) {
index 63ee232..1a3f7ba 100644 (file)
@@ -75,7 +75,7 @@ RenderNamedFlowThread& FlowThreadController::ensureRenderFlowThreadWithName(cons
     // Sanity check for the absence of a named flow in the "CREATED" state with the same name.
     ASSERT(!namedFlows->flowByName(name));
 
-    RenderNamedFlowThread* flowRenderer = new (m_view->renderArena()) RenderNamedFlowThread(m_view->document(), namedFlows->ensureFlowWithName(name));
+    RenderNamedFlowThread* flowRenderer = new RenderNamedFlowThread(m_view->document(), namedFlows->ensureFlowWithName(name));
     flowRenderer->setStyle(RenderFlowThread::createFlowThreadStyle(m_view->style()));
     m_renderNamedFlowThreadList->add(flowRenderer);
 
index 862f58c..177cd3a 100644 (file)
@@ -497,7 +497,7 @@ RenderBlock* RenderBlock::clone() const
         cloneBlock = createAnonymousBlock();
         cloneBlock->setChildrenInline(childrenInline());
     } else {
-        auto cloneRenderer = element()->createRenderer(renderArena(), *style());
+        auto cloneRenderer = element()->createRenderer(*style());
         cloneBlock = toRenderBlock(cloneRenderer);
         cloneBlock->setStyle(style());
 
@@ -1693,9 +1693,9 @@ RenderBoxModelObject* RenderBlock::createReplacementRunIn(RenderBoxModelObject*
 
     RenderBoxModelObject* newRunIn = 0;
     if (!runIn->isRenderBlockFlow())
-        newRunIn = new (renderArena()) RenderBlockFlow(*runIn->element());
+        newRunIn = new RenderBlockFlow(*runIn->element());
     else
-        newRunIn = new (renderArena()) RenderInline(*runIn->element());
+        newRunIn = new RenderInline(*runIn->element());
 
     runIn->element()->setRenderer(newRunIn);
     newRunIn->setStyle(runIn->style());
@@ -5022,9 +5022,9 @@ void RenderBlock::updateFirstLetterStyle(RenderObject* firstLetterBlock, RenderO
         // The first-letter renderer needs to be replaced. Create a new renderer of the right type.
         RenderBoxModelObject* newFirstLetter;
         if (pseudoStyle->display() == INLINE)
-            newFirstLetter = new (renderArena()) RenderInline(document());
+            newFirstLetter = new RenderInline(document());
         else
-            newFirstLetter = new (renderArena()) RenderBlockFlow(document());
+            newFirstLetter = new RenderBlockFlow(document());
         newFirstLetter->setStyle(pseudoStyle);
 
         // Move the first letter into the new renderer.
@@ -5059,9 +5059,9 @@ void RenderBlock::createFirstLetterRenderer(RenderObject* firstLetterBlock, Rend
     RenderStyle* pseudoStyle = styleForFirstLetter(firstLetterBlock, firstLetterContainer);
     RenderBoxModelObject* firstLetter = 0;
     if (pseudoStyle->display() == INLINE)
-        firstLetter = new (renderArena()) RenderInline(document());
+        firstLetter = new RenderInline(document());
     else
-        firstLetter = new (renderArena()) RenderBlockFlow(document());
+        firstLetter = new RenderBlockFlow(document());
     firstLetter->setStyle(pseudoStyle);
     firstLetterContainer->addChild(firstLetter, currentTextChild);
 
@@ -5097,9 +5097,9 @@ void RenderBlock::createFirstLetterRenderer(RenderObject* firstLetterBlock, Rend
         // This text fragment might be empty.
         RenderTextFragment* remainingText;
         if (currentTextChild->textNode())
-            remainingText = new (renderArena()) RenderTextFragment(*currentTextChild->textNode(), oldText, length, oldText.length() - length);
+            remainingText = new RenderTextFragment(*currentTextChild->textNode(), oldText, length, oldText.length() - length);
         else
-            remainingText = new (renderArena()) RenderTextFragment(document(), oldText, length, oldText.length() - length);
+            remainingText = new RenderTextFragment(document(), oldText, length, oldText.length() - length);
 
         if (remainingText->textNode())
             remainingText->textNode()->setRenderer(remainingText);
@@ -5112,9 +5112,9 @@ void RenderBlock::createFirstLetterRenderer(RenderObject* firstLetterBlock, Rend
         // construct text fragment for the first letter
         RenderTextFragment* letter;
         if (remainingText->textNode())
-            letter = new (renderArena()) RenderTextFragment(*remainingText->textNode(), oldText, 0, length);
+            letter = new RenderTextFragment(*remainingText->textNode(), oldText, 0, length);
         else
-            letter = new (renderArena()) RenderTextFragment(document(), oldText, 0, length);
+            letter = new RenderTextFragment(document(), oldText, 0, length);
 
         firstLetter->addChild(letter);
 
@@ -5977,10 +5977,10 @@ RenderBlock* RenderBlock::createAnonymousWithParentRendererAndDisplay(const Rend
     EDisplay newDisplay;
     RenderBlock* newBox = 0;
     if (display == FLEX || display == INLINE_FLEX) {
-        newBox = new (parent->renderArena()) RenderFlexibleBox(parent->document());
+        newBox = new RenderFlexibleBox(parent->document());
         newDisplay = FLEX;
     } else {
-        newBox = new (parent->renderArena()) RenderBlockFlow(parent->document());
+        newBox = new RenderBlockFlow(parent->document());
         newDisplay = BLOCK;
     }
 
@@ -5994,7 +5994,7 @@ RenderBlock* RenderBlock::createAnonymousColumnsWithParentRenderer(const RenderO
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(parent->style(), BLOCK);
     newStyle->inheritColumnPropertiesFrom(parent->style());
 
-    RenderBlock* newBox = new (parent->renderArena()) RenderBlockFlow(parent->document());
+    RenderBlock* newBox = new RenderBlockFlow(parent->document());
     newBox->setStyle(newStyle.release());
     return newBox;
 }
@@ -6004,7 +6004,7 @@ RenderBlock* RenderBlock::createAnonymousColumnSpanWithParentRenderer(const Rend
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(parent->style(), BLOCK);
     newStyle->setColumnSpan(ColumnSpanAll);
 
-    RenderBlock* newBox = new (parent->renderArena()) RenderBlockFlow(parent->document());
+    RenderBlock* newBox = new RenderBlockFlow(parent->document());
     newBox->setStyle(newStyle.release());
     return newBox;
 }
index 460de2d..a688ed3 100644 (file)
@@ -155,7 +155,7 @@ void RenderButton::setText(const String& str)
         if (m_buttonText)
             m_buttonText->setText(str.impl());
         else {
-            m_buttonText = new (renderArena()) RenderTextFragment(document(), str);
+            m_buttonText = new RenderTextFragment(document(), str);
             addChild(m_buttonText);
         }
     }
index 5917b1d..e33cd7b 100644 (file)
@@ -118,14 +118,13 @@ RenderElement::~RenderElement()
 RenderElement* RenderElement::createFor(Element& element, RenderStyle& style)
 {
     Document& document = element.document();
-    RenderArena& arena = *document.renderArena();
 
     // Minimal support for content properties replacing an entire element.
     // Works only if we have exactly one piece of content and it's a URL.
     // Otherwise acts as if we didn't support this feature.
     const ContentData* contentData = style.contentData();
     if (contentData && !contentData->next() && contentData->isImage() && !element.isPseudoElement()) {
-        RenderImage* image = new (arena) RenderImage(element);
+        RenderImage* image = new RenderImage(element);
         // RenderImageResourceStyleImage requires a style being present on the image but we don't want to
         // trigger a style change now as the node is not fully attached. Moving this code to style change
         // doesn't make sense as it should be run once at renderer creation.
@@ -141,54 +140,54 @@ RenderElement* RenderElement::createFor(Element& element, RenderStyle& style)
 
     if (element.hasTagName(HTMLNames::rubyTag)) {
         if (style.display() == INLINE)
-            return new (arena) RenderRubyAsInline(element);
+            return new RenderRubyAsInline(element);
         if (style.display() == BLOCK)
-            return new (arena) RenderRubyAsBlock(element);
+            return new RenderRubyAsBlock(element);
     }
     // treat <rt> as ruby text ONLY if it still has its default treatment of block
     if (element.hasTagName(HTMLNames::rtTag) && style.display() == BLOCK)
-        return new (arena) RenderRubyText(element);
+        return new RenderRubyText(element);
     if (document.cssRegionsEnabled() && style.isDisplayRegionType() && !style.regionThread().isEmpty())
-        return new (arena) RenderRegion(element, nullptr);
+        return new RenderRegion(element, nullptr);
     switch (style.display()) {
     case NONE:
         return 0;
     case INLINE:
-        return new (arena) RenderInline(element);
+        return new RenderInline(element);
     case BLOCK:
     case INLINE_BLOCK:
     case RUN_IN:
     case COMPACT:
         if ((!style.hasAutoColumnCount() || !style.hasAutoColumnWidth()) && document.regionBasedColumnsEnabled())
-            return new (arena) RenderMultiColumnBlock(element);
-        return new (arena) RenderBlockFlow(element);
+            return new RenderMultiColumnBlock(element);
+        return new RenderBlockFlow(element);
     case LIST_ITEM:
-        return new (arena) RenderListItem(element);
+        return new RenderListItem(element);
     case TABLE:
     case INLINE_TABLE:
-        return new (arena) RenderTable(element);
+        return new RenderTable(element);
     case TABLE_ROW_GROUP:
     case TABLE_HEADER_GROUP:
     case TABLE_FOOTER_GROUP:
-        return new (arena) RenderTableSection(element);
+        return new RenderTableSection(element);
     case TABLE_ROW:
-        return new (arena) RenderTableRow(element);
+        return new RenderTableRow(element);
     case TABLE_COLUMN_GROUP:
     case TABLE_COLUMN:
-        return new (arena) RenderTableCol(element);
+        return new RenderTableCol(element);
     case TABLE_CELL:
-        return new (arena) RenderTableCell(element);
+        return new RenderTableCell(element);
     case TABLE_CAPTION:
-        return new (arena) RenderTableCaption(element);
+        return new RenderTableCaption(element);
     case BOX:
     case INLINE_BOX:
-        return new (arena) RenderDeprecatedFlexibleBox(element);
+        return new RenderDeprecatedFlexibleBox(element);
     case FLEX:
     case INLINE_FLEX:
-        return new (arena) RenderFlexibleBox(element);
+        return new RenderFlexibleBox(element);
     case GRID:
     case INLINE_GRID:
-        return new (arena) RenderGrid(element);
+        return new RenderGrid(element);
     }
     ASSERT_NOT_REACHED();
     return nullptr;
index bd7674f..b70fcd2 100644 (file)
@@ -119,7 +119,7 @@ RenderEmbeddedObject::~RenderEmbeddedObject()
 
 RenderEmbeddedObject* RenderEmbeddedObject::createForApplet(HTMLAppletElement& applet)
 {
-    RenderEmbeddedObject* renderer = new (*applet.document().renderArena()) RenderEmbeddedObject(applet);
+    RenderEmbeddedObject* renderer = new RenderEmbeddedObject(applet);
     renderer->setInline(true);
     return renderer;
 }
index dcddc31..296e9bb 100644 (file)
@@ -109,7 +109,7 @@ static PassRefPtr<RenderStyle> createFullScreenStyle()
 
 RenderFullScreen* RenderFullScreen::wrapRenderer(RenderObject* object, RenderElement* parent, Document& document)
 {
-    RenderFullScreen* fullscreenRenderer = new (*document.renderArena()) RenderFullScreen(document);
+    RenderFullScreen* fullscreenRenderer = new RenderFullScreen(document);
     fullscreenRenderer->setStyle(createFullScreenStyle());
     if (parent && !parent->isChildAllowed(*fullscreenRenderer, *fullscreenRenderer->style())) {
         fullscreenRenderer->destroy();
@@ -175,7 +175,7 @@ void RenderFullScreen::createPlaceholder(PassRefPtr<RenderStyle> style, const La
         style->setHeight(Length(frameRect.height(), Fixed));
 
     if (!m_placeholder) {
-        m_placeholder = new (renderArena()) RenderFullScreenPlaceholder(*this);
+        m_placeholder = new RenderFullScreenPlaceholder(*this);
         m_placeholder->setStyle(style);
         if (parent()) {
             parent()->addChild(m_placeholder, this);
index 41b5ee1..346158f 100644 (file)
@@ -319,7 +319,7 @@ void RenderInline::addChildIgnoringContinuation(RenderObject* newChild, RenderOb
         if (auto positionedAncestor = inFlowPositionedInlineAncestor(this))
             newStyle->setPosition(positionedAncestor->style()->position());
 
-        RenderBlock* newBox = new (renderArena()) RenderBlockFlow(document());
+        RenderBlock* newBox = new RenderBlockFlow(document());
         newBox->setStyle(newStyle.release());
         RenderBoxModelObject* oldContinuation = continuation();
         setContinuation(newBox);
@@ -335,7 +335,7 @@ void RenderInline::addChildIgnoringContinuation(RenderObject* newChild, RenderOb
 
 RenderInline* RenderInline::clone() const
 {
-    RenderInline* cloneInline = new (renderArena()) RenderInline(*element());
+    RenderInline* cloneInline = new RenderInline(*element());
     cloneInline->setStyle(style());
     cloneInline->setFlowThreadState(flowThreadState());
     return cloneInline;
index 15f2a34..85fd144 100644 (file)
@@ -6277,7 +6277,7 @@ void RenderLayer::updateScrollCornerStyle()
     RefPtr<RenderStyle> corner = renderer().hasOverflowClip() ? actualRenderer->getUncachedPseudoStyle(PseudoStyleRequest(SCROLLBAR_CORNER), actualRenderer->style()) : PassRefPtr<RenderStyle>(0);
     if (corner) {
         if (!m_scrollCorner) {
-            m_scrollCorner = new (renderer().renderArena()) RenderScrollbarPart(renderer().document());
+            m_scrollCorner = new RenderScrollbarPart(renderer().document());
             m_scrollCorner->setParent(&renderer());
         }
         m_scrollCorner->setStyle(corner.release());
@@ -6293,7 +6293,7 @@ void RenderLayer::updateResizerStyle()
     RefPtr<RenderStyle> resizer = renderer().hasOverflowClip() ? actualRenderer->getUncachedPseudoStyle(PseudoStyleRequest(RESIZER), actualRenderer->style()) : PassRefPtr<RenderStyle>(0);
     if (resizer) {
         if (!m_resizer) {
-            m_resizer = new (renderer().renderArena()) RenderScrollbarPart(renderer().document());
+            m_resizer = new RenderScrollbarPart(renderer().document());
             m_resizer->setParent(&renderer());
         }
         m_resizer->setStyle(resizer.release());
@@ -6311,7 +6311,7 @@ RenderLayer* RenderLayer::reflectionLayer() const
 void RenderLayer::createReflection()
 {
     ASSERT(!m_reflection);
-    m_reflection = new (renderer().renderArena()) RenderReplica(renderer().document());
+    m_reflection = new RenderReplica(renderer().document());
     m_reflection->setParent(&renderer()); // We create a 1-way connection.
 }
 
index 56cf8fc..130ad6d 100644 (file)
@@ -62,7 +62,7 @@ void RenderListItem::styleDidChange(StyleDifference diff, const RenderStyle* old
         // up (e.g., in some deeply nested line box). See CSS3 spec.
         newStyle->inheritFrom(style()); 
         if (!m_marker)
-            m_marker = new (renderArena()) RenderListMarker(*this);
+            m_marker = new RenderListMarker(*this);
         m_marker->setStyle(newStyle.release());
     } else if (m_marker) {
         m_marker->destroy();
index f5db828..a5d45bd 100644 (file)
@@ -241,7 +241,7 @@ void RenderMenuList::setText(const String& s)
     if (m_buttonText)
         m_buttonText->setText(textToUse.impl(), true);
     else {
-        m_buttonText = new (renderArena()) RenderText(document(), textToUse);
+        m_buttonText = new RenderText(document(), textToUse);
         addChild(m_buttonText);
     }
     adjustInnerStyle();
index 0bc2d0e..6d84509 100644 (file)
@@ -139,7 +139,7 @@ bool RenderMultiColumnBlock::relayoutForPagination(bool, LayoutUnit, LayoutState
 void RenderMultiColumnBlock::addChild(RenderObject* newChild, RenderObject* beforeChild)
 {
     if (!m_flowThread) {
-        m_flowThread = new (renderArena()) RenderMultiColumnFlowThread(document());
+        m_flowThread = new RenderMultiColumnFlowThread(document());
         m_flowThread->setStyle(RenderStyle::createAnonymousStyleWithDisplay(style(), BLOCK));
         RenderBlock::addChild(m_flowThread);
     }
index 4a5f873..9062a49 100644 (file)
@@ -86,7 +86,7 @@ void RenderMultiColumnFlowThread::autoGenerateRegionsToBlockOffset(LayoutUnit /*
     invalidateRegions();
 
     RenderMultiColumnBlock* parentBlock = toRenderMultiColumnBlock(parent());
-    firstSet = new (renderArena()) RenderMultiColumnSet(*this);
+    firstSet = new RenderMultiColumnSet(*this);
     firstSet->setStyle(RenderStyle::createAnonymousStyleWithDisplay(parentBlock->style(), BLOCK));
     parentBlock->RenderBlock::addChild(firstSet);
 
index 2c66345..4e4da19 100644 (file)
@@ -75,8 +75,6 @@ namespace WebCore {
 using namespace HTMLNames;
 
 #ifndef NDEBUG
-static void* baseOfRenderObjectBeingDeleted;
-
 RenderObject::SetLayoutNeededForbiddenScope::SetLayoutNeededForbiddenScope(RenderObject* renderObject, bool isForbidden)
     : m_renderObject(renderObject)
     , m_preexistingForbidden(m_renderObject->isSetNeedsLayoutForbidden())
@@ -101,19 +99,6 @@ struct SameSizeAsRenderObject {
 
 COMPILE_ASSERT(sizeof(RenderObject) == sizeof(SameSizeAsRenderObject), RenderObject_should_stay_small);
 
-void* RenderObject::operator new(size_t sz, RenderArena& renderArena)
-{
-    return renderArena.allocate(sz);
-}
-
-void RenderObject::operator delete(void* ptr, size_t sz)
-{
-    ASSERT(baseOfRenderObjectBeingDeleted == ptr);
-
-    // Stash size where destroy can find it.
-    *(size_t *)ptr = sz;
-}
-
 DEFINE_DEBUG_ONLY_GLOBAL(WTF::RefCountedLeakCounter, renderObjectCounter, ("RenderObject"));
 
 RenderObject::RenderObject(Node& node)
@@ -2119,22 +2104,7 @@ void RenderObject::destroyAndCleanupAnonymousWrappers()
 void RenderObject::destroy()
 {
     willBeDestroyed();
-    arenaDelete(renderArena(), this);
-}
-
-void RenderObject::arenaDelete(RenderArena& arena, void* base)
-{
-#ifndef NDEBUG
-    void* savedBase = baseOfRenderObjectBeingDeleted;
-    baseOfRenderObjectBeingDeleted = base;
-#endif
     delete this;
-#ifndef NDEBUG
-    baseOfRenderObjectBeingDeleted = savedBase;
-#endif
-
-    // Recover the size left there for us by operator delete and free the memory.
-    arena.free(*(size_t*)base, base);
 }
 
 VisiblePosition RenderObject::positionForPoint(const LayoutPoint&)
index 6dd918f..8b1a3b6 100644 (file)
@@ -286,17 +286,6 @@ public:
     void showRenderTreeAndMark(const RenderObject* markedObject1 = 0, const char* markedLabel1 = 0, const RenderObject* markedObject2 = 0, const char* markedLabel2 = 0, int depth = 0) const;
 #endif
 
-    // Overloaded new operator.  Derived classes must override operator new
-    // in order to allocate out of the RenderArena.
-    void* operator new(size_t, RenderArena&);
-
-    // Overridden to prevent the normal delete from being called.
-    void operator delete(void*, size_t);
-
-private:
-    // The normal operator new is disallowed on all render objects.
-    void* operator new(size_t) throw();
-
 public:
     RenderArena& renderArena() const { return *document().renderArena(); }
 
@@ -917,7 +906,6 @@ protected:
 
     void clearLayoutRootIfNeeded() const;
     virtual void willBeDestroyed();
-    void arenaDelete(RenderArena&, void* objectBase);
 
     virtual bool canBeReplacedWithInlineRunIn() const;
 
index 4a29b0c..b7292eb 100644 (file)
@@ -86,7 +86,7 @@ static inline RenderBlock* rubyAfterBlock(const RenderElement* ruby)
 static RenderBlock* createAnonymousRubyInlineBlock(RenderObject& ruby)
 {
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(ruby.style(), INLINE_BLOCK);
-    RenderBlock* newBlock = new (ruby.renderArena()) RenderBlockFlow(ruby.document());
+    RenderBlock* newBlock = new RenderBlockFlow(ruby.document());
     newBlock->setStyle(newStyle.release());
     return newBlock;
 }
index ceb2f7c..d8ffc99 100644 (file)
@@ -200,7 +200,7 @@ void RenderRubyRun::removeChild(RenderObject& child)
 
 RenderRubyBase* RenderRubyRun::createRubyBase() const
 {
-    RenderRubyBase* renderer = new (renderArena()) RenderRubyBase(document());
+    RenderRubyBase* renderer = new RenderRubyBase(document());
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(style(), BLOCK);
     newStyle->setTextAlign(CENTER); // FIXME: use WEBKIT_CENTER?
     renderer->setStyle(newStyle.release());
@@ -210,7 +210,7 @@ RenderRubyBase* RenderRubyRun::createRubyBase() const
 RenderRubyRun* RenderRubyRun::staticCreateRubyRun(const RenderObject* parentRuby)
 {
     ASSERT(parentRuby && parentRuby->isRuby());
-    RenderRubyRun* rr = new (parentRuby->renderArena()) RenderRubyRun(parentRuby->document());
+    RenderRubyRun* rr = new RenderRubyRun(parentRuby->document());
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(parentRuby->style(), INLINE_BLOCK);
     rr->setStyle(newStyle.release());
     return rr;
index 0b323e2..138d489 100644 (file)
@@ -254,7 +254,7 @@ void RenderScrollbar::updateScrollbarPart(ScrollbarPart partType, bool destroy)
     
     RenderScrollbarPart* partRenderer = m_parts.get(partType);
     if (!partRenderer && needRenderer) {
-        partRenderer = new (owningRenderer()->renderArena()) RenderScrollbarPart(owningRenderer()->document(), this, partType);
+        partRenderer = new RenderScrollbarPart(owningRenderer()->document(), this, partType);
         m_parts.set(partType, partRenderer);
     } else if (partRenderer && !needRenderer) {
         m_parts.remove(partType);
index 5433507..4062480 100644 (file)
@@ -1432,7 +1432,7 @@ bool RenderTable::nodeAtPoint(const HitTestRequest& request, HitTestResult& resu
 RenderTable* RenderTable::createAnonymousWithParentRenderer(const RenderObject* parent)
 {
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(parent->style(), TABLE);
-    RenderTable* newTable = new (parent->renderArena()) RenderTable(parent->document());
+    RenderTable* newTable = new RenderTable(parent->document());
     newTable->setStyle(newStyle.release());
     return newTable;
 }
index 3e871c3..53f57ff 100644 (file)
@@ -1377,7 +1377,7 @@ void RenderTableCell::scrollbarsChanged(bool horizontalScrollbarChanged, bool ve
 
 RenderTableCell* RenderTableCell::createAnonymousWithParentRenderer(const RenderObject* parent)
 {
-    RenderTableCell* newCell = new (parent->renderArena()) RenderTableCell(parent->document());
+    RenderTableCell* newCell = new RenderTableCell(parent->document());
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(parent->style(), TABLE_CELL);
     newCell->setStyle(newStyle.release());
     return newCell;
index 46a955a..22e5b5a 100644 (file)
@@ -261,7 +261,7 @@ void RenderTableRow::imageChanged(WrappedImagePtr, const IntRect*)
 
 RenderTableRow* RenderTableRow::createAnonymousWithParentRenderer(const RenderObject* parent)
 {
-    RenderTableRow* newRow = new (parent->renderArena()) RenderTableRow(parent->document());
+    RenderTableRow* newRow = new RenderTableRow(parent->document());
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(parent->style(), TABLE_ROW);
     newRow->setStyle(newStyle.release());
     return newRow;
index d149a11..5ae7875 100644 (file)
@@ -1438,7 +1438,7 @@ CollapsedBorderValue& RenderTableSection::cachedCollapsedBorder(const RenderTabl
 RenderTableSection* RenderTableSection::createAnonymousWithParentRenderer(const RenderObject* parent)
 {
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(parent->style(), TABLE_ROW_GROUP);
-    RenderTableSection* newSection = new (parent->renderArena()) RenderTableSection(parent->document());
+    RenderTableSection* newSection = new RenderTableSection(parent->document());
     newSection->setStyle(newStyle.release());
     return newSection;
 }
index 58f91ac..77457a7 100644 (file)
@@ -63,7 +63,7 @@ bool RenderMathMLBlock::isChildAllowed(const RenderObject& child, const RenderSt
 RenderMathMLBlock* RenderMathMLBlock::createAnonymousMathMLBlock(EDisplay display)
 {
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(style(), display);
-    RenderMathMLBlock* newBlock = new (renderArena()) RenderMathMLBlock(document());
+    RenderMathMLBlock* newBlock = new RenderMathMLBlock(document());
     newBlock->setStyle(newStyle.release());
     return newBlock;
 }
index 08d0de3..b1ed9f4 100644 (file)
@@ -89,7 +89,7 @@ RenderMathMLOperator* RenderMathMLFenced::createMathMLOperator(UChar uChar, Rend
     newStyle->setMarginEnd(Length((operatorType == RenderMathMLOperator::Fence ? gFenceMarginEms : gSeparatorMarginEndEms) * style()->fontSize(), Fixed));
     if (operatorType == RenderMathMLOperator::Fence)
         newStyle->setMarginStart(Length(gFenceMarginEms * style()->fontSize(), Fixed));
-    RenderMathMLOperator* newOperator = new (renderArena()) RenderMathMLOperator(*element(), uChar);
+    RenderMathMLOperator* newOperator = new RenderMathMLOperator(*element(), uChar);
     newOperator->setOperatorType(operatorType);
     newOperator->setStyle(newStyle.release());
     return newOperator;
index 0d086bb..c038039 100644 (file)
@@ -176,7 +176,7 @@ void RenderMathMLOperator::updateFromElement()
     newStyle->inheritFrom(style());
     newStyle->setDisplay(FLEX);
 
-    RenderMathMLBlock* container = new (renderArena()) RenderMathMLBlock(*element());
+    RenderMathMLBlock* container = new RenderMathMLBlock(*element());
     // This container doesn't offer any useful information to accessibility.
     container->setIgnoreInAccessibilityTree(true);
     container->setStyle(newStyle.release());
@@ -184,9 +184,9 @@ void RenderMathMLOperator::updateFromElement()
     addChild(container);
     RenderText* text;
     if (m_operator)
-        text = new (renderArena()) RenderText(document(), String(&m_operator, 1));
+        text = new RenderText(document(), String(&m_operator, 1));
     else
-        text = new (renderArena()) RenderText(document(), element()->textContent().replace(hyphenMinus, minusSign).impl());
+        text = new RenderText(document(), element()->textContent().replace(hyphenMinus, minusSign).impl());
 
     // If we can't figure out the text, leave it blank.
     if (text)
index 16a8820..0369d3e 100644 (file)
@@ -50,7 +50,7 @@ RenderMathMLRow::RenderMathMLRow(Document& document)
 RenderMathMLRow* RenderMathMLRow::createAnonymousWithParentRenderer(const RenderObject* parent)
 {
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(parent->style(), FLEX);
-    RenderMathMLRow* newMRow = new (parent->renderArena()) RenderMathMLRow(parent->document());
+    RenderMathMLRow* newMRow = new RenderMathMLRow(parent->document());
     newMRow->setStyle(newStyle.release());
     return newMRow;
 }
index c730864..884ba24 100644 (file)
@@ -368,7 +368,7 @@ int RenderMathMLScripts::firstLineBoxBaseline() const
 RenderMathMLScriptsWrapper* RenderMathMLScriptsWrapper::createAnonymousWrapper(RenderMathMLScripts* renderObject, WrapperType type)
 {
     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(renderObject->style(), FLEX);
-    RenderMathMLScriptsWrapper* newBlock = new (renderObject->renderArena()) RenderMathMLScriptsWrapper(renderObject->document(), type);
+    RenderMathMLScriptsWrapper* newBlock = new RenderMathMLScriptsWrapper(renderObject->document(), type);
     newBlock->setStyle(newStyle.release());
     return newBlock;
 }
index 6f64699..4e79f62 100644 (file)
@@ -49,7 +49,7 @@ std::unique_ptr<ContentData> ContentData::clone() const
 
 RenderObject* ImageContentData::createRenderer(Document& document, RenderStyle& pseudoStyle) const
 {
-    RenderImage* image = new (*document.renderArena()) RenderImage(document);
+    RenderImage* image = new RenderImage(document);
     image->setPseudoStyle(&pseudoStyle);
     if (m_image)
         image->setImageResource(RenderImageResourceStyleImage::create(m_image.get()));
@@ -60,17 +60,17 @@ RenderObject* ImageContentData::createRenderer(Document& document, RenderStyle&
 
 RenderObject* TextContentData::createRenderer(Document& document, RenderStyle&) const
 {
-    return new (*document.renderArena()) RenderTextFragment(document, m_text);
+    return new RenderTextFragment(document, m_text);
 }
 
 RenderObject* CounterContentData::createRenderer(Document& document, RenderStyle&) const
 {
-    return new (*document.renderArena()) RenderCounter(document, *m_counter);
+    return new RenderCounter(document, *m_counter);
 }
 
 RenderObject* QuoteContentData::createRenderer(Document& document, RenderStyle&) const
 {
-    return new (*document.renderArena()) RenderQuote(document, m_quote);
+    return new RenderQuote(document, m_quote);
 }
 
 } // namespace WebCore
index 5ce9f3a..0f3cd59 100644 (file)
@@ -232,7 +232,7 @@ static void createRendererIfNeeded(Element& element, PassRefPtr<RenderStyle> res
         nextRenderer = nextSiblingRenderer(element, renderingParentNode);
     }
 
-    RenderElement* newRenderer = element.createRenderer(*document.renderArena(), *style);
+    RenderElement* newRenderer = element.createRenderer(*style);
     if (!newRenderer)
         return;
     if (!parentRenderer->isChildAllowed(*newRenderer, *style)) {
@@ -366,12 +366,11 @@ static void createTextRendererIfNeeded(Text& textNode)
     if (!renderingParentNode->childShouldCreateRenderer(&textNode))
         return;
 
-    Document& document = textNode.document();
     RefPtr<RenderStyle> style = parentRenderer->style();
 
     if (!textRendererIsNeeded(textNode, *parentRenderer, *style))
         return;
-    RenderText* newRenderer = textNode.createTextRenderer(*document.renderArena(), *style);
+    RenderText* newRenderer = textNode.createTextRenderer(*style);
     if (!newRenderer)
         return;
     if (!parentRenderer->isChildAllowed(*newRenderer, *style)) {
index f2be030..eddcb1d 100644 (file)
@@ -139,12 +139,12 @@ void SVGAElement::svgAttributeChanged(const QualifiedName& attrName)
     }
 }
 
-RenderElement* SVGAElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGAElement::createRenderer(RenderStyle&)
 {
     if (parentNode() && parentNode()->isSVGElement() && toSVGElement(parentNode())->isTextContent())
-        return new (arena) RenderSVGInline(*this);
+        return new RenderSVGInline(*this);
 
-    return new (arena) RenderSVGTransformableContainer(*this);
+    return new RenderSVGTransformableContainer(*this);
 }
 
 void SVGAElement::defaultEventHandler(Event* event)
index 3960481..428a174 100644 (file)
@@ -48,7 +48,7 @@ private:
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual void defaultEventHandler(Event*);
     
index c29a46e..ff5bb10 100644 (file)
@@ -82,9 +82,9 @@ bool SVGAltGlyphElement::childShouldCreateRenderer(const Node* child) const
     return false;
 }
 
-RenderElement* SVGAltGlyphElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGAltGlyphElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGTSpan(*this);
+    return new RenderSVGTSpan(*this);
 }
 
 bool SVGAltGlyphElement::hasValidGlyphElements(Vector<String>& glyphNames) const
index 33764f4..882837e 100644 (file)
@@ -46,7 +46,7 @@ public:
 private:
     SVGAltGlyphElement(const QualifiedName&, Document&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool childShouldCreateRenderer(const Node*) const;
 
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGAltGlyphElement)
index 9d5441a..c7df765 100644 (file)
@@ -139,9 +139,9 @@ bool SVGCircleElement::selfHasRelativeLengths() const
         || r().isRelative();
 }
 
-RenderElement* SVGCircleElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGCircleElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGEllipse(*this);
+    return new RenderSVGEllipse(*this);
 }
 
 }
index 955f00b..0eb95eb 100644 (file)
@@ -46,7 +46,7 @@ private:
 
     virtual bool selfHasRelativeLengths() const;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGCircleElement)
         DECLARE_ANIMATED_LENGTH(Cx, cx)
index f8f9504..0e7a07c 100644 (file)
@@ -114,9 +114,9 @@ void SVGClipPathElement::childrenChanged(const ChildChange& change)
         object->setNeedsLayout();
 }
 
-RenderElement* SVGClipPathElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGClipPathElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGResourceClipper(*this);
+    return new RenderSVGResourceClipper(*this);
 }
 
 }
index 6815b3d..7b363e6 100644 (file)
@@ -48,7 +48,7 @@ private:
     virtual void svgAttributeChanged(const QualifiedName&);
     virtual void childrenChanged(const ChildChange&) OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGClipPathElement)
         DECLARE_ANIMATED_ENUMERATION(ClipPathUnits, clipPathUnits, SVGUnitTypes::SVGUnitType)
index 875135f..0346b26 100644 (file)
@@ -53,9 +53,9 @@ bool SVGDefsElement::isValid() const
     return SVGTests::isValid();
 }
 
-RenderElement* SVGDefsElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGDefsElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGHiddenContainer(*this);
+    return new RenderSVGHiddenContainer(*this);
 }
 
 }
index e5c690f..6747dd8 100644 (file)
@@ -38,7 +38,7 @@ private:
 
     virtual bool isValid() const;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGDefsElement)
         DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
index edd4454..71298ed 100644 (file)
@@ -145,9 +145,9 @@ bool SVGEllipseElement::selfHasRelativeLengths() const
         || ry().isRelative();
 }
 
-RenderElement* SVGEllipseElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGEllipseElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGEllipse(*this);
+    return new RenderSVGEllipse(*this);
 }
 
 }
index ca04df4..aed659c 100644 (file)
@@ -46,7 +46,7 @@ private:
 
     virtual bool selfHasRelativeLengths() const;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGEllipseElement)
         DECLARE_ANIMATED_LENGTH(Cx, cx)
index 3dd0ba5..18d8515 100644 (file)
@@ -188,9 +188,9 @@ void SVGFilterElement::childrenChanged(const ChildChange& change)
         object->setNeedsLayout();
 }
 
-RenderElement* SVGFilterElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGFilterElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGResourceFilter(*this);
+    return new RenderSVGResourceFilter(*this);
 }
 
 bool SVGFilterElement::childShouldCreateRenderer(const Node* child) const
index 2f00c77..beba2e2 100644 (file)
@@ -54,7 +54,7 @@ private:
     virtual void svgAttributeChanged(const QualifiedName&);
     virtual void childrenChanged(const ChildChange&) OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE;
 
     virtual bool selfHasRelativeLengths() const;
index a86bb46..4f168c7 100644 (file)
@@ -142,9 +142,9 @@ void SVGFilterPrimitiveStandardAttributes::setStandardAttributes(FilterEffect* f
         filterEffect->setHasHeight(true);
 }
 
-RenderElement* SVGFilterPrimitiveStandardAttributes::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGFilterPrimitiveStandardAttributes::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGResourceFilterPrimitive(*this);
+    return new RenderSVGResourceFilterPrimitive(*this);
 }
 
 bool SVGFilterPrimitiveStandardAttributes::rendererIsNeeded(const RenderStyle& style)
index 6d54005..7e99c17 100644 (file)
@@ -68,7 +68,7 @@ protected:
 private:
     virtual bool isFilterEffect() const OVERRIDE { return true; }
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
     virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE { return false; }
 
index 895b920..9b4faf9 100644 (file)
@@ -126,9 +126,9 @@ void SVGForeignObjectElement::svgAttributeChanged(const QualifiedName& attrName)
         RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer);
 }
 
-RenderElement* SVGForeignObjectElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGForeignObjectElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGForeignObject(*this);
+    return new RenderSVGForeignObject(*this);
 }
 
 bool SVGForeignObjectElement::childShouldCreateRenderer(const Node* child) const
index 1b29e3e..5773c40 100644 (file)
@@ -45,7 +45,7 @@ private:
 
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
     virtual bool childShouldCreateRenderer(const Node*) const;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual bool selfHasRelativeLengths() const;
 
index 54e4064..2e4f901 100644 (file)
@@ -89,16 +89,16 @@ void SVGGElement::svgAttributeChanged(const QualifiedName& attrName)
         RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer);
 }
 
-RenderElement* SVGGElement::createRenderer(RenderArena& arena, RenderStyle& style)
+RenderElement* SVGGElement::createRenderer(RenderStyle& style)
 {
     // SVG 1.1 testsuite explicitely uses constructs like <g display="none"><linearGradient>
     // We still have to create renderers for the <g> & <linearGradient> element, though the
     // subtree may be hidden - we only want the resource renderers to exist so they can be
     // referenced from somewhere else.
     if (style.display() == NONE)
-        return new (arena) RenderSVGHiddenContainer(*this);
+        return new RenderSVGHiddenContainer(*this);
 
-    return new (arena) RenderSVGTransformableContainer(*this);
+    return new RenderSVGTransformableContainer(*this);
 }
 
 bool SVGGElement::rendererIsNeeded(const RenderStyle&)
index d5d8929..9789472 100644 (file)
@@ -36,7 +36,7 @@ public:
 private:
     SVGGElement(const QualifiedName&, Document&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     virtual bool isValid() const OVERRIDE { return SVGTests::isValid(); }
     virtual bool supportsFocus() const OVERRIDE { return true; }
index b4ce348..366fd4f 100644 (file)
@@ -162,10 +162,10 @@ FloatRect SVGGraphicsElement::getBBox(StyleUpdateStrategy styleUpdateStrategy)
     return SVGTransformable::getBBox(this, styleUpdateStrategy);
 }
 
-RenderElement* SVGGraphicsElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGGraphicsElement::createRenderer(RenderStyle&)
 {
     // By default, any subclass is expected to do path-based drawing
-    return new (arena) RenderSVGPath(*this);
+    return new RenderSVGPath(*this);
 }
 
 void SVGGraphicsElement::toClipPath(Path& path)
index 298c224..f1cd532 100644 (file)
@@ -49,7 +49,7 @@ public:
 
     // "base class" methods for all the elements which render as paths
     virtual void toClipPath(Path&);
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
 protected:
     SVGGraphicsElement(const QualifiedName&, Document&);
index 8c20b21..d2be222 100644 (file)
@@ -182,9 +182,9 @@ bool SVGImageElement::selfHasRelativeLengths() const
         || height().isRelative();
 }
 
-RenderElement* SVGImageElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGImageElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGImage(*this);
+    return new RenderSVGImage(*this);
 }
 
 bool SVGImageElement::haveLoadedRequiredResources()
index 7c61e32..5a43ab2 100644 (file)
@@ -53,7 +53,7 @@ private:
     virtual void didAttachRenderers() OVERRIDE;
     virtual InsertionNotificationRequest insertedInto(ContainerNode&) OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual const AtomicString& imageSourceURL() const OVERRIDE;
     virtual void addSubresourceAttributeURLs(ListHashSet<URL>&) const;
index b54cd4d..3c3859f 100644 (file)
@@ -118,9 +118,9 @@ void SVGLinearGradientElement::svgAttributeChanged(const QualifiedName& attrName
         object->setNeedsLayout();
 }
 
-RenderElement* SVGLinearGradientElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGLinearGradientElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGResourceLinearGradient(*this);
+    return new RenderSVGResourceLinearGradient(*this);
 }
 
 bool SVGLinearGradientElement::collectGradientAttributes(LinearGradientAttributes& attributes)
index a532e41..e2dd1ff 100644 (file)
@@ -43,7 +43,7 @@ private:
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual bool selfHasRelativeLengths() const;
 
index 9c6b376..c6140d2 100644 (file)
@@ -214,9 +214,9 @@ void SVGMarkerElement::setOrientToAngle(const SVGAngle& angle)
     svgAttributeChanged(orientAnglePropertyInfo()->attributeName);
 }
 
-RenderElement* SVGMarkerElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGMarkerElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGResourceMarker(*this);
+    return new RenderSVGResourceMarker(*this);
 }
 
 bool SVGMarkerElement::selfHasRelativeLengths() const
index 61d62be..c8a976b 100644 (file)
@@ -130,7 +130,7 @@ private:
     virtual void svgAttributeChanged(const QualifiedName&);
     virtual void childrenChanged(const ChildChange&) OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool rendererIsNeeded(const RenderStyle&) { return true; }
 
     virtual bool selfHasRelativeLengths() const;
index 90eb6d3..c3ab80c 100644 (file)
@@ -157,9 +157,9 @@ void SVGMaskElement::childrenChanged(const ChildChange& change)
         object->setNeedsLayout();
 }
 
-RenderElement* SVGMaskElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGMaskElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGResourceMasker(*this);
+    return new RenderSVGResourceMasker(*this);
 }
 
 bool SVGMaskElement::selfHasRelativeLengths() const
index 7e0eb5d..2a1c3fe 100644 (file)
@@ -49,7 +49,7 @@ private:
     virtual void svgAttributeChanged(const QualifiedName&);
     virtual void childrenChanged(const ChildChange&) OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual bool selfHasRelativeLengths() const;
 
index 393c9b3..e1d067f 100644 (file)
@@ -405,10 +405,10 @@ FloatRect SVGPathElement::getBBox(StyleUpdateStrategy styleUpdateStrategy)
     return renderer->path().boundingRect();
 }
 
-RenderElement* SVGPathElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGPathElement::createRenderer(RenderStyle&)
 {
     // By default, any subclass is expected to do path-based drawing
-    return new (arena) RenderSVGPath(*this);
+    return new RenderSVGPath(*this);
 }
 
 }
index e60cceb..19d6fea 100644 (file)
@@ -118,7 +118,7 @@ private:
         DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
     END_DECLARE_ANIMATED_PROPERTIES
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     virtual Node::InsertionNotificationRequest insertedInto(ContainerNode&) OVERRIDE;
     virtual void removedFrom(ContainerNode&) OVERRIDE;
index 3f40a97..e5a63b9 100644 (file)
@@ -182,9 +182,9 @@ void SVGPatternElement::childrenChanged(const ChildChange& change)
         object->setNeedsLayout();
 }
 
-RenderElement* SVGPatternElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGPatternElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGResourcePattern(*this);
+    return new RenderSVGResourcePattern(*this);
 }
 
 void SVGPatternElement::collectPatternAttributes(PatternAttributes& attributes) const
index 3959280..f0470bc 100644 (file)
@@ -63,7 +63,7 @@ private:
     virtual void svgAttributeChanged(const QualifiedName&);
     virtual void childrenChanged(const ChildChange&) OVERRIDE;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual bool selfHasRelativeLengths() const;
 
index 2b6a345..f6b4d3e 100644 (file)
@@ -130,9 +130,9 @@ void SVGRadialGradientElement::svgAttributeChanged(const QualifiedName& attrName
         object->setNeedsLayout();
 }
 
-RenderElement* SVGRadialGradientElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGRadialGradientElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGResourceRadialGradient(*this);
+    return new RenderSVGResourceRadialGradient(*this);
 }
 
 bool SVGRadialGradientElement::collectGradientAttributes(RadialGradientAttributes& attributes)
index 27f7c91..a49014f 100644 (file)
@@ -43,7 +43,7 @@ private:
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual bool selfHasRelativeLengths() const;
 
index 45701f5..f4ce485 100644 (file)
@@ -160,9 +160,9 @@ bool SVGRectElement::selfHasRelativeLengths() const
         || ry().isRelative();
 }
 
-RenderElement* SVGRectElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGRectElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGRect(*this);
+    return new RenderSVGRect(*this);
 }
 
 }
index 2a108c9..4e06cf7 100644 (file)
@@ -47,7 +47,7 @@ private:
 
     virtual bool selfHasRelativeLengths() const;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
+    virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
 
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGRectElement)
         DECLARE_ANIMATED_LENGTH(X, x)
index 1974d07..89ca006 100644 (file)
@@ -480,12 +480,12 @@ bool SVGSVGElement::rendererIsNeeded(const RenderStyle& style)
     return StyledElement::rendererIsNeeded(style);
 }
 
-RenderElement* SVGSVGElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGSVGElement::createRenderer(RenderStyle&)
 {
     if (isOutermostSVGSVGElement())
-        return new (arena) RenderSVGRoot(*this);
+        return new RenderSVGRoot(*this);
 
-    return new (arena) RenderSVGViewportContainer(*this);
+    return new RenderSVGViewportContainer(*this);
 }
 
 Node::InsertionNotificationRequest SVGSVGElement::insertedInto(ContainerNode& rootParent)
index d6fe7ad..792dbcb 100644 (file)
@@ -142,7 +142,7 @@ private:
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
 
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual InsertionNotificationRequest insertedInto(ContainerNode&) OVERRIDE;
     virtual void removedFrom(ContainerNode&) OVERRIDE;
index 73e8ace..c4aa9ab 100644 (file)
@@ -100,9 +100,9 @@ void SVGStopElement::svgAttributeChanged(const QualifiedName& attrName)
     ASSERT_NOT_REACHED();
 }
 
-RenderElement* SVGStopElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGStopElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGGradientStop(*this);
+    return new RenderSVGGradientStop(*this);
 }
 
 bool SVGStopElement::rendererIsNeeded(const RenderStyle&)
index ecc4829..867b4cc 100644 (file)
@@ -42,7 +42,7 @@ private:
 
     virtual bool isGradientStop() const OVERRIDE { return true; }
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
 
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGStopElement)
index 753cea0..19ff800 100644 (file)
@@ -63,9 +63,9 @@ bool SVGSwitchElement::childShouldCreateRenderer(const Node* child) const
     return false;
 }
 
-RenderElement* SVGSwitchElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGSwitchElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGTransformableContainer(*this);
+    return new RenderSVGTransformableContainer(*this);
 }
 
 }
index 1bf0d25..7bdcd89 100644 (file)
@@ -41,7 +41,7 @@ private:
 
     virtual bool childShouldCreateRenderer(const Node*) const;
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGSwitchElement)
         DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
index 5f0da8f..ded9e85 100644 (file)
@@ -101,9 +101,9 @@ bool SVGSymbolElement::selfHasRelativeLengths() const
     return hasAttribute(SVGNames::viewBoxAttr);
 }
 
-RenderElement* SVGSymbolElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGSymbolElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGHiddenContainer(*this);
+    return new RenderSVGHiddenContainer(*this);
 }
 
 }
index 75ea0f6..903ebcc 100644 (file)
@@ -45,7 +45,7 @@ private:
     bool isSupportedAttribute(const QualifiedName&);
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
 
     virtual bool selfHasRelativeLengths() const;
 
index b4e64bc..2a52c93 100644 (file)
@@ -220,9 +220,9 @@ void SVGTRefElement::svgAttributeChanged(const QualifiedName& attrName)
     ASSERT_NOT_REACHED();
 }
 
-RenderElement* SVGTRefElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGTRefElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGInline(*this);
+    return new RenderSVGInline(*this);
 }
 
 bool SVGTRefElement::childShouldCreateRenderer(const Node* child) const
index f00cdd2..02fa18c 100644 (file)
@@ -44,7 +44,7 @@ private:
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool childShouldCreateRenderer(const Node*) const;
     virtual bool rendererIsNeeded(const RenderStyle&);
 
index 2691b0f..ac7c8b3 100644 (file)
@@ -40,9 +40,9 @@ PassRefPtr<SVGTSpanElement> SVGTSpanElement::create(const QualifiedName& tagName
     return adoptRef(new SVGTSpanElement(tagName, document));
 }
 
-RenderElement* SVGTSpanElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGTSpanElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGTSpan(*this);
+    return new RenderSVGTSpan(*this);
 }
 
 bool SVGTSpanElement::childShouldCreateRenderer(const Node* child) const
index b168e0d..ac15d32 100644 (file)
@@ -33,7 +33,7 @@ public:
 private:
     SVGTSpanElement(const QualifiedName&, Document&);
             
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool childShouldCreateRenderer(const Node*) const;
     virtual bool rendererIsNeeded(const RenderStyle&);
 };
index 949e021..f3171b0 100644 (file)
@@ -68,9 +68,9 @@ AffineTransform SVGTextElement::animatedLocalTransform() const
     return matrix;
 }
 
-RenderElement* SVGTextElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGTextElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGText(*this);
+    return new RenderSVGText(*this);
 }
 
 bool SVGTextElement::childShouldCreateRenderer(const Node* child) const
index fc1d16e..2f1235f 100644 (file)
@@ -37,7 +37,7 @@ private:
 
     virtual bool supportsFocus() const OVERRIDE { return true; }
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool childShouldCreateRenderer(const Node*) const;
 };
 
index a3c8d1f..00b4e48 100644 (file)
@@ -127,9 +127,9 @@ void SVGTextPathElement::svgAttributeChanged(const QualifiedName& attrName)
         RenderSVGResource::markForLayoutAndParentResourceInvalidation(object);
 }
 
-RenderElement* SVGTextPathElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGTextPathElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGTextPath(*this);
+    return new RenderSVGTextPath(*this);
 }
 
 bool SVGTextPathElement::childShouldCreateRenderer(const Node* child) const
index a683b9d..9dde45b 100644 (file)
@@ -127,7 +127,7 @@ private:
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual bool childShouldCreateRenderer(const Node*) const;
     virtual bool rendererIsNeeded(const RenderStyle&);
 
index c7115dd..47b317b 100644 (file)
@@ -524,9 +524,9 @@ void SVGUseElement::buildShadowAndInstanceTree(SVGElement* target)
 #endif
 }
 
-RenderElement* SVGUseElement::createRenderer(RenderArena& arena, RenderStyle&)
+RenderElement* SVGUseElement::createRenderer(RenderStyle&)
 {
-    return new (arena) RenderSVGTransformableContainer(*this);
+    return new RenderSVGTransformableContainer(*this);
 }
 
 static bool isDirectReference(const Node* node)
index faad493..3f1418b 100644 (file)
@@ -69,7 +69,7 @@ private:
 
     virtual bool willRecalcStyle(Style::Change);
 
-    virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
+    virtual RenderElement* createRenderer(RenderStyle&);
     virtual void toClipPath(Path&);
 
     void clearResourceReferences();