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_IA32 | 5 #if V8_TARGET_ARCH_IA32 |
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 3674 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3685 __ pop(edi); // Pop saved function. | 3685 __ pop(edi); // Pop saved function. |
3686 __ pop(eax); // Remove saved parameter count. | 3686 __ pop(eax); // Remove saved parameter count. |
3687 __ pop(eax); // Pop return address. | 3687 __ pop(eax); // Pop return address. |
3688 __ push(edi); // Push function. | 3688 __ push(edi); // Push function. |
3689 __ push(edx); // Push parameters pointer. | 3689 __ push(edx); // Push parameters pointer. |
3690 __ push(ecx); // Push parameter count. | 3690 __ push(ecx); // Push parameter count. |
3691 __ push(eax); // Push return address. | 3691 __ push(eax); // Push return address. |
3692 __ TailCallRuntime(Runtime::kNewSloppyArguments); | 3692 __ TailCallRuntime(Runtime::kNewSloppyArguments); |
3693 } | 3693 } |
3694 | 3694 |
3695 | |
3696 void FastNewStrictArgumentsStub::Generate(MacroAssembler* masm) { | 3695 void FastNewStrictArgumentsStub::Generate(MacroAssembler* masm) { |
3697 // ----------- S t a t e ------------- | 3696 // ----------- S t a t e ------------- |
3698 // -- edi : function | 3697 // -- edi : function |
3699 // -- esi : context | 3698 // -- esi : context |
3700 // -- ebp : frame pointer | 3699 // -- ebp : frame pointer |
3701 // -- esp[0] : return address | 3700 // -- esp[0] : return address |
3702 // ----------------------------------- | 3701 // ----------------------------------- |
3703 __ AssertFunction(edi); | 3702 __ AssertFunction(edi); |
3704 | 3703 |
3705 // Make edx point to the JavaScript frame. | 3704 // Make edx point to the JavaScript frame. |
(...skipping 496 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4202 kStackUnwindSpace, nullptr, return_value_operand, | 4201 kStackUnwindSpace, nullptr, return_value_operand, |
4203 NULL); | 4202 NULL); |
4204 } | 4203 } |
4205 | 4204 |
4206 #undef __ | 4205 #undef __ |
4207 | 4206 |
4208 } // namespace internal | 4207 } // namespace internal |
4209 } // namespace v8 | 4208 } // namespace v8 |
4210 | 4209 |
4211 #endif // V8_TARGET_ARCH_IA32 | 4210 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |