[BlackBerry] Updating BB Cookie database to use WAL
https://bugs.webkit.org/show_bug.cgi?id=102237

Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-11-14
Reviewed by Rob Buis.

The cookie database is accessed by one process only and should be updated to
use the WAL journal mode for better I/O performance.

PR 236553

cookieCollection.db-wal is created after the conversion to WAL.
Tested cookie persistence by logging on to random sites and restarting the browser and
check if it automatically logs in.
Also tested using Opera's cookie persistence test.

* platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:
(WebCore::CookieDatabaseBackingStore::invokeOpen):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134615 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Use mispelled-marker offsets relative to the element
https://bugs.webkit.org/show_bug.cgi?id=102236

Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-11-14
Reviewed by Rob Buis.

DocumentMarker offsets are calculated relative to a node. This is causing
problems for contenteditable which can have numerous nodes. Creating a Range around a word
and calculating its location and length gives us the correct override in this case for starting
and ending points to pass to IMF.

Internally reviewed by Mike Fenton.

* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134616 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Mark files that need rebaselines as failing.
https://bugs.webkit.org/show_bug.cgi?id=102087

* platform/chromium/TestExpectations: Added expectations.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134617 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update DOMException name: NotFoundError
https://bugs.webkit.org/show_bug.cgi?id=102137

Reviewed by Ojan Vafai.

Source/WebCore:

Patch 8 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

* dom/DOMCoreException.cpp:

LayoutTests:

Updated tests and expectations.

* fast/dom/Document/replaceChild-null-oldChild-expected.txt:
* fast/dom/Document/script-tests/replaceChild-null-oldChild.js:
* fast/dom/NamedNodeMap-setNamedItem-crash-expected.txt:
* fast/dom/Range/range-intersectsNode-expected.txt:
* fast/dom/incompatible-operations-expected.txt:
* fast/dom/incompatible-operations.html:
* fast/dom/setter-type-enforcement-expected.txt:
* fast/dom/timer-clear-interval-in-handler-and-generate-error-expected.txt:
* fast/events/remove-target-with-shadow-in-drag-expected.txt:
* fast/files/workers/worker-read-blob-sync-expected.txt:
* fast/files/workers/worker-read-file-sync-expected.txt:
* fast/inspector-support/uncaught-dom8-exception-expected.txt:
* fast/js/dot-node-base-exception-expected.txt:
* fast/js/script-tests/dot-node-base-exception.js:
* fast/mutation/observe-exceptions-expected.txt:
* platform/chromium-linux/fast/media/mq-js-media-except-01-expected.png:
* platform/chromium-win/fast/media/mq-js-media-except-01-expected.txt:
* platform/chromium/fast/dom/NamedNodeMap-setNamedItem-crash-expected.txt:
* platform/chromium/fast/dom/timer-clear-interval-in-handler-and-generate-error-expected.txt:
* platform/chromium/fast/events/remove-target-with-shadow-in-drag-expected.txt:
* platform/chromium/fast/files/workers/worker-read-blob-sync-expected.txt:
* platform/chromium/fast/inspector-support/uncaught-dom8-exception-expected.txt:
* platform/chromium/fast/media/mq-js-media-except-01-expected.txt:
* platform/efl/fast/media/mq-js-media-except-01-expected.txt:
* platform/gtk/fast/events/remove-target-with-shadow-in-drag-expected.txt:
* platform/gtk/fast/media/mq-js-media-except-01-expected.txt:
* platform/mac/fast/media/mq-js-media-except-01-expected.txt:
* platform/qt/fast/media/mq-js-media-except-01-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134618 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Call to enclosingFilterLayer() in RenderObject::containerForRepaint() is expensive
https://bugs.webkit.org/show_bug.cgi?id=101846

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-11-14
Reviewed by Simon Fraser.

If software-rendered CSS Filters have not been used in the document, avoid doing the second
tree walk in RenderObject::containerForRepaint, which determines the RenderObject's
enclosing filter layer.

