[Webkit-unassigned] [Bug 88579] New: RenderLayer is way too big!

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jun 7 14:43:40 PDT 2012


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

           Summary: RenderLayer is way too big!
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Layout and Rendering
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: jchaffraix at webkit.org
                CC: tony at chromium.org, simon.fraser at apple.com,
                    ojan at chromium.org, jamesr at chromium.org,
                    inferno at chromium.org


While looking at some bad padding on RenderLayer, this is the size of RenderLayer:

struct SameSizeAsRenderLayer : public ScrollableArea {
    virtual ~SameSizeAsRenderLayer() { } // Allocate vtable pointer.
    void* m_pointers[17];
#if USE(ACCELERATED_COMPOSITING)
    void* m_backing;
#endif

    LayoutRect m_rects[3];
    LayoutSize m_layoutSizes[2];
    LayoutPoint m_layoutPoint;
    IntPoint m_point;
    LayoutUnit m_units[2];
    IntSize m_sizes[2];

    // We don't include our bitfield here to ensure that they are folded into the ones from ScrollableArea.
    // However it seems like some platforms don't fold the bitfield so you need another unsigned (as we have
    // 35 bits at the moment in RenderLayer - including the one from ScrollableArea).
};

COMPILE_ASSERT(sizeof(RenderLayer) == sizeof(SameSizeAsRenderLayer), RenderLayer_should_avoid_increasing);

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



More information about the webkit-unassigned mailing list