Special thunks for math functions should work on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=115144

Reviewed by Gavin Barraclough and Oliver Hunt.
        
The only hard bit here was ensuring that we implemented the very special
"cheap C call" convention on ARMv7.

* assembler/AbstractMacroAssembler.h:
(JSC::isARMv7s):
(JSC):
(JSC::isX86):
* dfg/DFGCommon.h:
* jit/SpecializedThunkJIT.h:
(SpecializedThunkJIT):
(JSC::SpecializedThunkJIT::callDoubleToDoublePreservingReturn):
* jit/ThunkGenerators.cpp:
(JSC::floorThunkGenerator):
(JSC::ceilThunkGenerator):
(JSC::roundThunkGenerator):
(JSC::expThunkGenerator):
(JSC::logThunkGenerator):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149082 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Dump layer opaqueness in the Compositing log output
https://bugs.webkit.org/show_bug.cgi?id=115132

Reviewed by Tim Horton.

It's useful to see whether we consider layers to be opaque in the Compositing
log channel output, so dump it.

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::logLayerInfo):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149083 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Garbage at the top of http://www.technologyreview.com after scrolling
https://bugs.webkit.org/show_bug.cgi?id=114825

Source/WebCore:

Reviewed by Tim Horton.

Garbage pixels are caused by GraphicsLayerCA setting a layer to be opaque,
but then not painting anything into it. On this page, the element is
toggled to be visibility:hidden on scrolling, but RenderLayer::backgroundIsKnownToBeOpaqueInRect()
failed to consider that as something that can cause backgrounds not to be opaque.

For the bug to happen, some subtle interactions with r142012 come into play
for the layer to remain visible, hence the slightly complex testcase.

Test: compositing/contents-opaque/visibility-hidden.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):

LayoutTests:

Reviewed by Tim Horton.

Test that sets visibility:hidden on an element with some complex
configuration of layer children, and dumps the layer tree to check
that the contents are not marked as opaque.

* compositing/contents-opaque/visibility-hidden-expected.txt: Added.
* compositing/contents-opaque/visibility-hidden.html: Added.

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