Add "get scope" byte code
https://bugs.webkit.org/show_bug.cgi?id=138326

Reviewed by Mark Lam.

Added op_get_scope.  Added implementations for the LLInt and baseline JIT.
Provided nop implementation for DFG and FTL.  The new byte code is emitted
after op_enter for any function, program or eval.  It is expected that the
DFG will be implemented such that unneeded op_get_scope would be eliminated
during DFG compilation.

* bytecode/BytecodeList.json:
* bytecode/BytecodeUseDef.h:
(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
Added new op_get_scope bytecode.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitGetScope):
* bytecompiler/BytecodeGenerator.h:
Emit new op_get_scope bytecode.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
Added framework for new op_get_scope bytecode.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
* jit/JIT.h:
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_get_scope):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_get_scope):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
Implementation of op_get_scope bytecode.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@175508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update scope related slow path code to use scope register added to opcodes
https://bugs.webkit.org/show_bug.cgi?id=138254

Reviewed by Mark Lam.

Updated slow paths for op_pop_scope, op_push_name_scope and op_push_with_scope.
Added scope register index parameter to the front of the relevant argument lists of the
slow functions.  In the case of op_push_name_scope for x86 (32 bit), there aren't enough
registers to accomodate all the parameters.  Therefore, added two new JSVALUE32_64 slow
paths called operationPushCatchScope() and operationPushFunctionNameScope() to eliminate
the last "type" argument.
        

* assembler/MacroAssemblerCodeRef.h:
(JSC::FunctionPtr::FunctionPtr): Added a new template to take 6 arguments.

* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupArgumentsWithExecState):
* jit/JIT.h:
* jit/JITInlines.h:
(JSC::JIT::callOperation):
New variants of setupArgumentsWithExecState() and callOperation() to handle the new
combinations of argument types and counts.

* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::emit_op_pop_scope):
(JSC::JIT::emit_op_push_name_scope):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::emit_op_pop_scope):
(JSC::JIT::emit_op_push_name_scope):
Use the new slow paths.

* jit/JITOperations.cpp:
* jit/JITOperations.h:
Updates to set the scope result using the scope register index.  Added operationPushCatchScope()
and operationPushFunctionNameScope().

* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
Updated the scope slow paths to use the scope register index in the instruction to read and
write the register instead of using CallFrame::scope() and CallFrame::setScope().


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@175509 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Adding test for array buffer and data view POST in XMLHttpRequest async send.
https://bugs.webkit.org/show_bug.cgi?id=138304

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-11-03
Reviewed by Alexey Proskuryakov.

Adding test for array buffer and data view

* http/tests/xmlhttprequest/send-data-view-async-expected.txt: Added.
* http/tests/xmlhttprequest/send-data-view-async.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@175511 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r175509.
https://bugs.webkit.org/show_bug.cgi?id=138349

broke some builds (Requested by msaboff on #webkit).

Reverted changeset:

"Update scope related slow path code to use scope register
added to opcodes"
https://bugs.webkit.org/show_bug.cgi?id=138254
http://trac.webkit.org/changeset/175509

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