Fix build after r157457 for architecture with 4 argument registers.
https://bugs.webkit.org/show_bug.cgi?id=122860

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-10-15
Reviewed by Michael Saboff.

* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupStubArguments134):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157467 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ObjCCallbackFunctionImpl shouldn't store a JSContext
https://bugs.webkit.org/show_bug.cgi?id=122531

Reviewed by Geoffrey Garen.

The m_context field in ObjCCallbackFunctionImpl is vestigial and is only incidentally correct
in the common case. It's also no longer necessary in that we can look up the current JSContext
by looking using the globalObject of the callee when the function callback is invoked.

Also added a new test that would cause us to crash previously. The test required making
JSContextGetGlobalContext public API so that clients can obtain a JSContext from the JSContextRef
in C API callbacks.

* API/JSContextRef.h:
* API/JSContextRefPrivate.h:
* API/ObjCCallbackFunction.mm:
(JSC::ObjCCallbackFunctionImpl::ObjCCallbackFunctionImpl):
(JSC::objCCallbackFunctionCallAsFunction):
(objCCallbackFunctionForInvocation):
* API/WebKitAvailability.h:
* API/tests/CurrentThisInsideBlockGetterTest.h: Added.
* API/tests/CurrentThisInsideBlockGetterTest.mm: Added.
(CallAsConstructor):
(ConstructorFinalize):
(ConstructorClass):
(+[JSValue valueWithConstructorDescriptor:inContext:]):
(-[JSContext valueWithConstructorDescriptor:]):
(currentThisInsideBlockGetterTest):
* API/tests/testapi.mm:
* JavaScriptCore.xcodeproj/project.pbxproj:
* debugger/Debugger.cpp: Had to add some fully qualified names to avoid conflicts with Mac OS X headers.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157468 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add a skeleton Database process for future usage by Indexed Database.
https://bugs.webkit.org/show_bug.cgi?id=122849

Reviewed by Sam Weinig.

This mostly our typical "Add a new process type" boilerplate.

* Configurations/DatabaseProcess.xcconfig: Added.
* Configurations/DatabaseService.Development.xcconfig: Added.
* Configurations/DatabaseService.xcconfig: Added.
* WebKit2.xcodeproj/project.pbxproj:
* WebKit2Prefix.h:

* DatabaseProcess/DatabaseProcess.cpp: Added.
(WebKit::DatabaseProcess::shared):
(WebKit::DatabaseProcess::DatabaseProcess):
(WebKit::DatabaseProcess::~DatabaseProcess):
(WebKit::DatabaseProcess::initializeConnection):
(WebKit::DatabaseProcess::shouldTerminate):
(WebKit::DatabaseProcess::didReceiveMessage):
(WebKit::DatabaseProcess::didClose):
(WebKit::DatabaseProcess::didReceiveInvalidMessage):
(WebKit::DatabaseProcess::initializeProcess):
(WebKit::DatabaseProcess::initializeProcessName):
(WebKit::DatabaseProcess::initializeSandbox):
* DatabaseProcess/DatabaseProcess.h: Added.

* DatabaseProcess/EntryPoint/mac/LegacyProcess/DatabaseProcessMain.mm: Added.
(DatabaseProcessMain):
* DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist: Added.
* DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist: Added.
* DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist: Added.
* DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm: Added.
(DatabaseServiceInitializer):

* DatabaseProcess/mac/DatabaseProcessMac.mm: Added.
(WebKit::DatabaseProcess::initializeProcess):
(WebKit::DatabaseProcess::initializeProcessName):
(WebKit::DatabaseProcess::initializeSandbox):
* UIProcess/Databases/DatabaseProcessProxy.cpp: Added.
(WebKit::DatabaseProcessProxy::create):
(WebKit::DatabaseProcessProxy::DatabaseProcessProxy):
(WebKit::DatabaseProcessProxy::~DatabaseProcessProxy):
(WebKit::DatabaseProcessProxy::getLaunchOptions):
(WebKit::DatabaseProcessProxy::connectionWillOpen):
(WebKit::DatabaseProcessProxy::connectionWillClose):
(WebKit::DatabaseProcessProxy::didReceiveMessage):
(WebKit::DatabaseProcessProxy::didClose):
(WebKit::DatabaseProcessProxy::didReceiveInvalidMessage):
(WebKit::DatabaseProcessProxy::didFinishLaunching):
* UIProcess/Databases/DatabaseProcessProxy.h: Added.
* UIProcess/Databases/mac/DatabaseProcessProxyMac.mm: Added.
(WebKit::shouldUseXPC):
(WebKit::DatabaseProcessProxy::platformGetLaunchOptions):

