OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 7547 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7558 ecx, | 7558 ecx, |
7559 edi, | 7559 edi, |
7560 xmm0, | 7560 xmm0, |
7561 &slow_elements_from_double, | 7561 &slow_elements_from_double, |
7562 false); | 7562 false); |
7563 __ pop(edx); | 7563 __ pop(edx); |
7564 __ ret(0); | 7564 __ ret(0); |
7565 } | 7565 } |
7566 | 7566 |
7567 | 7567 |
| 7568 void StubFailureTrampolineStub::Generate(MacroAssembler* masm) { |
| 7569 ASSERT(!Serializer::enabled()); |
| 7570 bool save_fp_regs = CpuFeatures::IsSupported(SSE2); |
| 7571 CEntryStub ces(1, save_fp_regs ? kSaveFPRegs : kDontSaveFPRegs); |
| 7572 __ call(ces.GetCode(), RelocInfo::CODE_TARGET); |
| 7573 masm->LeaveFrame(StackFrame::STUB_FAILURE_TRAMPOLINE); |
| 7574 __ ret(0); // Return to IC Miss stub, continuation still on stack. |
| 7575 } |
| 7576 |
| 7577 |
7568 void ProfileEntryHookStub::MaybeCallEntryHook(MacroAssembler* masm) { | 7578 void ProfileEntryHookStub::MaybeCallEntryHook(MacroAssembler* masm) { |
7569 if (entry_hook_ != NULL) { | 7579 if (entry_hook_ != NULL) { |
7570 ProfileEntryHookStub stub; | 7580 ProfileEntryHookStub stub; |
7571 masm->CallStub(&stub); | 7581 masm->CallStub(&stub); |
7572 } | 7582 } |
7573 } | 7583 } |
7574 | 7584 |
7575 | 7585 |
7576 void ProfileEntryHookStub::Generate(MacroAssembler* masm) { | 7586 void ProfileEntryHookStub::Generate(MacroAssembler* masm) { |
7577 // Ecx is the only volatile register we must save. | 7587 // Ecx is the only volatile register we must save. |
(...skipping 16 matching lines...) Expand all Loading... |
7594 // Restore ecx. | 7604 // Restore ecx. |
7595 __ pop(ecx); | 7605 __ pop(ecx); |
7596 __ ret(0); | 7606 __ ret(0); |
7597 } | 7607 } |
7598 | 7608 |
7599 #undef __ | 7609 #undef __ |
7600 | 7610 |
7601 } } // namespace v8::internal | 7611 } } // namespace v8::internal |
7602 | 7612 |
7603 #endif // V8_TARGET_ARCH_IA32 | 7613 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |