Changeset 135788 in webkit


Ignore:
Timestamp:
Nov 26, 2012, 4:41:39 PM (13 years ago)
Author:
akling@apple.com
Message:

RenderStyle: Move 'list-style-image' to rare inherited data.
<http://webkit.org/b/103300>

Reviewed by Antti Koivisto.

list-style-image is not nearly common enough to merit a spot in StyleInheritedData.
Move it to StyleRareInheritedData.

134kB progression on Membuster3.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::diff):
(WebCore::RenderStyle::listStyleImage):
(WebCore::RenderStyle::setListStyleImage):

  • rendering/style/StyleInheritedData.cpp:

(WebCore::StyleInheritedData::StyleInheritedData):
(WebCore::StyleInheritedData::operator==):

  • rendering/style/StyleInheritedData.h:

(StyleInheritedData):

  • rendering/style/StyleRareInheritedData.h:
  • rendering/style/StyleRareInheritedData.cpp:

(SameSizeAsStyleRareInheritedData):
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):

Location:
trunk/Source/WebCore
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r135786 r135788  
     12012-11-26  Andreas Kling  <akling@apple.com>
     2
     3        RenderStyle: Move 'list-style-image' to rare inherited data.
     4        <http://webkit.org/b/103300>
     5
     6        Reviewed by Antti Koivisto.
     7
     8        list-style-image is not nearly common enough to merit a spot in StyleInheritedData.
     9        Move it to StyleRareInheritedData.
     10
     11        134kB progression on Membuster3.
     12
     13        * rendering/style/RenderStyle.cpp:
     14        (WebCore::RenderStyle::diff):
     15        (WebCore::RenderStyle::listStyleImage):
     16        (WebCore::RenderStyle::setListStyleImage):
     17        * rendering/style/StyleInheritedData.cpp:
     18        (WebCore::StyleInheritedData::StyleInheritedData):
     19        (WebCore::StyleInheritedData::operator==):
     20        * rendering/style/StyleInheritedData.h:
     21        (StyleInheritedData):
     22        * rendering/style/StyleRareInheritedData.h:
     23        * rendering/style/StyleRareInheritedData.cpp:
     24        (SameSizeAsStyleRareInheritedData):
     25        (WebCore::StyleRareInheritedData::StyleRareInheritedData):
     26        (WebCore::StyleRareInheritedData::operator==):
     27
    1282012-11-26  James Simonsen  <simonjam@chromium.org>
    229
  • trunk/Source/WebCore/rendering/style/RenderStyle.cpp

    r135603 r135788  
    492492#endif
    493493            || rareInheritedData->m_lineSnap != other->rareInheritedData->m_lineSnap
    494             || rareInheritedData->m_lineAlign != other->rareInheritedData->m_lineAlign)
     494            || rareInheritedData->m_lineAlign != other->rareInheritedData->m_lineAlign
     495            || rareInheritedData->listStyleImage != other->rareInheritedData->listStyleImage)
    495496            return StyleDifferenceLayout;
    496497
     
    508509
    509510    if (inherited->line_height != other->inherited->line_height
    510         || inherited->list_style_image != other->inherited->list_style_image
    511511        || inherited->font != other->inherited->font
    512512        || inherited->horizontal_border_spacing != other->inherited->horizontal_border_spacing
     
    967967}
    968968
    969 StyleImage* RenderStyle::listStyleImage() const { return inherited->list_style_image.get(); }
     969StyleImage* RenderStyle::listStyleImage() const { return rareInheritedData->listStyleImage.get(); }
    970970void RenderStyle::setListStyleImage(PassRefPtr<StyleImage> v)
    971971{
    972     if (inherited->list_style_image != v)
    973         inherited.access()->list_style_image = v;
     972    if (rareInheritedData->listStyleImage != v)
     973        rareInheritedData.access()->listStyleImage = v;
    974974}
    975975
  • trunk/Source/WebCore/rendering/style/StyleInheritedData.cpp

    r134242 r135788  
    2424
    2525#include "RenderStyle.h"
    26 #include "StyleImage.h"
    2726
    2827namespace WebCore {
     
    3231    , vertical_border_spacing(RenderStyle::initialVerticalBorderSpacing())
    3332    , line_height(RenderStyle::initialLineHeight())
    34     , list_style_image(RenderStyle::initialListStyleImage())
    3533    , color(RenderStyle::initialColor())
    3634    , visitedLinkColor(RenderStyle::initialColor())
     
    4745    , vertical_border_spacing(o.vertical_border_spacing)
    4846    , line_height(o.line_height)
    49     , list_style_image(o.list_style_image)
    5047    , font(o.font)
    5148    , color(o.color)
     
    5754{
    5855    return line_height == o.line_height
    59         && StyleImage::imagesEquivalent(list_style_image.get(), o.list_style_image.get())
    6056        && font == o.font
    6157        && color == o.color
  • trunk/Source/WebCore/rendering/style/StyleInheritedData.h

    r134242 r135788  
    3535namespace WebCore {
    3636
    37 class StyleImage;
    38 
    3937class StyleInheritedData : public RefCounted<StyleInheritedData> {
    4038public:
     
    5654    Length line_height;
    5755
    58     RefPtr<StyleImage> list_style_image;
    59 
    6056    Font font;
    6157    Color color;
  • trunk/Source/WebCore/rendering/style/StyleRareInheritedData.cpp

    r135603 r135788  
    2828#include "RenderStyleConstants.h"
    2929#include "ShadowData.h"
     30#include "StyleImage.h"
    3031#include "WebCoreMemoryInstrumentation.h"
    3132#include <wtf/MemoryObjectInfo.h>
     
    3435
    3536struct SameSizeAsStyleRareInheritedData : public RefCounted<SameSizeAsStyleRareInheritedData> {
     37    void* styleImage;
    3638    Color firstColor;
    3739    float firstFloat;
     
    6365
    6466StyleRareInheritedData::StyleRareInheritedData()
    65     : textStrokeWidth(RenderStyle::initialTextStrokeWidth())
     67    : listStyleImage(RenderStyle::initialListStyleImage())
     68    , textStrokeWidth(RenderStyle::initialTextStrokeWidth())
    6669    , indent(RenderStyle::initialTextIndent())
    6770    , m_effectiveZoom(RenderStyle::initialZoom())
     
    119122StyleRareInheritedData::StyleRareInheritedData(const StyleRareInheritedData& o)
    120123    : RefCounted<StyleRareInheritedData>()
     124    , listStyleImage(o.listStyleImage)
    121125    , textStrokeColor(o.textStrokeColor)
    122126    , textStrokeWidth(o.textStrokeWidth)
     
    261265        && m_variables == o.m_variables
    262266#endif
    263         && m_lineAlign == o.m_lineAlign;
     267        && m_lineAlign == o.m_lineAlign
     268        && StyleImage::imagesEquivalent(listStyleImage.get(), o.listStyleImage.get());
    264269}
    265270
  • trunk/Source/WebCore/rendering/style/StyleRareInheritedData.h

    r134242 r135788  
    4242class QuotesData;
    4343class ShadowData;
     44class StyleImage;
    4445
    4546// This struct is for rarely used inherited CSS3, CSS2, and WebKit-specific properties.
     
    6061
    6162    void reportMemoryUsage(MemoryObjectInfo*) const;
     63
     64    RefPtr<StyleImage> listStyleImage;
    6265
    6366    Color textStrokeColor;
Note: See TracChangeset for help on using the changeset viewer.