Chromium Code Reviews| 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 417 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 428 | 428 |
| 429 // Returns false if the immediate cannot be encoded. | 429 // Returns false if the immediate cannot be encoded. |
| 430 bool vmovs(SRegister sd, float s_imm, Condition cond = AL); | 430 bool vmovs(SRegister sd, float s_imm, Condition cond = AL); |
| 431 bool vmovd(DRegister dd, double d_imm, Condition cond = AL); | 431 bool vmovd(DRegister dd, double d_imm, Condition cond = AL); |
| 432 | 432 |
| 433 void vldrs(SRegister sd, Address ad, Condition cond = AL); | 433 void vldrs(SRegister sd, Address ad, Condition cond = AL); |
| 434 void vstrs(SRegister sd, Address ad, Condition cond = AL); | 434 void vstrs(SRegister sd, Address ad, Condition cond = AL); |
| 435 void vldrd(DRegister dd, Address ad, Condition cond = AL); | 435 void vldrd(DRegister dd, Address ad, Condition cond = AL); |
| 436 void vstrd(DRegister dd, Address ad, Condition cond = AL); | 436 void vstrd(DRegister dd, Address ad, Condition cond = AL); |
| 437 | 437 |
| 438 void vldmd(BlockAddressMode am, Register base, | |
| 439 DRegister first, DRegister last, Condition cond = AL); | |
| 440 void vstmd(BlockAddressMode am, Register base, | |
| 441 DRegister first, DRegister last, Condition cond = AL); | |
| 442 | |
| 443 void vldms(BlockAddressMode am, Register base, | |
| 444 SRegister first, SRegister last, Condition cond = AL); | |
| 445 void vstms(BlockAddressMode am, Register base, | |
| 446 SRegister first, SRegister last, Condition cond = AL); | |
| 447 | |
|
regis
2013/03/04 17:25:40
We usually list the Single version before the Doub
| |
| 438 void vadds(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); | 448 void vadds(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); |
| 439 void vaddd(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); | 449 void vaddd(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); |
| 440 void vsubs(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); | 450 void vsubs(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); |
| 441 void vsubd(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); | 451 void vsubd(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); |
| 442 void vmuls(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); | 452 void vmuls(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); |
| 443 void vmuld(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); | 453 void vmuld(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); |
| 444 void vmlas(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); | 454 void vmlas(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); |
| 445 void vmlad(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); | 455 void vmlad(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); |
| 446 void vmlss(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); | 456 void vmlss(SRegister sd, SRegister sn, SRegister sm, Condition cond = AL); |
| 447 void vmlsd(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); | 457 void vmlsd(DRegister dd, DRegister dn, DRegister dm, Condition cond = AL); |
| (...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 638 Register rm, | 648 Register rm, |
| 639 ShifterOperand so); | 649 ShifterOperand so); |
| 640 | 650 |
| 641 void EmitMulOp(Condition cond, | 651 void EmitMulOp(Condition cond, |
| 642 int32_t opcode, | 652 int32_t opcode, |
| 643 Register rd, | 653 Register rd, |
| 644 Register rn, | 654 Register rn, |
| 645 Register rm, | 655 Register rm, |
| 646 Register rs); | 656 Register rs); |
| 647 | 657 |
| 658 void EmitMultiVSMemOp(Condition cond, | |
| 659 BlockAddressMode am, | |
| 660 bool load, | |
| 661 Register base, | |
| 662 SRegister start, | |
| 663 uint32_t count); | |
| 664 | |
| 665 void EmitMultiVDMemOp(Condition cond, | |
| 666 BlockAddressMode am, | |
| 667 bool load, | |
| 668 Register base, | |
| 669 DRegister start, | |
| 670 int32_t count); | |
| 671 | |
| 648 void EmitVFPsss(Condition cond, | 672 void EmitVFPsss(Condition cond, |
| 649 int32_t opcode, | 673 int32_t opcode, |
| 650 SRegister sd, | 674 SRegister sd, |
| 651 SRegister sn, | 675 SRegister sn, |
| 652 SRegister sm); | 676 SRegister sm); |
| 653 | 677 |
| 654 void EmitVFPddd(Condition cond, | 678 void EmitVFPddd(Condition cond, |
| 655 int32_t opcode, | 679 int32_t opcode, |
| 656 DRegister dd, | 680 DRegister dd, |
| 657 DRegister dn, | 681 DRegister dn, |
| (...skipping 20 matching lines...) Expand all Loading... | |
| 678 return *reg1 - *reg2; | 702 return *reg1 - *reg2; |
| 679 } | 703 } |
| 680 | 704 |
| 681 DISALLOW_ALLOCATION(); | 705 DISALLOW_ALLOCATION(); |
| 682 DISALLOW_COPY_AND_ASSIGN(Assembler); | 706 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 683 }; | 707 }; |
| 684 | 708 |
| 685 } // namespace dart | 709 } // namespace dart |
| 686 | 710 |
| 687 #endif // VM_ASSEMBLER_ARM_H_ | 711 #endif // VM_ASSEMBLER_ARM_H_ |
| OLD | NEW |