| 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 440 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 451 void bkpt(uint16_t imm16); | 451 void bkpt(uint16_t imm16); |
| 452 void svc(uint32_t imm24, Condition cond = AL); | 452 void svc(uint32_t imm24, Condition cond = AL); |
| 453 | 453 |
| 454 // Floating point instructions (VFPv3-D16 and VFPv3-D32 profiles). | 454 // Floating point instructions (VFPv3-D16 and VFPv3-D32 profiles). |
| 455 void vmovsr(SRegister sn, Register rt, Condition cond = AL); | 455 void vmovsr(SRegister sn, Register rt, Condition cond = AL); |
| 456 void vmovrs(Register rt, SRegister sn, Condition cond = AL); | 456 void vmovrs(Register rt, SRegister sn, Condition cond = AL); |
| 457 void vmovsrr(SRegister sm, Register rt, Register rt2, Condition cond = AL); | 457 void vmovsrr(SRegister sm, Register rt, Register rt2, Condition cond = AL); |
| 458 void vmovrrs(Register rt, Register rt2, SRegister sm, Condition cond = AL); | 458 void vmovrrs(Register rt, Register rt2, SRegister sm, Condition cond = AL); |
| 459 void vmovdrr(DRegister dm, Register rt, Register rt2, Condition cond = AL); | 459 void vmovdrr(DRegister dm, Register rt, Register rt2, Condition cond = AL); |
| 460 void vmovrrd(Register rt, Register rt2, DRegister dm, Condition cond = AL); | 460 void vmovrrd(Register rt, Register rt2, DRegister dm, Condition cond = AL); |
| 461 void vmovdr(DRegister dd, int i, Register rt, Condition cond = AL); |
| 461 void vmovs(SRegister sd, SRegister sm, Condition cond = AL); | 462 void vmovs(SRegister sd, SRegister sm, Condition cond = AL); |
| 462 void vmovd(DRegister dd, DRegister dm, Condition cond = AL); | 463 void vmovd(DRegister dd, DRegister dm, Condition cond = AL); |
| 463 void vmovq(QRegister qd, QRegister qm); | 464 void vmovq(QRegister qd, QRegister qm); |
| 464 | 465 |
| 465 // Returns false if the immediate cannot be encoded. | 466 // Returns false if the immediate cannot be encoded. |
| 466 bool vmovs(SRegister sd, float s_imm, Condition cond = AL); | 467 bool vmovs(SRegister sd, float s_imm, Condition cond = AL); |
| 467 bool vmovd(DRegister dd, double d_imm, Condition cond = AL); | 468 bool vmovd(DRegister dd, double d_imm, Condition cond = AL); |
| 468 | 469 |
| 469 void vldrs(SRegister sd, Address ad, Condition cond = AL); | 470 void vldrs(SRegister sd, Address ad, Condition cond = AL); |
| 470 void vstrs(SRegister sd, Address ad, Condition cond = AL); | 471 void vstrs(SRegister sd, Address ad, Condition cond = AL); |
| (...skipping 522 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 993 Register value, | 994 Register value, |
| 994 Label* no_update); | 995 Label* no_update); |
| 995 | 996 |
| 996 DISALLOW_ALLOCATION(); | 997 DISALLOW_ALLOCATION(); |
| 997 DISALLOW_COPY_AND_ASSIGN(Assembler); | 998 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 998 }; | 999 }; |
| 999 | 1000 |
| 1000 } // namespace dart | 1001 } // namespace dart |
| 1001 | 1002 |
| 1002 #endif // VM_ASSEMBLER_ARM_H_ | 1003 #endif // VM_ASSEMBLER_ARM_H_ |
| OLD | NEW |