| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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_CONSTANTS_ARM64_H_ | 5 #ifndef VM_CONSTANTS_ARM64_H_ |
| 6 #define VM_CONSTANTS_ARM64_H_ | 6 #define VM_CONSTANTS_ARM64_H_ |
| 7 | 7 |
| 8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
| 9 | 9 |
| 10 namespace dart { | 10 namespace dart { |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 (1 << R4) | (1 << R5) | (1 << R6) | (1 << R7) | | 153 (1 << R4) | (1 << R5) | (1 << R6) | (1 << R7) | |
| 154 (1 << R8) | (1 << R9) | (1 << R10) | (1 << R11) | | 154 (1 << R8) | (1 << R9) | (1 << R10) | (1 << R11) | |
| 155 (1 << R12) | (1 << R13) | (1 << R14) | (1 << R15) | | 155 (1 << R12) | (1 << R13) | (1 << R14) | (1 << R15) | |
| 156 (1 << R18) | (1 << R19) | (1 << R20) | (1 << R21) | | 156 (1 << R18) | (1 << R19) | (1 << R20) | (1 << R21) | |
| 157 (1 << R22) | (1 << R23) | (1 << R24) | (1 << R25) | | 157 (1 << R22) | (1 << R23) | (1 << R24) | (1 << R25) | |
| 158 (1 << R26); | 158 (1 << R26); |
| 159 | 159 |
| 160 // Registers available to Dart that are not preserved by runtime calls. | 160 // Registers available to Dart that are not preserved by runtime calls. |
| 161 const RegList kDartVolatileCpuRegs = | 161 const RegList kDartVolatileCpuRegs = |
| 162 kDartAvailableCpuRegs & ~kAbiPreservedCpuRegs; | 162 kDartAvailableCpuRegs & ~kAbiPreservedCpuRegs; |
| 163 const int kDartVolatileCpuRegCount = 17; | 163 const Register kDartFirstVolatileCpuReg = R0; |
| 164 const Register kDartLastVolatileCpuReg = R18; |
| 165 const int kDartVolatileCpuRegCount = 17; // Excluding R16 and R17. |
| 164 const VRegister kDartFirstVolatileFpuReg = V0; | 166 const VRegister kDartFirstVolatileFpuReg = V0; |
| 165 const VRegister kDartLastVolatileFpuReg = V7; | 167 const VRegister kDartLastVolatileFpuReg = V7; |
| 166 const int kDartVolatileFpuRegCount = 8; | 168 const int kDartVolatileFpuRegCount = 8; |
| 167 | 169 |
| 168 static inline Register ConcreteRegister(Register r) { | 170 static inline Register ConcreteRegister(Register r) { |
| 169 return ((r == ZR) || (r == SP)) ? R31 : r; | 171 return ((r == ZR) || (r == SP)) ? R31 : r; |
| 170 } | 172 } |
| 171 | 173 |
| 172 // Values for the condition field as defined in section A3.2. | 174 // Values for the condition field as defined in section A3.2. |
| 173 enum Condition { | 175 enum Condition { |
| (...skipping 618 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 792 static Instr* At(uword pc) { return reinterpret_cast<Instr*>(pc); } | 794 static Instr* At(uword pc) { return reinterpret_cast<Instr*>(pc); } |
| 793 | 795 |
| 794 private: | 796 private: |
| 795 DISALLOW_ALLOCATION(); | 797 DISALLOW_ALLOCATION(); |
| 796 DISALLOW_IMPLICIT_CONSTRUCTORS(Instr); | 798 DISALLOW_IMPLICIT_CONSTRUCTORS(Instr); |
| 797 }; | 799 }; |
| 798 | 800 |
| 799 } // namespace dart | 801 } // namespace dart |
| 800 | 802 |
| 801 #endif // VM_CONSTANTS_ARM64_H_ | 803 #endif // VM_CONSTANTS_ARM64_H_ |
| OLD | NEW |