OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #if V8_TARGET_ARCH_MIPS | 5 #if V8_TARGET_ARCH_MIPS |
6 | 6 |
7 #include "src/codegen.h" | 7 #include "src/codegen.h" |
8 #include "src/debug/debug.h" | 8 #include "src/debug/debug.h" |
9 #include "src/deoptimizer.h" | 9 #include "src/deoptimizer.h" |
10 #include "src/full-codegen/full-codegen.h" | 10 #include "src/full-codegen/full-codegen.h" |
(...skipping 1610 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1621 __ sll(at, a0, kPointerSizeLog2); | 1621 __ sll(at, a0, kPointerSizeLog2); |
1622 __ addu(at, sp, at); | 1622 __ addu(at, sp, at); |
1623 __ sw(a1, MemOperand(at)); | 1623 __ sw(a1, MemOperand(at)); |
1624 // Let the "call_as_function_delegate" take care of the rest. | 1624 // Let the "call_as_function_delegate" take care of the rest. |
1625 __ LoadGlobalFunction(Context::CALL_AS_FUNCTION_DELEGATE_INDEX, a1); | 1625 __ LoadGlobalFunction(Context::CALL_AS_FUNCTION_DELEGATE_INDEX, a1); |
1626 __ Jump(masm->isolate()->builtins()->CallFunction(), RelocInfo::CODE_TARGET); | 1626 __ Jump(masm->isolate()->builtins()->CallFunction(), RelocInfo::CODE_TARGET); |
1627 | 1627 |
1628 // 3. Call to something that is not callable. | 1628 // 3. Call to something that is not callable. |
1629 __ bind(&non_callable); | 1629 __ bind(&non_callable); |
1630 { | 1630 { |
1631 FrameAndConstantPoolScope scope(masm, StackFrame::INTERNAL); | 1631 FrameScope scope(masm, StackFrame::INTERNAL); |
1632 __ Push(a1); | 1632 __ Push(a1); |
1633 __ CallRuntime(Runtime::kThrowCalledNonCallable, 1); | 1633 __ CallRuntime(Runtime::kThrowCalledNonCallable, 1); |
1634 } | 1634 } |
1635 } | 1635 } |
1636 | 1636 |
1637 | 1637 |
1638 // static | 1638 // static |
1639 void Builtins::Generate_ConstructFunction(MacroAssembler* masm) { | 1639 void Builtins::Generate_ConstructFunction(MacroAssembler* masm) { |
1640 // ----------- S t a t e ------------- | 1640 // ----------- S t a t e ------------- |
1641 // -- a0 : the number of arguments (not including the receiver) | 1641 // -- a0 : the number of arguments (not including the receiver) |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1691 __ sll(at, a0, kPointerSizeLog2); | 1691 __ sll(at, a0, kPointerSizeLog2); |
1692 __ addu(at, sp, at); | 1692 __ addu(at, sp, at); |
1693 __ sw(a1, MemOperand(at)); | 1693 __ sw(a1, MemOperand(at)); |
1694 // Let the "call_as_constructor_delegate" take care of the rest. | 1694 // Let the "call_as_constructor_delegate" take care of the rest. |
1695 __ LoadGlobalFunction(Context::CALL_AS_CONSTRUCTOR_DELEGATE_INDEX, a1); | 1695 __ LoadGlobalFunction(Context::CALL_AS_CONSTRUCTOR_DELEGATE_INDEX, a1); |
1696 __ Jump(masm->isolate()->builtins()->CallFunction(), RelocInfo::CODE_TARGET); | 1696 __ Jump(masm->isolate()->builtins()->CallFunction(), RelocInfo::CODE_TARGET); |
1697 | 1697 |
1698 // 3. Construct of something that is not callable. | 1698 // 3. Construct of something that is not callable. |
1699 __ bind(&non_callable); | 1699 __ bind(&non_callable); |
1700 { | 1700 { |
1701 FrameAndConstantPoolScope scope(masm, StackFrame::INTERNAL); | 1701 FrameScope scope(masm, StackFrame::INTERNAL); |
1702 __ Push(a1); | 1702 __ Push(a1); |
1703 __ CallRuntime(Runtime::kThrowCalledNonCallable, 1); | 1703 __ CallRuntime(Runtime::kThrowCalledNonCallable, 1); |
1704 } | 1704 } |
1705 } | 1705 } |
1706 | 1706 |
1707 | 1707 |
1708 // static | 1708 // static |
1709 void Builtins::Generate_PushArgsAndCall(MacroAssembler* masm) { | 1709 void Builtins::Generate_PushArgsAndCall(MacroAssembler* masm) { |
1710 // ----------- S t a t e ------------- | 1710 // ----------- S t a t e ------------- |
1711 // -- a0 : the number of arguments (not including the receiver) | 1711 // -- a0 : the number of arguments (not including the receiver) |
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1886 } | 1886 } |
1887 } | 1887 } |
1888 | 1888 |
1889 | 1889 |
1890 #undef __ | 1890 #undef __ |
1891 | 1891 |
1892 } // namespace internal | 1892 } // namespace internal |
1893 } // namespace v8 | 1893 } // namespace v8 |
1894 | 1894 |
1895 #endif // V8_TARGET_ARCH_MIPS | 1895 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |