Remove useless code from COMPILER(RVCT) JITStubs
https://bugs.webkit.org/show_bug.cgi?id=119521

Reviewed by Geoffrey Garen.

* jit/JITStubsARMv7.h:
(JSC::ctiVMThrowTrampoline): "ldr r6, [sp, #PRESERVED_R6_OFFSET]" was called twice.
(JSC::ctiOpThrowNotCaught): Ditto.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153762 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Delay Arguments creation in strict mode
https://bugs.webkit.org/show_bug.cgi?id=119505

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Make use of the write tracking performed by the parser to
allow us to know if we're modifying the parameters to a function.
Then use that information to make strict mode function opt out
of eager arguments creation.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::createArgumentsIfNecessary):
(JSC::BytecodeGenerator::emitReturn):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::shouldTearOffArgumentsEagerly):
* parser/Nodes.h:
(JSC::ScopeNode::modifiesParameter):
* parser/Parser.cpp:
(JSC::::parseInner):
* parser/Parser.h:
(JSC::Scope::declareParameter):
(JSC::Scope::getCapturedVariables):
(JSC::Parser::declareWrite):
* parser/ParserModes.h:

LayoutTests:

Add performance testcase for lazy creation of arguments in strict mode

* fast/js/regress/delay-tear-off-arguments-strictmode-expected.txt: Added.
* fast/js/regress/delay-tear-off-arguments-strictmode.html: Added.
* fast/js/regress/script-tests/delay-tear-off-arguments-strictmode.js: Added.
(bar):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153763 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Windows] Unreviewed build correction after r153754 and r153757.

Source/WebCore: 

* page/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc): Don't force std::remainder, since we are using our own
custom implementation on Windows.

Source/WTF: 

* wtf/MathExtras.h:
(remainder): Provide implementation of C99 remainder for VS2010 (and earlier).



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Remove stale code in ResourceContentView
https://bugs.webkit.org/show_bug.cgi?id=119527

The handling of Resource Type changes moved to ResourceClusterContentView,
this removeEventListener is stale and doesn't do anything anymore.

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-08-06
Reviewed by Timothy Hatcher.

* UserInterface/ResourceContentView.js:
(WebInspector.ResourceContentView.prototype.closed):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153765 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Moved GraphicsContext3DPrivate out of cairo directory to be used by the AppleWin port.
https://bugs.webkit.org/show_bug.cgi?id=119525

Reviewed by Dean Jackson.

* GNUmakefile.list.am:
* PlatformGTK.cmake:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
Changed location of GraphicsContext3DPrivate.cpp and GraphicsContext3DPrivate.h.
* platform/graphics/GraphicsContext3DPrivate.cpp: Copied from WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp.
* platform/graphics/GraphicsContext3DPrivate.h: Copied from WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.h.
* platform/graphics/cairo/GraphicsContext3DPrivate.cpp: Removed.
* platform/graphics/cairo/GraphicsContext3DPrivate.h: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153766 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<rdar://problem/5927399> FastMalloc should support MallocStackLogging

Call the malloc stack logging function from within the various entry points to FastMalloc
when stack logging is enabled.

Reviewed by Oliver Hunt and Geoff Garen.

* wtf/FastMalloc.cpp:
Call in to MallocHook::InvokeNewHook / MallocHook::InvokeDeleteHook at the appropriate entry
points to FastMalloc. The naming comes from TCMalloc's existing, unused concept of malloc hooks.
(WTF::MallocHook::record): Call the stack logging function with appropriate argument types.
(WTF::MallocHook::recordAllocation): Out-of-line slow path for when stack logging is enabled
that calls record with the values in the right arguments.
(WTF::MallocHook::recordDeallocation): Ditto.
(WTF::MallocHook::init): Stack logging is enabled if the system allocator has enabled stack logging.
(WTF::MallocHook::InvokeNewHook): Call recordAllocation in the unlikely event that stack logging is
enabled.
(WTF::MallocHook::InvokeDeleteHook): Ditto for recordDeallocation.
(WTF::TCMalloc_ThreadCache::InitModule): Initialize the malloc hook.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153767 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Enabled WebGL on WinCairo port.
https://bugs.webkit.org/show_bug.cgi?id=119502

Reviewed by Benjamin Poulain.

Source/WebKit:

* WebKit.vcxproj/WebKit.sln: Build ANGLE libraries.
* WebKit.vcxproj/WebKit/WebKitCFLite.props: Link to ANGLE libraries.

Source/WTF:

* wtf/FeatureDefines.h: Enabled WebGL.
* wtf/Platform.h: Added definitions required for WebGL on Windows.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153768 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Shapes] New positioning model: scripted shape-margin tests
https://bugs.webkit.org/show_bug.cgi?id=119491

Update some of the shape-margin tests to work with the new positioning model. Floats
that specify shape-outside are now positioned according to their margin box, not the
bounding box of the shape-outside shape. The tests have been revised to reflect the
change.

Reviewed by Alexandru Chiculita.

* TestExpectations:
* fast/shapes/shape-outside-floats/shape-outside-floats-diamond-margin-polygon.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-bottom.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-left.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-right.html:


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