* UIProcess/Launcher/ProcessLauncher.cpp:
(WebKit::ProcessLauncher::processTypeAsString):
(WebKit::ProcessLauncher::getProcessTypeFromString):
* UIProcess/Launcher/ProcessLauncher.h:
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::serviceName):
(WebKit::createProcess):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157469 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION: Crash in XMLDocumentParser::startElementNs
https://bugs.webkit.org/show_bug.cgi?id=122817

Reviewed by Darin Adler.

Source/WebCore: 

Exit early in startElementNs when listeners and handlers of synchronous events such as load event
removes the inserted node inside parserAppendChild.

Test: fast/parser/xhtml-synchronous-detach-crash.html

* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::startElementNs):

LayoutTests: 

Add a regression test from https://chromium.googlesource.com/chromium/blink/+/57afab5d21cccd89f032b9a3e62f3a61c6a0e9c2

* fast/parser/resources/remove-parent.xhtml: Added.
* fast/parser/xhtml-synchronous-detach-crash-expected.txt: Added.
* fast/parser/xhtml-synchronous-detach-crash.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157470 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix 3 operand sub operation in C loop LLINT.
https://bugs.webkit.org/show_bug.cgi?id=122866.

Reviewed by Geoffrey Garen.

* offlineasm/cloop.rb:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157473 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] Upstream JavaScriptCore support for ARM64
https://bugs.webkit.org/show_bug.cgi?id=122762

Source/JavaScriptCore:

Reviewed by Oliver Hunt and Filip Pizlo.

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/JavaScriptCore.xcconfig:
* Configurations/ToolExecutable.xcconfig:
* JavaScriptCore.xcodeproj/project.pbxproj:
* assembler/ARM64Assembler.h: Added.
* assembler/AbstractMacroAssembler.h:
(JSC::isARM64):
(JSC::AbstractMacroAssembler::Label::Label):
(JSC::AbstractMacroAssembler::Jump::Jump):
(JSC::AbstractMacroAssembler::Jump::link):
(JSC::AbstractMacroAssembler::Jump::linkTo):
(JSC::AbstractMacroAssembler::CachedTempRegister::CachedTempRegister):
(JSC::AbstractMacroAssembler::CachedTempRegister::registerIDInvalidate):
(JSC::AbstractMacroAssembler::CachedTempRegister::registerIDNoInvalidate):
(JSC::AbstractMacroAssembler::CachedTempRegister::value):
(JSC::AbstractMacroAssembler::CachedTempRegister::setValue):
(JSC::AbstractMacroAssembler::CachedTempRegister::invalidate):
(JSC::AbstractMacroAssembler::invalidateAllTempRegisters):
(JSC::AbstractMacroAssembler::isTempRegisterValid):
(JSC::AbstractMacroAssembler::clearTempRegisterValid):
(JSC::AbstractMacroAssembler::setTempRegisterValid):
* assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::copyCompactAndLinkCode):
(JSC::LinkBuffer::linkCode):
* assembler/LinkBuffer.h:
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::isPtrAlignedAddressOffset):
(JSC::MacroAssembler::pushToSave):
(JSC::MacroAssembler::popToRestore):
(JSC::MacroAssembler::patchableBranchTest32):
* assembler/MacroAssemblerARM64.h: Added.
* assembler/MacroAssemblerARMv7.h:
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileArithDiv):
(JSC::DFG::SpeculativeJIT::compileArithMod):
* disassembler/ARM64/A64DOpcode.cpp: Added.
* disassembler/ARM64/A64DOpcode.h: Added.
* disassembler/ARM64Disassembler.cpp: Added.
* heap/MachineStackMarker.cpp:
(JSC::getPlatformThreadRegisters):
(JSC::otherThreadStackPointer):
* heap/Region.h:
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::debugCall):
* jit/CCallHelpers.h:
* jit/ExecutableAllocator.h:
* jit/FPRInfo.h:
(JSC::FPRInfo::toRegister):
(JSC::FPRInfo::toIndex):
(JSC::FPRInfo::debugName):
* jit/GPRInfo.h:
(JSC::GPRInfo::toRegister):
(JSC::GPRInfo::toIndex):
(JSC::GPRInfo::debugName):
* jit/JITInlines.h:
(JSC::JIT::restoreArgumentReferenceForTrampoline):
* jit/JITOperationWrappers.h:
* jit/JITOperations.cpp:
* jit/JITStubs.cpp:
(JSC::performPlatformSpecificJITAssertions):
(JSC::tryCachePutByID):
* jit/JITStubs.h:
(JSC::JITStackFrame::returnAddressSlot):
* jit/JITStubsARM64.h: Added.
* jit/JSInterfaceJIT.h:
* jit/Repatch.cpp:
(JSC::emitRestoreScratch):
(JSC::generateProtoChainAccessStub):
(JSC::tryCacheGetByID):
(JSC::emitPutReplaceStub):
(JSC::tryCachePutByID):
(JSC::tryRepatchIn):
* jit/ScratchRegisterAllocator.h:
(JSC::ScratchRegisterAllocator::preserveReusedRegistersByPushing):
(JSC::ScratchRegisterAllocator::restoreReusedRegistersByPopping):
* jit/ThunkGenerators.cpp:
(JSC::nativeForGenerator):
(JSC::floorThunkGenerator):
(JSC::ceilThunkGenerator):
* jsc.cpp:
(main):
* llint/LLIntOfflineAsmConfig.h:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::handleHostCall):
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter64.asm:
* offlineasm/arm.rb:
* offlineasm/arm64.rb: Added.
* offlineasm/backends.rb:
* offlineasm/instructions.rb:
* offlineasm/risc.rb:
* offlineasm/transform.rb:
* yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::alignCallFrameSizeInBytes):
(JSC::Yarr::YarrGenerator::initCallFrame):
(JSC::Yarr::YarrGenerator::removeCallFrame):
(JSC::Yarr::YarrGenerator::generateEnter):
* yarr/YarrJIT.h:

Source/WTF:

Reviewed by Oliver Hunt.

* Configurations/Base.xcconfig:
* wtf/Atomics.h:
(WTF::weakCompareAndSwap):
(WTF::armV7_dmb):
* wtf/FastMalloc.cpp:
* wtf/Platform.h:
* wtf/dtoa.cpp:
* wtf/dtoa/utils.h:
* wtf/text/ASCIIFastPath.h:
(WTF::copyLCharsFromUCharSource):
* wtf/text/StringImpl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157474 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[sh4] Some calls don't match sh4 ABI.
https://bugs.webkit.org/show_bug.cgi?id=122863

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-10-15
Reviewed by Michael Saboff.

* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupArgumentsWithExecState):
* jit/JITInlines.h:
(JSC::JIT::callOperation):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157475 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move WebProcess/IndexedDB to WebProcess/Databases/IndexedDB

Rubberstamped by Alexey Proskuryakov.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebKit2.xcodeproj/project.pbxproj:

* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp: Renamed from Source/WebKit2/WebProcess/IndexedDB/WebIDBFactoryBackend.cpp.
* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h: Renamed from Source/WebKit2/WebProcess/IndexedDB/WebIDBFactoryBackend.h.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157476 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Windows] Unreviewed gardening of some forms tests.

* platform/win/fast/forms/search-styled-expected.txt: Added.
* platform/win/fast/forms/select-writing-direction-natural-expected.txt: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157477 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add a PlatformCALayer subclass that proxies its property changes across the process boundary
https://bugs.webkit.org/show_bug.cgi?id=122773

Reviewed by Anders Carlsson.

PlatformCALayerRemote coordinates with RemoteLayerTreeDrawingArea and friends
to enable cross-process proxying of the hierarchy of compositing layers.

In the Web process, we have GraphicsLayerCARemote, which owns 1+ PlatformCALayerRemote(s).
Unlike PlatformCALayer{Mac, Win}, which own PlatformLayers (CALayer/CACFLayer),
PlatformCALayerRemote stores any changes to its properties in a struct, and keeps track of
which properties have changed since the last commit. Commits are scheduled and performed by
RemoteLayerTreeContext, on RemoteLayerTreeDrawingArea's behalf, and result in
RemoteLayerTreeTransaction encoding said property changes and throwing them across
to the UI process, where RemoteLayerTreeHost applies them to a tree of CALayers kept there.

This code can be enabled by running with the WK_USE_REMOTE_LAYER_TREE_DRAWING_AREA
environment variable set.

No new tests, the new drawing area is not yet testable.

* Shared/WebCoreArgumentCoders.cpp:
(CoreIPC::decode):
(CoreIPC::encode):
* Shared/WebCoreArgumentCoders.h:
Add argument coders for FloatPoint3D.

* Shared/mac/RemoteLayerTreeTransaction.h:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::notePropertiesChanged):
(WebKit::RemoteLayerTreeTransaction::changedLayers):
(WebKit::RemoteLayerTreeTransaction::destroyedLayers):
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::RemoteLayerTreeTransaction::decode):
(WebKit::dumpChangedLayers):
Add support for background color and anchor point in the layer transaction.
Make layer position a 3D point because that's what it really is.

(WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
The logic in layerPropertiesChanged is moved into PlatformCALayerRemote.

* UIProcess/WebPageProxy.h:
Include PlatformLayer.h; it seems annoying to successfully forward-declare
PlatformLayer because of the difference in definition between Objective-C and C++.
Drive-by un-indent some namespace contents and use OBJC_CLASS.

* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::sizeDidChange):
(WebKit::RemoteLayerTreeDrawingAreaProxy::didUpdateGeometry):
(WebKit::RemoteLayerTreeDrawingAreaProxy::sendUpdateGeometry):
Send geometry updates to the RemoteLayerTreeDrawingArea.

* UIProcess/mac/RemoteLayerTreeHost.h:
* UIProcess/mac/RemoteLayerTreeHost.mm:
(nullActionsDictionary):
(WebKit::RemoteLayerTreeHost::commit):
Apply layer property changes to the named sublayer.

(WebKit::RemoteLayerTreeHost::getOrCreateLayer):
Create CALayers instead of GraphicsLayers.
Ensure that they won't perform implicit animations.

* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::setAcceleratedCompositingRootLayer):
This should take a PlatformLayer instead of a GraphicsLayer, since we don't have
GraphicsLayers in the UIProcess.

* WebKit2.xcodeproj/project.pbxproj:
Add GraphicsLayerCARemote and PlatformCALayerRemote, remove RemoteGraphicsLayer.

* WebProcess/WebPage/mac/RemoteGraphicsLayer.h: Removed.
* WebProcess/WebPage/mac/RemoteGraphicsLayer.mm: Removed.

* WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
* WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
(WebKit::RemoteLayerTreeContext::RemoteLayerTreeContext):
(WebKit::RemoteLayerTreeContext::setRootLayer):
(WebKit::RemoteLayerTreeContext::layerWillBeDestroyed):
(WebKit::RemoteLayerTreeContext::createGraphicsLayer):
(WebKit::RemoteLayerTreeContext::flushLayers):
Build our transaction while flushing; it has no reason to exist outside of that scope.

* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::graphicsLayerFactory):
(WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
(WebKit::RemoteLayerTreeDrawingArea::scheduleCompositingLayerFlush):
(WebKit::RemoteLayerTreeDrawingArea::updateGeometry):
Fix a capitalization typo.
Update the WebPage's (and thus WebCore's) size when updateGeometry() is called.

* WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp: Added.
(WebKit::GraphicsLayerCARemote::~GraphicsLayerCARemote):
(WebKit::GraphicsLayerCARemote::filtersCanBeComposited):
(WebKit::GraphicsLayerCARemote::createPlatformCALayer):
Added. Delegate to PlatformCALayerRemote. Don't allow creation of a
GraphicsLayerCARemote given a PlatformLayer, because with UI process compositing,
there should be no PlatformLayer instances in the Web process.

* WebProcess/WebPage/mac/GraphicsLayerCARemote.h: Added.
* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp: Added.
(generateLayerID):
Generate a layer ID for identification across processes.

(PlatformCALayerRemote::~PlatformCALayerRemote):
Inform the RemoteLayerTreeContext that we've been destroyed, so it can convey
that information to the UI process and the corresponding CALayer can be destroyed.

(PlatformCALayerRemote::recursiveBuildTransaction):
Recursively accumulate changes in layer state on a RemoteLayerTreeTransaction.

The rest of this file is mostly an empty implementation of PlatformCALayer.
A few properties are implemented so far; see below.

(PlatformCALayerRemote::setSublayers):
(PlatformCALayerRemote::removeAllSublayers):
(PlatformCALayerRemote::appendSublayer):
(PlatformCALayerRemote::insertSublayer):
Update our list of sublayers, and note that our children have changed.
recursiveBuildTransaction() will walk our sublayers and record their IDs in the transaction.

(PlatformCALayerRemote::bounds):
(PlatformCALayerRemote::setBounds):
(PlatformCALayerRemote::position):
(PlatformCALayerRemote::setPosition):
(PlatformCALayerRemote::anchorPoint):
(PlatformCALayerRemote::setAnchorPoint):
(PlatformCALayerRemote::backgroundColor):
(PlatformCALayerRemote::setBackgroundColor):
Trivial implementations of basic layer properties, storing the new state in
our LayerProperties struct and noting that they changed in the current commit.
Properties with getters will return the last value that was set on the LayerProperties,
so we don't clear the whole struct at the end of the transaction, just the mask of changed properties.

* WebProcess/WebPage/mac/PlatformCALayerRemote.h: Added.

* WebCore.exp.in:
Export lots of GraphicsLayerCA stuff so we can inherit from it in WebKit2.

* WebCore.xcodeproj/project.pbxproj:
Make PlatformCAFilters.h a private header.

* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::initialize):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayer::create):
(WebCore::GraphicsLayerCA::GraphicsLayerCA):
(WebCore::GraphicsLayerCA::initialize):
* platform/graphics/ca/GraphicsLayerCA.h:
Defer creation of the main PlatformCALayer until just after the constructor is finished
so that GraphicsLayerCA subclasses can successfully override createPlatformCALayer.

* platform/graphics/ca/PlatformCALayer.h:
(WebCore::PlatformCALayer::platformLayer):
Make platformLayer virtual so that subclasses which don't have PlatformLayers can override.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157478 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add ENABLE_WEB_ANIMATIONS flag
https://bugs.webkit.org/show_bug.cgi?id=122871

Reviewed by Tim Horton.

Eventually might be http://dev.w3.org/fxtf/web-animations/
but this is just engine-internal work at the moment.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

* Scripts/webkitperl/FeatureList.pm:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Baseline JIT should use the DFG GetById IC
https://bugs.webkit.org/show_bug.cgi?id=122861

Reviewed by Oliver Hunt.
        
This mostly just kills a ton of code.
        
