| 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 RUNTIME_VM_ASSEMBLER_ARM_H_ | 5 #ifndef RUNTIME_VM_ASSEMBLER_ARM_H_ |
| 6 #define RUNTIME_VM_ASSEMBLER_ARM_H_ | 6 #define RUNTIME_VM_ASSEMBLER_ARM_H_ |
| 7 | 7 |
| 8 #ifndef RUNTIME_VM_ASSEMBLER_H_ | 8 #ifndef RUNTIME_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 710 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 721 | 721 |
| 722 // Emit a call that shares its object pool entries with other calls | 722 // Emit a call that shares its object pool entries with other calls |
| 723 // that have the same equivalence marker. | 723 // that have the same equivalence marker. |
| 724 void BranchLinkWithEquivalence(const StubEntry& stub_entry, | 724 void BranchLinkWithEquivalence(const StubEntry& stub_entry, |
| 725 const Object& equivalence); | 725 const Object& equivalence); |
| 726 | 726 |
| 727 // Branch and link to [base + offset]. Call sequence is never patched. | 727 // Branch and link to [base + offset]. Call sequence is never patched. |
| 728 void BranchLinkOffset(Register base, int32_t offset); | 728 void BranchLinkOffset(Register base, int32_t offset); |
| 729 | 729 |
| 730 // Add signed immediate value to rd. May clobber IP. | 730 // Add signed immediate value to rd. May clobber IP. |
| 731 void AddImmediate(Register rd, int32_t value, Condition cond = AL); | 731 void AddImmediate(Register rd, int32_t value, Condition cond = AL) { |
| 732 AddImmediate(rd, rd, value, cond); |
| 733 } |
| 734 |
| 735 // Add signed immediate value. May clobber IP. |
| 732 void AddImmediate(Register rd, | 736 void AddImmediate(Register rd, |
| 733 Register rn, | 737 Register rn, |
| 734 int32_t value, | 738 int32_t value, |
| 735 Condition cond = AL); | 739 Condition cond = AL); |
| 736 void AddImmediateSetFlags(Register rd, | 740 void AddImmediateSetFlags(Register rd, |
| 737 Register rn, | 741 Register rn, |
| 738 int32_t value, | 742 int32_t value, |
| 739 Condition cond = AL); | 743 Condition cond = AL); |
| 740 void SubImmediateSetFlags(Register rd, | 744 void SubImmediateSetFlags(Register rd, |
| 741 Register rn, | 745 Register rn, |
| (...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1252 Register value, | 1256 Register value, |
| 1253 Label* no_update); | 1257 Label* no_update); |
| 1254 | 1258 |
| 1255 DISALLOW_ALLOCATION(); | 1259 DISALLOW_ALLOCATION(); |
| 1256 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1260 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 1257 }; | 1261 }; |
| 1258 | 1262 |
| 1259 } // namespace dart | 1263 } // namespace dart |
| 1260 | 1264 |
| 1261 #endif // RUNTIME_VM_ASSEMBLER_ARM_H_ | 1265 #endif // RUNTIME_VM_ASSEMBLER_ARM_H_ |
| OLD | NEW |