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 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_MIPS | 7 #if V8_TARGET_ARCH_MIPS |
8 | 8 |
9 #include "src/codegen.h" | 9 #include "src/codegen.h" |
10 #include "src/macro-assembler.h" | 10 #include "src/macro-assembler.h" |
(...skipping 809 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
820 // Restore a "smi-untagged" heap object. | 820 // Restore a "smi-untagged" heap object. |
821 __ SmiTag(scratch2); | 821 __ SmiTag(scratch2); |
822 __ Or(scratch2, scratch2, Operand(1)); | 822 __ Or(scratch2, scratch2, Operand(1)); |
823 __ LoadRoot(at, Heap::kTheHoleValueRootIndex); | 823 __ LoadRoot(at, Heap::kTheHoleValueRootIndex); |
824 __ Assert(eq, kObjectFoundInSmiOnlyArray, at, Operand(scratch2)); | 824 __ Assert(eq, kObjectFoundInSmiOnlyArray, at, Operand(scratch2)); |
825 } | 825 } |
826 // mantissa | 826 // mantissa |
827 __ sw(hole_lower, MemOperand(scratch3, Register::kMantissaOffset)); | 827 __ sw(hole_lower, MemOperand(scratch3, Register::kMantissaOffset)); |
828 // exponent | 828 // exponent |
829 __ sw(hole_upper, MemOperand(scratch3, Register::kExponentOffset)); | 829 __ sw(hole_upper, MemOperand(scratch3, Register::kExponentOffset)); |
830 __ bind(&entry); | |
831 __ addiu(scratch3, scratch3, kDoubleSize); | 830 __ addiu(scratch3, scratch3, kDoubleSize); |
832 | 831 |
| 832 __ bind(&entry); |
833 __ Branch(&loop, lt, scratch3, Operand(array_end)); | 833 __ Branch(&loop, lt, scratch3, Operand(array_end)); |
834 | 834 |
835 __ bind(&done); | 835 __ bind(&done); |
836 __ pop(ra); | 836 __ pop(ra); |
837 } | 837 } |
838 | 838 |
839 | 839 |
840 void ElementsTransitionGenerator::GenerateDoubleToObject( | 840 void ElementsTransitionGenerator::GenerateDoubleToObject( |
841 MacroAssembler* masm, | 841 MacroAssembler* masm, |
842 Register receiver, | 842 Register receiver, |
(...skipping 415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1258 patcher.masm()->nop(); // Pad the empty space. | 1258 patcher.masm()->nop(); // Pad the empty space. |
1259 } | 1259 } |
1260 } | 1260 } |
1261 | 1261 |
1262 | 1262 |
1263 #undef __ | 1263 #undef __ |
1264 | 1264 |
1265 } } // namespace v8::internal | 1265 } } // namespace v8::internal |
1266 | 1266 |
1267 #endif // V8_TARGET_ARCH_MIPS | 1267 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |