Merge the jsCStack branch
authormsaboff@apple.com <msaboff@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 29 Jan 2014 19:18:54 +0000 (19:18 +0000)
committermsaboff@apple.com <msaboff@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 29 Jan 2014 19:18:54 +0000 (19:18 +0000)
commitbcca6cf3f7d0b5fc18a327eaa5d18a777cf80630
tree974339f55fc2bf941117018dec4929db24c09e38
parent4b64e11e4980ab8902b897ce4e334d87c8596675
Merge the jsCStack branch
https://bugs.webkit.org/show_bug.cgi?id=127763

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Changes from http://svn.webkit.org/repository/webkit/branches/jsCStack
up to changeset 162958.

Source/WebCore:

Changes from http://svn.webkit.org/repository/webkit/branches/jsCStack
up to changeset 162958.

Source/WTF:

Changes from http://svn.webkit.org/repository/webkit/branches/jsCStack
up to changeset 162958.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@163027 268f45cc-cd09-0410-ab3c-d52691b4dbfc
299 files changed:
LayoutTests/js/large-expressions-expected.txt
LayoutTests/js/regress/script-tests/stepanov_container.js [deleted file]
LayoutTests/js/regress/stepanov_container-expected.txt [deleted file]
LayoutTests/js/regress/stepanov_container.html [deleted file]
LayoutTests/js/script-tests/dfg-add-not-number.js
LayoutTests/js/script-tests/large-expressions.js
Source/JavaScriptCore/CMakeLists.txt
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/GNUmakefile.list.am
Source/JavaScriptCore/JavaScriptCore.order
Source/JavaScriptCore/JavaScriptCore.vcxproj/JavaScriptCore.vcxproj
Source/JavaScriptCore/JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters
Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
Source/JavaScriptCore/assembler/ARM64Assembler.h
Source/JavaScriptCore/assembler/ARMv7Assembler.h
Source/JavaScriptCore/assembler/AbstractMacroAssembler.h
Source/JavaScriptCore/assembler/LinkBuffer.cpp
Source/JavaScriptCore/assembler/LinkBuffer.h
Source/JavaScriptCore/assembler/MacroAssembler.h
Source/JavaScriptCore/assembler/MacroAssemblerARM64.h
Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h
Source/JavaScriptCore/assembler/MacroAssemblerCodeRef.h
Source/JavaScriptCore/assembler/MaxFrameExtentForSlowPathCall.h [new file with mode: 0644]
Source/JavaScriptCore/bytecode/CallLinkInfo.cpp
Source/JavaScriptCore/bytecode/CallLinkInfo.h
Source/JavaScriptCore/bytecode/CallLinkStatus.cpp
Source/JavaScriptCore/bytecode/CallLinkStatus.h
Source/JavaScriptCore/bytecode/CodeBlock.cpp
Source/JavaScriptCore/bytecode/CodeBlock.h
Source/JavaScriptCore/bytecode/CodeOrigin.cpp
Source/JavaScriptCore/bytecode/CodeOrigin.h
Source/JavaScriptCore/bytecode/DFGExitProfile.cpp
Source/JavaScriptCore/bytecode/DFGExitProfile.h
Source/JavaScriptCore/bytecode/ExitKind.h
Source/JavaScriptCore/bytecode/ExitingJITType.h [new file with mode: 0644]
Source/JavaScriptCore/bytecode/GetByIdStatus.cpp
Source/JavaScriptCore/bytecode/GetByIdStatus.h
Source/JavaScriptCore/bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp
Source/JavaScriptCore/bytecode/ProfiledCodeBlockJettisoningWatchpoint.h
Source/JavaScriptCore/bytecode/PutByIdStatus.cpp
Source/JavaScriptCore/bytecode/PutByIdStatus.h
Source/JavaScriptCore/bytecode/StructureSet.h
Source/JavaScriptCore/bytecode/StructureStubInfo.h
Source/JavaScriptCore/bytecode/ValueRecovery.h
Source/JavaScriptCore/bytecode/VirtualRegister.h
Source/JavaScriptCore/debugger/DebuggerCallFrame.cpp
Source/JavaScriptCore/dfg/DFGArrayMode.cpp
Source/JavaScriptCore/dfg/DFGArrayMode.h
Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
Source/JavaScriptCore/dfg/DFGCFGSimplificationPhase.cpp
Source/JavaScriptCore/dfg/DFGCSEPhase.cpp
Source/JavaScriptCore/dfg/DFGCapabilities.cpp
Source/JavaScriptCore/dfg/DFGCapabilities.h
Source/JavaScriptCore/dfg/DFGCommon.h
Source/JavaScriptCore/dfg/DFGCompilationMode.h
Source/JavaScriptCore/dfg/DFGDriver.cpp
Source/JavaScriptCore/dfg/DFGDriver.h
Source/JavaScriptCore/dfg/DFGFailedFinalizer.cpp
Source/JavaScriptCore/dfg/DFGFailedFinalizer.h
Source/JavaScriptCore/dfg/DFGFinalizer.h
Source/JavaScriptCore/dfg/DFGFixupPhase.cpp
Source/JavaScriptCore/dfg/DFGGraph.cpp
Source/JavaScriptCore/dfg/DFGGraph.h
Source/JavaScriptCore/dfg/DFGJITCode.cpp
Source/JavaScriptCore/dfg/DFGJITCode.h
Source/JavaScriptCore/dfg/DFGJITCompiler.cpp
Source/JavaScriptCore/dfg/DFGJITCompiler.h
Source/JavaScriptCore/dfg/DFGJITFinalizer.cpp
Source/JavaScriptCore/dfg/DFGJITFinalizer.h
Source/JavaScriptCore/dfg/DFGNode.h
Source/JavaScriptCore/dfg/DFGNodeFlags.cpp
Source/JavaScriptCore/dfg/DFGOSRAvailabilityAnalysisPhase.cpp
Source/JavaScriptCore/dfg/DFGOSREntry.cpp
Source/JavaScriptCore/dfg/DFGOSREntrypointCreationPhase.cpp
Source/JavaScriptCore/dfg/DFGOSRExit.h
Source/JavaScriptCore/dfg/DFGOSRExitBase.cpp
Source/JavaScriptCore/dfg/DFGOSRExitBase.h
Source/JavaScriptCore/dfg/DFGOSRExitCompiler.cpp
Source/JavaScriptCore/dfg/DFGOSRExitCompiler32_64.cpp
Source/JavaScriptCore/dfg/DFGOSRExitCompiler64.cpp
Source/JavaScriptCore/dfg/DFGOSRExitCompilerCommon.cpp
Source/JavaScriptCore/dfg/DFGOperations.cpp
Source/JavaScriptCore/dfg/DFGPlan.cpp
Source/JavaScriptCore/dfg/DFGPlan.h
Source/JavaScriptCore/dfg/DFGSSALoweringPhase.cpp
Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp
Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp
Source/JavaScriptCore/dfg/DFGTierUpCheckInjectionPhase.cpp
Source/JavaScriptCore/dfg/DFGValidate.cpp
Source/JavaScriptCore/dfg/DFGWorklist.cpp
Source/JavaScriptCore/dfg/DFGWorklist.h
Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.cpp
Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h
Source/JavaScriptCore/ftl/FTLAbbreviations.h
Source/JavaScriptCore/ftl/FTLAbstractHeap.cpp
Source/JavaScriptCore/ftl/FTLAbstractHeap.h
Source/JavaScriptCore/ftl/FTLAbstractHeapRepository.cpp
Source/JavaScriptCore/ftl/FTLAbstractHeapRepository.h
Source/JavaScriptCore/ftl/FTLAvailableRecovery.cpp [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLAvailableRecovery.h [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLCapabilities.cpp
Source/JavaScriptCore/ftl/FTLCommonValues.cpp
Source/JavaScriptCore/ftl/FTLCommonValues.h
Source/JavaScriptCore/ftl/FTLCompile.cpp
Source/JavaScriptCore/ftl/FTLExitValue.cpp
Source/JavaScriptCore/ftl/FTLExitValue.h
Source/JavaScriptCore/ftl/FTLInlineCacheSize.cpp
Source/JavaScriptCore/ftl/FTLInlineCacheSize.h
Source/JavaScriptCore/ftl/FTLIntrinsicRepository.h
Source/JavaScriptCore/ftl/FTLJITCode.cpp
Source/JavaScriptCore/ftl/FTLJITCode.h
Source/JavaScriptCore/ftl/FTLJITFinalizer.cpp
Source/JavaScriptCore/ftl/FTLJITFinalizer.h
Source/JavaScriptCore/ftl/FTLJSCall.cpp [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLJSCall.h [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLLink.cpp
Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp
Source/JavaScriptCore/ftl/FTLOSREntry.cpp
Source/JavaScriptCore/ftl/FTLOSRExit.h
Source/JavaScriptCore/ftl/FTLOSRExitCompiler.cpp
Source/JavaScriptCore/ftl/FTLOutput.h
Source/JavaScriptCore/ftl/FTLRecoveryOpcode.cpp [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLRecoveryOpcode.h [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLRegisterAtOffset.cpp [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLRegisterAtOffset.h [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLSlowPathCall.cpp
Source/JavaScriptCore/ftl/FTLSlowPathCall.h
Source/JavaScriptCore/ftl/FTLStackMaps.cpp
Source/JavaScriptCore/ftl/FTLStackMaps.h
Source/JavaScriptCore/ftl/FTLState.cpp
Source/JavaScriptCore/ftl/FTLState.h
Source/JavaScriptCore/ftl/FTLThunks.cpp
Source/JavaScriptCore/ftl/FTLThunks.h
Source/JavaScriptCore/ftl/FTLUnwindInfo.cpp [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLUnwindInfo.h [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLValueRange.cpp [new file with mode: 0644]
Source/JavaScriptCore/ftl/FTLValueRange.h [new file with mode: 0644]
Source/JavaScriptCore/heap/ConservativeRoots.cpp
Source/JavaScriptCore/heap/Heap.cpp
Source/JavaScriptCore/heap/Heap.h
Source/JavaScriptCore/heap/MachineStackMarker.cpp
Source/JavaScriptCore/heap/MachineStackMarker.h
Source/JavaScriptCore/interpreter/CallFrame.cpp
Source/JavaScriptCore/interpreter/CallFrame.h
Source/JavaScriptCore/interpreter/Interpreter.cpp
Source/JavaScriptCore/interpreter/Interpreter.h
Source/JavaScriptCore/interpreter/JSStack.cpp
Source/JavaScriptCore/interpreter/JSStack.h
Source/JavaScriptCore/interpreter/JSStackInlines.h
Source/JavaScriptCore/interpreter/ProtoCallFrame.cpp
Source/JavaScriptCore/interpreter/ProtoCallFrame.h
Source/JavaScriptCore/jit/ArityCheckFailReturnThunks.cpp [new file with mode: 0644]
Source/JavaScriptCore/jit/ArityCheckFailReturnThunks.h [new file with mode: 0644]
Source/JavaScriptCore/jit/AssemblyHelpers.cpp
Source/JavaScriptCore/jit/AssemblyHelpers.h
Source/JavaScriptCore/jit/CCallHelpers.h
Source/JavaScriptCore/jit/ExecutableAllocator.h
Source/JavaScriptCore/jit/JIT.cpp
Source/JavaScriptCore/jit/JIT.h
Source/JavaScriptCore/jit/JITCall.cpp
Source/JavaScriptCore/jit/JITCall32_64.cpp
Source/JavaScriptCore/jit/JITCode.cpp
Source/JavaScriptCore/jit/JITCode.h
Source/JavaScriptCore/jit/JITExceptions.cpp
Source/JavaScriptCore/jit/JITInlineCacheGenerator.cpp
Source/JavaScriptCore/jit/JITInlineCacheGenerator.h
Source/JavaScriptCore/jit/JITInlines.h
Source/JavaScriptCore/jit/JITOpcodes.cpp
Source/JavaScriptCore/jit/JITOpcodes32_64.cpp
Source/JavaScriptCore/jit/JITOperations.cpp
Source/JavaScriptCore/jit/JITOperations.h
Source/JavaScriptCore/jit/JITPropertyAccess.cpp
Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp
Source/JavaScriptCore/jit/JITStubRoutine.h
Source/JavaScriptCore/jit/JITStubs.h
Source/JavaScriptCore/jit/JITStubsMSVC64.asm [deleted file]
Source/JavaScriptCore/jit/JITStubsX86.h
Source/JavaScriptCore/jit/JITThunks.cpp
Source/JavaScriptCore/jit/JITThunks.h
Source/JavaScriptCore/jit/RegisterPreservationWrapperGenerator.cpp [new file with mode: 0644]
Source/JavaScriptCore/jit/RegisterPreservationWrapperGenerator.h [new file with mode: 0644]
Source/JavaScriptCore/jit/Repatch.cpp
Source/JavaScriptCore/jit/Repatch.h
Source/JavaScriptCore/jit/SpecializedThunkJIT.h
Source/JavaScriptCore/jit/ThunkGenerators.cpp
Source/JavaScriptCore/jit/ThunkGenerators.h
Source/JavaScriptCore/llint/LLIntCLoop.cpp
Source/JavaScriptCore/llint/LLIntCLoop.h
Source/JavaScriptCore/llint/LLIntData.cpp
Source/JavaScriptCore/llint/LLIntEntrypoint.cpp
Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp
Source/JavaScriptCore/llint/LLIntOpcode.h
Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
Source/JavaScriptCore/llint/LLIntSlowPaths.h
Source/JavaScriptCore/llint/LLIntThunks.cpp
Source/JavaScriptCore/llint/LLIntThunks.h
Source/JavaScriptCore/llint/LowLevelInterpreter.asm
Source/JavaScriptCore/llint/LowLevelInterpreter.cpp
Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
Source/JavaScriptCore/llint/LowLevelInterpreter64.asm
Source/JavaScriptCore/llvm/library/LLVMExports.cpp
Source/JavaScriptCore/offlineasm/arm.rb
Source/JavaScriptCore/offlineasm/arm64.rb
Source/JavaScriptCore/offlineasm/cloop.rb
Source/JavaScriptCore/offlineasm/instructions.rb
Source/JavaScriptCore/offlineasm/x86.rb
Source/JavaScriptCore/parser/ParserError.h
Source/JavaScriptCore/profiler/ProfilerCompilation.cpp
Source/JavaScriptCore/profiler/ProfilerCompilation.h
Source/JavaScriptCore/profiler/ProfilerCompilationKind.cpp
Source/JavaScriptCore/profiler/ProfilerCompilationKind.h
Source/JavaScriptCore/runtime/ArityCheckMode.h [new file with mode: 0644]
Source/JavaScriptCore/runtime/CommonSlowPaths.cpp
Source/JavaScriptCore/runtime/CommonSlowPaths.h
Source/JavaScriptCore/runtime/ErrorHandlingScope.cpp [new file with mode: 0644]
Source/JavaScriptCore/runtime/ErrorHandlingScope.h [new file with mode: 0644]
Source/JavaScriptCore/runtime/ExceptionHelpers.cpp
Source/JavaScriptCore/runtime/Executable.cpp
Source/JavaScriptCore/runtime/Executable.h
Source/JavaScriptCore/runtime/JSCJSValue.h
Source/JavaScriptCore/runtime/JSLock.cpp
Source/JavaScriptCore/runtime/JSLock.h
Source/JavaScriptCore/runtime/JSONObject.cpp
Source/JavaScriptCore/runtime/Options.cpp
Source/JavaScriptCore/runtime/Options.h
Source/JavaScriptCore/runtime/RegisterPreservationMode.h [new file with mode: 0644]
Source/JavaScriptCore/runtime/StackAlignment.h
Source/JavaScriptCore/runtime/StringRecursionChecker.cpp
Source/JavaScriptCore/runtime/Structure.cpp
Source/JavaScriptCore/runtime/VM.cpp
Source/JavaScriptCore/runtime/VM.h
Source/JavaScriptCore/runtime/VMEntryScope.cpp
Source/JavaScriptCore/runtime/VMEntryScope.h
Source/JavaScriptCore/tests/stress/add-constant-overflow-recovery.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/add-int52-constant-overflow-recovery.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/add-int52-large-constant-overflow-recovery.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/add-overflow-recovery.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/add-small-constant-overflow-recovery.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/array-push.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/empty-function.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/exit-after-int32-to-double.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/exit-after-int52-to-double.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/exit-after-int52-to-value.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/exit-after-llvm-folds-large-int-constant.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/exit-from-ftl-with-arity-check-fail.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/ftl-arithcos.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/ftl-arithsin.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/ftl-arithsqrt.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/ftl-putbyid.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/ftl-putbyiddirect.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/ftl-to-ftl-arity-fixup.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/get-by-id-throw-from-getter-through-optimized-code.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/get-by-id-throw-from-unexpected-getter-through-optimized-code-that-does-not-exit.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/get-by-id-throw-from-unexpected-getter-through-optimized-code.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/ic-throw-through-optimized-code.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/inline-call-varargs-and-call.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/inline-call-varargs.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/inline-closure-call.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/int16-put-by-val-in-and-out-of-bounds.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/int16-put-by-val-in-bounds-then-exit-out-of-bounds.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/int16-put-by-val-out-of-bounds-bounds-then-do-in-bounds.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/invalidation-point.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/make-rope-2.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/make-rope-3.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/new-array-storage-array-with-size.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/new-array-with-size-with-bad-time.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/new-contiguous-array-with-size.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/new-double-array-with-size.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/new-int32-array-with-size.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/new-undecided-array-with-size.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/not-cell-use.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/put-by-id-throw-through-optimized-code.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/recurse-infinitely-on-getter.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/repeated-arity-check-fail.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/runtime-throw-through-optimized-code.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/simple-polyvariant-call-inlining-example.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/simple-polyvariant-get-by-id-inlining-example.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/simple-polyvariant-put-by-id-inlining-example.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/throw-through-optimized-code.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/to-string-on-object-or-string.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/to-string-on-object.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/to-string-on-string-object.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/to-string-on-string-or-string-object-then-object.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/to-string-on-string-or-string-object.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/to-string-on-value-or-string.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/to-string-on-value.js [new file with mode: 0644]
Source/WTF/ChangeLog
Source/WTF/wtf/BagToHashMap.h
Source/WTF/wtf/Platform.h
Source/WTF/wtf/StackBounds.h
Source/WebCore/ChangeLog
Source/WebCore/ForwardingHeaders/runtime/ErrorHandlingScope.h [new file with mode: 0644]
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
Source/WebCore/bindings/js/JSDOMBinding.cpp
Tools/Scripts/display-profiler-output
Tools/Scripts/run-jsc-stress-tests