No new tests. We now avoid a filters related code path for a performance improvement when
we're not using filters.

* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
* page/FrameView.h:
(FrameView):
(WebCore::FrameView::setHasSoftwareFilters):
(WebCore::FrameView::hasSoftwareFilters):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateOrRemoveFilterEffectRenderer):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::containerForRepaint):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134619 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Use a node image if there is no drag image set for Drag&Drop
https://bugs.webkit.org/show_bug.cgi?id=102124

Reviewed by Simon Hausmann.

Use the nodeImage provided by the frame if there is no dragImage in
the clipboard for the current drag&drop operation.

* platform/qt/ClipboardQt.cpp:
(WebCore::ClipboardQt::createDragImage):

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

Updating pixel tests expectations after r134613

* LayoutTests/platform/chromium/TestExpectations:
* platform/chromium-mac-snowleopard/svg/dom/SVGLengthList-appendItem-expected.png:
* platform/chromium-mac-snowleopard/svg/dom/SVGLengthList-basics-expected.png:
* platform/chromium-mac-snowleopard/svg/dom/SVGLengthList-getItem-expected.png:
* platform/chromium-mac-snowleopard/svg/dom/SVGLengthList-initialize-expected.png:
* platform/chromium-mac-snowleopard/svg/dom/SVGLengthList-insertItemBefore-expected.png:
* platform/chromium-mac-snowleopard/svg/dom/SVGLengthList-removeItem-expected.png:
* platform/chromium-mac-snowleopard/svg/dom/SVGLengthList-replaceItem-expected.png:
* platform/chromium-mac-snowleopard/svg/dom/SVGNumberList-basics-expected.png:
* platform/chromium-mac-snowleopard/svg/dom/SVGTransformList-basics-expected.png:
* platform/chromium-mac/svg/dom/SVGLengthList-appendItem-expected.png:
* platform/chromium-mac/svg/dom/SVGLengthList-basics-expected.png:
* platform/chromium-mac/svg/dom/SVGLengthList-getItem-expected.png:
* platform/chromium-mac/svg/dom/SVGLengthList-initialize-expected.png:
* platform/chromium-mac/svg/dom/SVGLengthList-insertItemBefore-expected.png:
* platform/chromium-mac/svg/dom/SVGLengthList-removeItem-expected.png:
* platform/chromium-mac/svg/dom/SVGLengthList-replaceItem-expected.png:
* platform/chromium-mac/svg/dom/SVGNumberList-basics-expected.png:
* platform/chromium-mac/svg/dom/SVGTransformList-basics-expected.png:
* platform/efl-wk1/svg/dom/SVGLengthList-getItem-expected.png: Renamed from LayoutTests/platform/efl/svg/dom/SVGLengthList-getItem-expected.png.
* platform/efl-wk1/svg/dom/SVGLengthList-removeItem-expected.png: Renamed from LayoutTests/platform/efl/svg/dom/SVGLengthList-removeItem-expected.png.
* platform/efl-wk1/svg/dom/SVGTransformList-basics-expected.png: Renamed from LayoutTests/platform/efl/svg/dom/SVGTransformList-basics-expected.png.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134621 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Mark webgl-background-color.html as failing.
http://webkit.org/b/102247

* platform/chromium/TestExpectations: Marked as failing.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134622 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Deliver data from NetworkProcess to resources progressively.
https://bugs.webkit.org/show_bug.cgi?id=102171

Reviewed by Alexey Proskuryakov.

Instead of buffering up the data for an entire resource and delivering it in one chunk, we need
to deliver data progressively.

This allows progressive parsing of textual resources and progressive rendering of images,
as well as allows endless multipart resources (e.g., multipart jpegs) to work at all.

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didReceiveData): Don't buffer data locally (for now) but rather
  pass it straight through to the WebProcess.
(WebKit::NetworkResourceLoader::didFinishLoading): Only notify didFinishLoading instead of
  delivering a chunk of buffered data.
