2012-11-01  Pavel Podivilov  <podivilov@google.com>

        [chromium] Unreviewed, remove several tests that started to pass from TestExpectations.

        * platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133137 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Pack immutable StylePropertySets harder on 64-bit.
<http://webkit.org/b/100753>
<rdar://problem/12599155>

Reviewed by Antti Koivisto.

Move away from using CSSProperty as internal storage for immutable StylePropertySets.
Instead use two arrays, one for property metadata (ID, shorthand ID, !important, ...)
and one for the CSSValue pointers. This saves 4 bytes per property on 64-bit.

Old object layout:

    Ref count                   (4 bytes)
    Metadata                    (4 bytes)
    CSSProperty [N]             (16 bytes each)

New object layout:

    Ref count                   (4 bytes)
    Metadata                    (4 bytes)
    CSSValue* [N]               (8 bytes each)
    StylePropertyMetadata [N]   (4 bytes each)

901kB progress on Membuster3 (22% overall reduction in StylePropertySet memory.)

The CSSProperty class sticks around for now, it's still used in mutable StylePropertySets
and by the StylePropertySet constructors.

* css/CSSProperty.cpp:
* css/CSSProperty.h:
(CSSProperty):
(WebCore::CSSProperty::CSSProperty):
(WebCore::CSSProperty::id):
(WebCore::CSSProperty::shorthandID):
(WebCore::CSSProperty::isImportant):
(WebCore::CSSProperty::metadata):

    Break the bitfield from CSSProperty out into a StylePropertyMetadata class (actually a union.)

* css/StylePropertySet.cpp:
(WebCore::immutableStylePropertySetSize):

    Updated size calculation for immutable StylePropertySets, 1/4 smaller!

(WebCore::ImmutableStylePropertySet::ImmutableStylePropertySet):
(WebCore::ImmutableStylePropertySet::~ImmutableStylePropertySet):
(WebCore::MutableStylePropertySet::MutableStylePropertySet):
(WebCore::StylePropertySet::mergeAndOverrideOnConflict):
(WebCore::StylePropertySet::reportMemoryUsage):
(WebCore::StylePropertySet::PropertyReference::cssName):
(WebCore::StylePropertySet::PropertyReference::cssText):
* css/StylePropertySet.h:
(WebCore::StylePropertySet::PropertyReference::id):
(WebCore::StylePropertySet::PropertyReference::shorthandID):
(WebCore::StylePropertySet::PropertyReference::isImportant):
(WebCore::StylePropertySet::PropertyReference::isInherited):
(WebCore::StylePropertySet::PropertyReference::isImplicit):
(PropertyReference):
(WebCore::StylePropertySet::PropertyReference::value):
(WebCore::StylePropertySet::PropertyReference::toCSSProperty):
(WebCore::StylePropertySet::PropertyReference::propertyMetadata):
(WebCore::StylePropertySet::PropertyReference::propertyValue):
(StylePropertySet):
(ImmutableStylePropertySet):
(WebCore::StylePropertySet::immutableValueArray):
(WebCore::StylePropertySet::immutableMetadataArray):

    Refactored internal storage for StylePropertySet.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133138 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Unreviewed, two fast/images/exif-orientation-* tests now pass.

* platform/chromium-win/platform/chromium/virtual/deferred/fast/images/exif-orientation-css-expected.png: Added.
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133139 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Gardening after r133056
https://bugs.webkit.org/show_bug.cgi?id=100929

Unreviewed gardening.

Newly added compositing/tiling tests are failing on EFL port due to missing AC support.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-01

* platform/efl/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133140 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Memory instrumentation: report memory occupied by ResourceRequest instead of its base ResourceRequestBase
https://bugs.webkit.org/show_bug.cgi?id=100497

Reviewed by Alexander Pavlov.

Source/WebCore:

Added memory reporting method to chromium implementation of ResourceRequest.

* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::reportMemoryUsageBase): Renamed reportMemoryUsage
on ResourceRequestBase to reportMemoryUsageBase and made it protected. I'd
rather make ResourceRequestBase::reportMemoryUsage virtual and override it
in the descendant but ResourceRequestBase doesn't have any virtual methods
and shouldn't be used directly(ResourceRequest should be used instead).
* platform/network/ResourceRequestBase.h:
(ResourceRequestBase):
* platform/network/chromium/ResourceRequest.cpp:
(WebCore::ResourceRequest::reportMemoryUsage):
(WebCore):
* platform/network/chromium/ResourceRequest.h:
(ResourceRequest):

Source/WebKit/chromium:

Updated MemoryInstrumentationTest.ImageObserver so that it doesn't fail
when instrumentation of objects referenced by CachedImage changes.

* tests/MemoryInstrumentationTest.cpp:

Source/WTF:

* wtf/MemoryInstrumentation.h:
(WTF::MemoryClassInfo::addPrivateBuffer): do not report memory usage for empty buffer.


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