OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 728 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
739 #endif | 739 #endif |
740 | 740 |
741 // Tear down the exit frame, pop the arguments, and return. | 741 // Tear down the exit frame, pop the arguments, and return. |
742 mov(sp, Operand(fp)); | 742 mov(sp, Operand(fp)); |
743 ldm(ia_w, sp, fp.bit() | lr.bit()); | 743 ldm(ia_w, sp, fp.bit() | lr.bit()); |
744 if (argument_count.is_valid()) { | 744 if (argument_count.is_valid()) { |
745 add(sp, sp, Operand(argument_count, LSL, kPointerSizeLog2)); | 745 add(sp, sp, Operand(argument_count, LSL, kPointerSizeLog2)); |
746 } | 746 } |
747 } | 747 } |
748 | 748 |
| 749 void MacroAssembler::GetCFunctionDoubleResult(const DoubleRegister dst) { |
| 750 #if !defined(USE_ARM_EABI) |
| 751 UNREACHABLE(); |
| 752 #else |
| 753 vmov(dst, r0, r1); |
| 754 #endif |
| 755 } |
| 756 |
749 | 757 |
750 void MacroAssembler::InvokePrologue(const ParameterCount& expected, | 758 void MacroAssembler::InvokePrologue(const ParameterCount& expected, |
751 const ParameterCount& actual, | 759 const ParameterCount& actual, |
752 Handle<Code> code_constant, | 760 Handle<Code> code_constant, |
753 Register code_reg, | 761 Register code_reg, |
754 Label* done, | 762 Label* done, |
755 InvokeFlag flag, | 763 InvokeFlag flag, |
756 PostCallGenerator* post_call_generator) { | 764 PostCallGenerator* post_call_generator) { |
757 bool definitely_matches = false; | 765 bool definitely_matches = false; |
758 Label regular_invoke; | 766 Label regular_invoke; |
(...skipping 1791 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2550 void CodePatcher::EmitCondition(Condition cond) { | 2558 void CodePatcher::EmitCondition(Condition cond) { |
2551 Instr instr = Assembler::instr_at(masm_.pc_); | 2559 Instr instr = Assembler::instr_at(masm_.pc_); |
2552 instr = (instr & ~kCondMask) | cond; | 2560 instr = (instr & ~kCondMask) | cond; |
2553 masm_.emit(instr); | 2561 masm_.emit(instr); |
2554 } | 2562 } |
2555 | 2563 |
2556 | 2564 |
2557 } } // namespace v8::internal | 2565 } } // namespace v8::internal |
2558 | 2566 |
2559 #endif // V8_TARGET_ARCH_ARM | 2567 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |