OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 // | 4 // |
5 // This is forked from Dart revision df52deea9f25690eb8b66c5995da92b70f7ac1fe | 5 // This is forked from Dart revision df52deea9f25690eb8b66c5995da92b70f7ac1fe |
6 // Please update the (git) revision if we merge changes from Dart. | 6 // Please update the (git) revision if we merge changes from Dart. |
7 // https://code.google.com/p/dart/wiki/GettingTheSource | 7 // https://code.google.com/p/dart/wiki/GettingTheSource |
8 | 8 |
9 #include "vm/globals.h" // NOLINT | 9 #include "vm/globals.h" // NOLINT |
10 #if defined(TARGET_ARCH_ARM) | 10 #if defined(TARGET_ARCH_ARM) |
(...skipping 665 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
676 ASSERT(cond != kNoCondition); | 676 ASSERT(cond != kNoCondition); |
677 int32_t encoding = (static_cast<int32_t>(cond) << kConditionShift) | | 677 int32_t encoding = (static_cast<int32_t>(cond) << kConditionShift) | |
678 B27 | B26 | B22 | B20 | | 678 B27 | B26 | B22 | B20 | |
679 (static_cast<int32_t>(rt2)*B16) | | 679 (static_cast<int32_t>(rt2)*B16) | |
680 (static_cast<int32_t>(rt)*B12) | B11 | B9 | | 680 (static_cast<int32_t>(rt)*B12) | B11 | B9 | |
681 ((static_cast<int32_t>(sm) & 1)*B5) | B4 | | 681 ((static_cast<int32_t>(sm) & 1)*B5) | B4 | |
682 (static_cast<int32_t>(sm) >> 1); | 682 (static_cast<int32_t>(sm) >> 1); |
683 Emit(encoding); | 683 Emit(encoding); |
684 } | 684 } |
685 | 685 |
686 | 686 #if 0 |
| 687 // Moved to ARM32::AssemblerARM32::vmovdqir(). |
687 void Assembler::vmovdr(DRegister dn, int i, Register rt, Condition cond) { | 688 void Assembler::vmovdr(DRegister dn, int i, Register rt, Condition cond) { |
688 ASSERT(TargetCPUFeatures::vfp_supported()); | 689 ASSERT(TargetCPUFeatures::vfp_supported()); |
689 ASSERT((i == 0) || (i == 1)); | 690 ASSERT((i == 0) || (i == 1)); |
690 ASSERT(rt != kNoRegister); | 691 ASSERT(rt != kNoRegister); |
691 ASSERT(rt != SP); | 692 ASSERT(rt != SP); |
692 ASSERT(rt != PC); | 693 ASSERT(rt != PC); |
693 ASSERT(dn != kNoDRegister); | 694 ASSERT(dn != kNoDRegister); |
694 ASSERT(cond != kNoCondition); | 695 ASSERT(cond != kNoCondition); |
695 int32_t encoding = (static_cast<int32_t>(cond) << kConditionShift) | | 696 int32_t encoding = (static_cast<int32_t>(cond) << kConditionShift) | |
696 B27 | B26 | B25 | | 697 B27 | B26 | B25 | |
697 (i*B21) | | 698 (i*B21) | |
698 (static_cast<int32_t>(rt)*B12) | B11 | B9 | B8 | | 699 (static_cast<int32_t>(rt)*B12) | B11 | B9 | B8 | |
699 ((static_cast<int32_t>(dn) >> 4)*B7) | | 700 ((static_cast<int32_t>(dn) >> 4)*B7) | |
700 ((static_cast<int32_t>(dn) & 0xf)*B16) | B4; | 701 ((static_cast<int32_t>(dn) & 0xf)*B16) | B4; |
701 Emit(encoding); | 702 Emit(encoding); |
702 } | 703 } |
703 | 704 |
704 #if 0 | |
705 // Moved to ARM32::AssemblerARM32::vmovdrr(). | 705 // Moved to ARM32::AssemblerARM32::vmovdrr(). |
706 void Assembler::vmovdrr(DRegister dm, Register rt, Register rt2, | 706 void Assembler::vmovdrr(DRegister dm, Register rt, Register rt2, |
707 Condition cond) { | 707 Condition cond) { |
708 ASSERT(TargetCPUFeatures::vfp_supported()); | 708 ASSERT(TargetCPUFeatures::vfp_supported()); |
709 ASSERT(dm != kNoDRegister); | 709 ASSERT(dm != kNoDRegister); |
710 ASSERT(rt != kNoRegister); | 710 ASSERT(rt != kNoRegister); |
711 ASSERT(rt != SP); | 711 ASSERT(rt != SP); |
712 ASSERT(rt != PC); | 712 ASSERT(rt != PC); |
713 ASSERT(rt2 != kNoRegister); | 713 ASSERT(rt2 != kNoRegister); |
714 ASSERT(rt2 != SP); | 714 ASSERT(rt2 != SP); |
(...skipping 2977 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3692 | 3692 |
3693 | 3693 |
3694 const char* Assembler::FpuRegisterName(FpuRegister reg) { | 3694 const char* Assembler::FpuRegisterName(FpuRegister reg) { |
3695 ASSERT((0 <= reg) && (reg < kNumberOfFpuRegisters)); | 3695 ASSERT((0 <= reg) && (reg < kNumberOfFpuRegisters)); |
3696 return fpu_reg_names[reg]; | 3696 return fpu_reg_names[reg]; |
3697 } | 3697 } |
3698 | 3698 |
3699 } // namespace dart | 3699 } // namespace dart |
3700 | 3700 |
3701 #endif // defined TARGET_ARCH_ARM | 3701 #endif // defined TARGET_ARCH_ARM |
OLD | NEW |