Note that this doesn't yet do all of the simplifications that can be done, but it does
kill dead code. I'll have another change to simplify StructureStubInfo's unions and such.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::resetStubInternal):
* jit/JIT.cpp:
(JSC::PropertyStubCompilationInfo::copyToStubInfo):
* jit/JIT.h:
(JSC::PropertyStubCompilationInfo::PropertyStubCompilationInfo):
* jit/JITInlines.h:
(JSC::JIT::appendCallWithExceptionCheckSetJSValueResultWithProfile):
(JSC::JIT::callOperation):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::emitSlow_op_get_from_scope):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::emitSlow_op_get_from_scope):
* jit/JITStubs.cpp:
* jit/JITStubs.h:
* jit/Repatch.cpp:
(JSC::repatchGetByID):
(JSC::buildGetByIDList):
* jit/ThunkGenerators.cpp:
* jit/ThunkGenerators.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157480 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Get rid of the UNINTERRUPTED_SEQUENCE thing
https://bugs.webkit.org/show_bug.cgi?id=122876

Reviewed by Mark Hahnenberg.
        
It doesn't make sense anymore. We now use the DFG's IC logic, which never needed that.
        
Moreover, we should resist the temptation to bring anything like this back. We don't
want to have inline caches that only work if the assembler lays out code in a specific
predetermined way.

* jit/JIT.h:
* jit/JITCall.cpp:
(JSC::JIT::compileOpCall):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileOpCall):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157481 268f45cc-cd09-0410-ab3c-d52691b4dbfc
FTL: add support for Int52ToValue and fix putByVal of int52s.
https://bugs.webkit.org/show_bug.cgi?id=122873

Patch by Nadav Rotem <nrotem@apple.com> on 2013-10-15
Reviewed by Filip Pizlo.

* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileInt52ToValue):
(JSC::FTL::LowerDFGToLLVM::compilePutByVal):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157482 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed build fix; I don't know how to export.
This may not help.

* WebCore.exp.in:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157483 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Removed argument coders for FloatPoint3D in CoodinatedGraphicsArgumentCoders.
https://bugs.webkit.org/show_bug.cgi?id=122875

Reviewed by Gyuyoung Kim.

Argument coders for FloatPoint3D is added in WebCoreArgumentCoders after r157478
and it caused redefinition build error in EFL port.

* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157484 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed EFL gardening. Rebaselining after r155408.

* platform/efl/fast/forms/input-placeholder-visibility-1-expected.txt:
* platform/efl/fast/forms/input-placeholder-visibility-3-expected.txt:
* platform/efl/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
* platform/efl/fast/forms/textarea-placeholder-visibility-1-expected.txt:
* platform/efl/fast/forms/textarea-placeholder-visibility-2-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157485 268f45cc-cd09-0410-ab3c-d52691b4dbfc
GenerateIsReachable=ImplContext is confusing
https://bugs.webkit.org/show_bug.cgi?id=122864

Reviewed by Geoffrey Garen.

Renamed to ImplWebGLRenderingContext.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/IDLAttributes.txt:
* html/canvas/EXTDrawBuffers.idl:
* html/canvas/EXTTextureFilterAnisotropic.idl:
* html/canvas/OESElementIndexUint.idl:
* html/canvas/OESStandardDerivatives.idl:
* html/canvas/OESTextureFloat.idl:
* html/canvas/OESTextureHalfFloat.idl:
* html/canvas/OESVertexArrayObject.idl:
* html/canvas/WebGLCompressedTextureATC.idl:
* html/canvas/WebGLCompressedTexturePVRTC.idl:
* html/canvas/WebGLCompressedTextureS3TC.idl:
* html/canvas/WebGLDebugRendererInfo.idl:
* html/canvas/WebGLDebugShaders.idl:
* html/canvas/WebGLDepthTexture.idl:
* html/canvas/WebGLLoseContext.idl:

* WebCore.xcodeproj/project.pbxproj: While at it, added OESElementIndexUint.idl
to Xcode project.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157486 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Another shot at a build fix; apparently these 
do need exporting for some reason, but are different  
on 32-bit.

* WebCore.exp.in:


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

* platform/efl/TestExpectations: svg/filters/filter-hidden-content.svg is passed after r142955.

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