| OLD | NEW |
| 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
| 2 // All Rights Reserved. | 2 // All Rights Reserved. |
| 3 // | 3 // |
| 4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
| 5 // modification, are permitted provided that the following conditions | 5 // modification, are permitted provided that the following conditions |
| 6 // are met: | 6 // are met: |
| 7 // | 7 // |
| 8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
| 9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
| 10 // | 10 // |
| (...skipping 2467 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2478 DCHECK(!base.is(pc)); | 2478 DCHECK(!base.is(pc)); |
| 2479 | 2479 |
| 2480 int sd, d; | 2480 int sd, d; |
| 2481 first.split_code(&sd, &d); | 2481 first.split_code(&sd, &d); |
| 2482 int count = last.code() - first.code() + 1; | 2482 int count = last.code() - first.code() + 1; |
| 2483 emit(cond | B27 | B26 | am | d*B22 | base.code()*B16 | sd*B12 | | 2483 emit(cond | B27 | B26 | am | d*B22 | base.code()*B16 | sd*B12 | |
| 2484 0xA*B8 | count); | 2484 0xA*B8 | count); |
| 2485 } | 2485 } |
| 2486 | 2486 |
| 2487 | 2487 |
| 2488 void Assembler::vmov(const SwVfpRegister dst, float imm) { |
| 2489 mov(ip, Operand(bit_cast<int32_t>(imm))); |
| 2490 vmov(dst, ip); |
| 2491 } |
| 2492 |
| 2493 |
| 2488 static void DoubleAsTwoUInt32(double d, uint32_t* lo, uint32_t* hi) { | 2494 static void DoubleAsTwoUInt32(double d, uint32_t* lo, uint32_t* hi) { |
| 2489 uint64_t i; | 2495 uint64_t i; |
| 2490 memcpy(&i, &d, 8); | 2496 memcpy(&i, &d, 8); |
| 2491 | 2497 |
| 2492 *lo = i & 0xffffffff; | 2498 *lo = i & 0xffffffff; |
| 2493 *hi = i >> 32; | 2499 *hi = i >> 32; |
| 2494 } | 2500 } |
| 2495 | 2501 |
| 2496 | 2502 |
| 2497 // Only works for little endian floating point formats. | 2503 // Only works for little endian floating point formats. |
| (...skipping 1467 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3965 assm->instr_at_put( | 3971 assm->instr_at_put( |
| 3966 rinfo.pc(), Assembler::SetLdrRegisterImmediateOffset(instr, offset)); | 3972 rinfo.pc(), Assembler::SetLdrRegisterImmediateOffset(instr, offset)); |
| 3967 } | 3973 } |
| 3968 } | 3974 } |
| 3969 } | 3975 } |
| 3970 | 3976 |
| 3971 | 3977 |
| 3972 } } // namespace v8::internal | 3978 } } // namespace v8::internal |
| 3973 | 3979 |
| 3974 #endif // V8_TARGET_ARCH_ARM | 3980 #endif // V8_TARGET_ARCH_ARM |
| OLD | NEW |