| 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 #ifndef VM_ASSEMBLER_ARM_H_ | 5 #ifndef VM_ASSEMBLER_ARM_H_ |
| 6 #define VM_ASSEMBLER_ARM_H_ | 6 #define VM_ASSEMBLER_ARM_H_ |
| 7 | 7 |
| 8 #ifndef VM_ASSEMBLER_H_ | 8 #ifndef VM_ASSEMBLER_H_ |
| 9 #error Do not include assembler_arm.h directly; use assembler.h instead. | 9 #error Do not include assembler_arm.h directly; use assembler.h instead. |
| 10 #endif | 10 #endif |
| (...skipping 646 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 657 void Lsl(Register rd, Register rm, uint32_t shift_imm, Condition cond = AL); | 657 void Lsl(Register rd, Register rm, uint32_t shift_imm, Condition cond = AL); |
| 658 void Lsl(Register rd, Register rm, Register rs, Condition cond = AL); | 658 void Lsl(Register rd, Register rm, Register rs, Condition cond = AL); |
| 659 void Lsr(Register rd, Register rm, uint32_t shift_imm, Condition cond = AL); | 659 void Lsr(Register rd, Register rm, uint32_t shift_imm, Condition cond = AL); |
| 660 void Lsr(Register rd, Register rm, Register rs, Condition cond = AL); | 660 void Lsr(Register rd, Register rm, Register rs, Condition cond = AL); |
| 661 void Asr(Register rd, Register rm, uint32_t shift_imm, Condition cond = AL); | 661 void Asr(Register rd, Register rm, uint32_t shift_imm, Condition cond = AL); |
| 662 void Asr(Register rd, Register rm, Register rs, Condition cond = AL); | 662 void Asr(Register rd, Register rm, Register rs, Condition cond = AL); |
| 663 void Ror(Register rd, Register rm, uint32_t shift_imm, Condition cond = AL); | 663 void Ror(Register rd, Register rm, uint32_t shift_imm, Condition cond = AL); |
| 664 void Ror(Register rd, Register rm, Register rs, Condition cond = AL); | 664 void Ror(Register rd, Register rm, Register rs, Condition cond = AL); |
| 665 void Rrx(Register rd, Register rm, Condition cond = AL); | 665 void Rrx(Register rd, Register rm, Condition cond = AL); |
| 666 | 666 |
| 667 void Vreciprocalqs(QRegister qd, QRegister qm); |
| 668 void VreciprocalSqrtqs(QRegister qd, QRegister qm); |
| 669 // If qm must be preserved, then provide a (non-QTMP) temporary. |
| 670 void Vsqrtqs(QRegister qd, QRegister qm, QRegister temp = kNoQRegister); |
| 671 void Vdivqs(QRegister qd, QRegister qn, QRegister qm); |
| 672 |
| 667 void SmiTag(Register reg, Condition cond = AL) { | 673 void SmiTag(Register reg, Condition cond = AL) { |
| 668 Lsl(reg, reg, kSmiTagSize, cond); | 674 Lsl(reg, reg, kSmiTagSize, cond); |
| 669 } | 675 } |
| 670 | 676 |
| 671 void SmiUntag(Register reg, Condition cond = AL) { | 677 void SmiUntag(Register reg, Condition cond = AL) { |
| 672 Asr(reg, reg, kSmiTagSize, cond); | 678 Asr(reg, reg, kSmiTagSize, cond); |
| 673 } | 679 } |
| 674 | 680 |
| 675 // Function frame setup and tear down. | 681 // Function frame setup and tear down. |
| 676 void EnterFrame(RegList regs, intptr_t frame_space); | 682 void EnterFrame(RegList regs, intptr_t frame_space); |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 850 Register value, | 856 Register value, |
| 851 Label* no_update); | 857 Label* no_update); |
| 852 | 858 |
| 853 DISALLOW_ALLOCATION(); | 859 DISALLOW_ALLOCATION(); |
| 854 DISALLOW_COPY_AND_ASSIGN(Assembler); | 860 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 855 }; | 861 }; |
| 856 | 862 |
| 857 } // namespace dart | 863 } // namespace dart |
| 858 | 864 |
| 859 #endif // VM_ASSEMBLER_ARM_H_ | 865 #endif // VM_ASSEMBLER_ARM_H_ |
| OLD | NEW |