(WebKit::NetworkResourceLoader::didFail):
* NetworkProcess/NetworkResourceLoader.h:

* WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::didReceiveData): Pass through towards ResourceLoader.
(WebKit::NetworkProcessConnection::didFinishResourceLoad):
(WebKit::NetworkProcessConnection::didFailResourceLoad):
* WebProcess/Network/NetworkProcessConnection.h:
* WebProcess/Network/NetworkProcessConnection.messages.in:

* WebProcess/Network/WebResourceLoadScheduler.cpp:
(WebKit::WebResourceLoadScheduler::didReceiveData): Hand this chunk of data to the ResourceLoader directly.
(WebKit::WebResourceLoadScheduler::didFinishResourceLoad):
* WebProcess/Network/WebResourceLoadScheduler.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134623 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Add FocusBased context node detection strategy
https://bugs.webkit.org/show_bug.cgi?id=102238

Patch by Andy Chen <andchen@rim.com> on 2012-11-14
Reviewed by Rob Buis.

If last fat finger result is invalid, we need to return current
focus element as context node, because when user tap on selection
overlay, there is not touch event sent to webkit.
PR 241382

Internally reviewed by Genevieve Mak and Mike Fenton.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::contextNode):
* Api/WebPage.h:
* WebKitSupport/InputHandler.h:
(BlackBerry::WebKit::InputHandler::currentFocusElement):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134624 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rebaseline fast/media/mq-js-media-except-01.html after r134618.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134625 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Dynamically create canvas in Setup() to avoid calling DEPRECATED function setDevice().
https://bugs.webkit.org/show_bug.cgi?id=102242

Reviewed by Stephen White.

This change should not change any test results, it is an equivalent implementation that avoids
using a (now) DEPRECATED function.

* tests/DeferredImageDecoderTest.cpp:
(WebCore::createRasterCanvas):
(WebCore):
(WebCore::DeferredImageDecoderTest::SetUp):
(DeferredImageDecoderTest):
(WebCore::TEST_F):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134626 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: keep track of mutation observers and disconnect them upon upload
https://bugs.webkit.org/show_bug.cgi?id=102239

Reviewed by Vsevolod Vlasov.

Otherwise we hit memory leaks.

* inspector/front-end/DefaultTextEditor.js:
(WebInspector.DefaultTextEditor.prototype.wasShown):
(WebInspector.DefaultTextEditor.prototype.willHide):
(WebInspector.TextEditorMainPanel.prototype._wasShown):
(WebInspector.TextEditorMainPanel.prototype._willHide):
(WebInspector.TextEditorMainPanel.prototype._attachMutationObserver):
(WebInspector.TextEditorMainPanel.prototype._detachMutationObserver):
* inspector/front-end/utilities.js:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134627 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Optimize painting of composited scrolling layers
https://bugs.webkit.org/show_bug.cgi?id=96087

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-11-14
Reviewed by Simon Fraser.

Source/WebCore:

Don't completely repaint accelerated scrolling layers when the scroll offset
changes.

Test: compositing/overflow/scrolling-without-painting.html

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::setOffsetFromRenderer):
* platform/graphics/GraphicsLayer.h:
(GraphicsLayer):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

LayoutTests:

Test that accelerated scrolling layers can be scrolled without repainting
their contents. Note that this test will not pass unless
ENABLE_ACCELERATED_OVERFLOW_SCROLLING is enabled.

* compositing/overflow/scrolling-without-painting-expected.txt: Added.
* compositing/overflow/scrolling-without-painting.html: Added.
* platform/chromium/TestExpectations: Mark test as expected to fail
  by default.
* platform/mac/TestExpectations: Skip the test.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134628 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WinCairo] Fix cairo_t* memory leak in GraphicsContext::platformInit
https://bugs.webkit.org/show_bug.cgi?id=76219

