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/code-stubs.h" | 7 #include "src/code-stubs.h" |
8 #include "src/api-arguments.h" | 8 #include "src/api-arguments.h" |
9 #include "src/base/bits.h" | 9 #include "src/base/bits.h" |
10 #include "src/bootstrapper.h" | 10 #include "src/bootstrapper.h" |
(...skipping 3650 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3661 } | 3661 } |
3662 masm->LeaveFrame(StackFrame::STUB_FAILURE_TRAMPOLINE); | 3662 masm->LeaveFrame(StackFrame::STUB_FAILURE_TRAMPOLINE); |
3663 __ sll(a1, a1, kPointerSizeLog2); | 3663 __ sll(a1, a1, kPointerSizeLog2); |
3664 __ Ret(USE_DELAY_SLOT); | 3664 __ Ret(USE_DELAY_SLOT); |
3665 __ Addu(sp, sp, a1); | 3665 __ Addu(sp, sp, a1); |
3666 } | 3666 } |
3667 | 3667 |
3668 | 3668 |
3669 void LoadICTrampolineStub::Generate(MacroAssembler* masm) { | 3669 void LoadICTrampolineStub::Generate(MacroAssembler* masm) { |
3670 __ EmitLoadTypeFeedbackVector(LoadWithVectorDescriptor::VectorRegister()); | 3670 __ EmitLoadTypeFeedbackVector(LoadWithVectorDescriptor::VectorRegister()); |
3671 LoadICStub stub(isolate(), state()); | 3671 LoadICStub stub(isolate()); |
3672 stub.GenerateForTrampoline(masm); | 3672 stub.GenerateForTrampoline(masm); |
3673 } | 3673 } |
3674 | 3674 |
3675 | 3675 |
3676 void KeyedLoadICTrampolineStub::Generate(MacroAssembler* masm) { | 3676 void KeyedLoadICTrampolineStub::Generate(MacroAssembler* masm) { |
3677 __ EmitLoadTypeFeedbackVector(LoadWithVectorDescriptor::VectorRegister()); | 3677 __ EmitLoadTypeFeedbackVector(LoadWithVectorDescriptor::VectorRegister()); |
3678 KeyedLoadICStub stub(isolate(), state()); | 3678 KeyedLoadICStub stub(isolate()); |
3679 stub.GenerateForTrampoline(masm); | 3679 stub.GenerateForTrampoline(masm); |
3680 } | 3680 } |
3681 | 3681 |
3682 | 3682 |
3683 void CallICTrampolineStub::Generate(MacroAssembler* masm) { | 3683 void CallICTrampolineStub::Generate(MacroAssembler* masm) { |
3684 __ EmitLoadTypeFeedbackVector(a2); | 3684 __ EmitLoadTypeFeedbackVector(a2); |
3685 CallICStub stub(isolate(), state()); | 3685 CallICStub stub(isolate(), state()); |
3686 __ Jump(stub.GetCode(), RelocInfo::CODE_TARGET); | 3686 __ Jump(stub.GetCode(), RelocInfo::CODE_TARGET); |
3687 } | 3687 } |
3688 | 3688 |
(...skipping 1827 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5516 kStackUnwindSpace, kInvalidStackOffset, | 5516 kStackUnwindSpace, kInvalidStackOffset, |
5517 return_value_operand, NULL); | 5517 return_value_operand, NULL); |
5518 } | 5518 } |
5519 | 5519 |
5520 #undef __ | 5520 #undef __ |
5521 | 5521 |
5522 } // namespace internal | 5522 } // namespace internal |
5523 } // namespace v8 | 5523 } // namespace v8 |
5524 | 5524 |
5525 #endif // V8_TARGET_ARCH_MIPS | 5525 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |