| 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 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 314 } | 314 } |
| 315 | 315 |
| 316 Register rm() const { | 316 Register rm() const { |
| 317 return ((kind() == IndexRegister) || (kind() == ScaledIndexRegister)) ? | 317 return ((kind() == IndexRegister) || (kind() == ScaledIndexRegister)) ? |
| 318 Instr::At(reinterpret_cast<uword>(&encoding_))->RmField() : | 318 Instr::At(reinterpret_cast<uword>(&encoding_))->RmField() : |
| 319 kNoRegister; | 319 kNoRegister; |
| 320 } | 320 } |
| 321 | 321 |
| 322 Mode mode() const { return static_cast<Mode>(encoding() & kModeMask); } | 322 Mode mode() const { return static_cast<Mode>(encoding() & kModeMask); } |
| 323 | 323 |
| 324 bool has_writeback() const { |
| 325 return (mode() == PreIndex) || (mode() == PostIndex) || |
| 326 (mode() == NegPreIndex) || (mode() == NegPostIndex); |
| 327 } |
| 328 |
| 324 uint32_t encoding() const { return encoding_; } | 329 uint32_t encoding() const { return encoding_; } |
| 325 | 330 |
| 326 // Encoding for addressing mode 3. | 331 // Encoding for addressing mode 3. |
| 327 uint32_t encoding3() const; | 332 uint32_t encoding3() const; |
| 328 | 333 |
| 329 // Encoding for vfp load/store addressing. | 334 // Encoding for vfp load/store addressing. |
| 330 uint32_t vencoding() const; | 335 uint32_t vencoding() const; |
| 331 | 336 |
| 332 OffsetKind kind() const { return kind_; } | 337 OffsetKind kind() const { return kind_; } |
| 333 | 338 |
| (...skipping 871 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1205 Register new_value, | 1210 Register new_value, |
| 1206 FieldContent old_content); | 1211 FieldContent old_content); |
| 1207 | 1212 |
| 1208 DISALLOW_ALLOCATION(); | 1213 DISALLOW_ALLOCATION(); |
| 1209 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1214 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 1210 }; | 1215 }; |
| 1211 | 1216 |
| 1212 } // namespace dart | 1217 } // namespace dart |
| 1213 | 1218 |
| 1214 #endif // VM_ASSEMBLER_ARM_H_ | 1219 #endif // VM_ASSEMBLER_ARM_H_ |
| OLD | NEW |