Patch by Hideki Yoshida <yoshida-hxa@necst.nec.co.jp> on 2012-11-14
Reviewed by Brent Fulgham.

This patch is to fix a memory leak problem which occurs
in every rendering process on Wincairo port.
By applying this patch, the memory allocated in cairo 
library will be released by calling cairo_destroy.

* platform/graphics/win/GraphicsContextCairoWin.cpp:
(WebCore::GraphicsContext::platformInit):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134629 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Break suspend/resume of the backingstore and screen into separate methods
https://bugs.webkit.org/show_bug.cgi?id=102126

Patch by Adam Treat <atreat@rim.com> on 2012-11-14
Reviewed by George Staikos.
PR 219976

Modify the suspend/resume methods so that they can be called from the UI thread
itself and split up the suspend/resume methods so that we can suspend/resume
the screen or backingstore separately.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::suspendBackingStoreUpdates):
(WebKit):
(BlackBerry::WebKit::BackingStorePrivate::suspendScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::resumeBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::resumeScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::createSurfaces):
(BlackBerry::WebKit::BackingStore::suspendBackingStoreUpdates):
(BlackBerry::WebKit::BackingStore::resumeBackingStoreUpdates):
(BlackBerry::WebKit::BackingStore::suspendScreenUpdates):
(BlackBerry::WebKit::BackingStore::resumeScreenUpdates):
(BlackBerry::WebKit::BackingStore::createBackingStoreMemory):
(BlackBerry::WebKit::BackingStore::releaseBackingStoreMemory):
* Api/BackingStore.h:
* Api/BackingStore_p.h:
(BackingStorePrivate):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPagePrivate::zoomAboutPoint):
(BlackBerry::WebKit::WebPagePrivate::zoomBlock):
(BlackBerry::WebKit::WebPage::destroy):
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):
(BlackBerry::WebKit::WebPagePrivate::setCompositor):
(BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):
(BlackBerry::WebKit::WebPagePrivate::restoreHistoryViewState):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::transitionToCommittedForNewPage):
(WebCore::FrameLoaderClientBlackBerry::restoreViewState):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::setBatchEditingActive):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134630 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Boxes with rounded corners and thin borders are too slow to draw
https://bugs.webkit.org/show_bug.cgi?id=101974

Reviewed by Simon Fraser.

Source/WebCore:

With the current implementation RenderBox::
determineBackgroundBleedAvoidance() uses the slow path
BackgroundBleedUseTransparencyLayer for some very common use cases,
notably for drawing rectangles with rounded corners that have thin
borders. This is because the BackgroundBleedShrinkBackground
strategy requires a border at least two pixels wide on all sides. This
patch introduce drawing strategy BackgroundBleedBackgroundOverBorder.
This approach consists in drawing the border first, with an inset inner
edge (for anti-aliased compositing to work well).  This approach only
works with opaque solid edges and opaque single-layer backgrounds.
By using this approach rather than BackgroundBleedUseTransparencyLayer,
we save two clipPath, one save and one saveLayer on the
GraphicsContext. This patch gets good coverage from existing layout
tests. One additional test was added to exercise mitring, thick edges
and anti-aliasing edge cases under the new painting algorithm.

Test: fast/borders/border-radius-wide-border-05.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::determineBackgroundBleedAvoidance):
Added selection criteria for BackgroundOverBorder
(WebCore::RenderBox::paintBoxDecorations):
Added a preliminary paintBorder pass for BackgroundOverBorder
(WebCore::RenderBox::paintBackground):
Insetting the background to to innerBorder when bleedAvoidance is
BackgroundOverBorder.  This why BackgroundOverBorder only works for
Opaque solid edges.
(WebCore):
(WebCore::RenderBox::backgroundIsSingleOpaqueLayer):
Utility method use by determineBackgroundBleedAvoidance to test the
background's eligibility for BackgroundOverBorder bleed avoidance
strategy.  The reason the background must be a single layer is to avoid
color bleeding from layer compositing along anti-aliased edges
* rendering/RenderBox.h:
(RenderBox):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
(WebCore::RenderBoxModelObject::borderInnerRectAdjustedForBleedAvoidance):
Added support for BackgroundOverBorder by applying a one pixel inset.
(WebCore::RenderBoxModelObject::backgroundRoundedRectAdjustedForBleedAvoidance):
Set the background rect to the inner border for BackgroundOverBorder
(WebCore):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
Added support for BackgroundOverBorder by using
backgroundRoundedRectAdjustedForBleedAvoidance
(WebCore::RenderBoxModelObject::paintBorderSides):
Added support for BackgroundOverBorder by applying per-side inset
adjustments.
(WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
(WebCore::RenderBoxModelObject::paintBorder):
Added support for BackgroundOverBorder by using an adjusted inner
border, but not if sides are painted individually.
* rendering/RenderBoxModelObject.h:
(RenderBoxModelObject):

LayoutTests:

New test that purposely triggers the BackgroundOverBorder painting path
in WebCore::RenderBox, to test it with thick borders, off-diagonal
mitring, an anti-aliased rounded border wedge, and a border of width 0.

* fast/borders/border-radius-wide-border-05.html: Added.
* fast/borders/border-radius-wide-border-05-expected.txt: Added.
* LayoutTests/platform/chromium-win/fast/borders/border-radius-wide-border-05-expected.png: Added.
* LayoutTests/platform/chromium/TestExpectations: Added Expectations.
Added expectations for tests pixels results that require rebaselining


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add DOMRequestState to maintain world/ScriptExecutionContext state
https://bugs.webkit.org/show_bug.cgi?id=102102

Reviewed by Adam Barth.

Introduce DOMRequestState, and convert IndexedDB over.

No new tests, this is an abstraction layer for existing code.

* Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::onSuccess):
(WebCore::IDBRequest::dispatchEvent):
* Modules/indexeddb/IDBRequest.h:
(IDBRequest):
* WebCore.gypi:
* bindings/v8/DOMRequestState.h: Added.
(WebCore):
(DOMRequestState):
(WebCore::DOMRequestState::DOMRequestState):
(Scope):
(WebCore::DOMRequestState::Scope::Scope):
(WebCore::DOMRequestState::scope):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134632 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Rebaselined video LayoutTests for software compositor
https://bugs.webkit.org/show_bug.cgi?id=101973

Patch by Slavomir Kaslev <skaslev@google.com> on 2012-11-12
Reviewed by Adrienne Walker.

Rebaselined failing video LayouTests caused by different filtering
result between Skia and Mesa for the software compositor.

* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/overflow-compositing-descendant-expected.png: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/reflections/load-video-in-reflection-expected.png: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/self-painting-layers-expected.png: Added.
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/overflow/overflow-compositing-descendant-expected.png: Added.
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/reflections/load-video-in-reflection-expected.png: Added.
* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/self-painting-layers-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/overflow/overflow-compositing-descendant-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/reflections/load-video-in-reflection-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/self-painting-layers-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/overflow-compositing-descendant-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/reflections/load-video-in-reflection-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/self-painting-layers-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/visibility/visibility-simple-video-layer-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/overflow/overflow-compositing-descendant-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/reflections/load-video-in-reflection-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/self-painting-layers-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/softwarecompositing/visibility/visibility-simple-video-layer-expected.png: Added.
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134633 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Replace (typeof(x) != <"object", "undefined", ...>) with
!(typeof(x) == <"object",..>). Later is_object, is_<...>  bytecode operation
will be used.

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

Patch by Valery Ignatyev <valery.ignatyev@ispras.ru> on 2012-11-14
Reviewed by Filip Pizlo.

This eliminates expensive  typeof implementation and
allows to use DFG optimizations, which doesn't support 'typeof'.

* bytecompiler/NodesCodegen.cpp:
(JSC::BinaryOpNode::emitBytecode):


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