| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_ARM64_ASSEMBLER_ARM64_H_ | 5 #ifndef V8_ARM64_ASSEMBLER_ARM64_H_ |
| 6 #define V8_ARM64_ASSEMBLER_ARM64_H_ | 6 #define V8_ARM64_ASSEMBLER_ARM64_H_ |
| 7 | 7 |
| 8 #include <deque> | 8 #include <deque> |
| 9 #include <list> | 9 #include <list> |
| 10 #include <map> | 10 #include <map> |
| (...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 275 static const int kMaxNumAllocatableRegisters = | 275 static const int kMaxNumAllocatableRegisters = |
| 276 (kAllocatableLowRangeEnd - kAllocatableLowRangeBegin + 1) + | 276 (kAllocatableLowRangeEnd - kAllocatableLowRangeBegin + 1) + |
| 277 (kAllocatableHighRangeEnd - kAllocatableHighRangeBegin + 1); | 277 (kAllocatableHighRangeEnd - kAllocatableHighRangeBegin + 1); |
| 278 static int NumAllocatableRegisters() { return kMaxNumAllocatableRegisters; } | 278 static int NumAllocatableRegisters() { return kMaxNumAllocatableRegisters; } |
| 279 | 279 |
| 280 // TODO(turbofan): Proper float32 support. | 280 // TODO(turbofan): Proper float32 support. |
| 281 static int NumAllocatableAliasedRegisters() { | 281 static int NumAllocatableAliasedRegisters() { |
| 282 return NumAllocatableRegisters(); | 282 return NumAllocatableRegisters(); |
| 283 } | 283 } |
| 284 | 284 |
| 285 static int NumAllocatableRegistersForTurbo() { |
| 286 return kMaxNumAllocatableRegisters; |
| 287 } |
| 288 |
| 289 static int NumAllocatableAliasedRegistersForTurbo() { |
| 290 return NumAllocatableAliasedRegisters(); |
| 291 } |
| 292 |
| 285 // Return true if the register is one that crankshaft can allocate. | 293 // Return true if the register is one that crankshaft can allocate. |
| 286 bool IsAllocatable() const { | 294 bool IsAllocatable() const { |
| 287 return (Bit() & kAllocatableFPRegisters) != 0; | 295 return (Bit() & kAllocatableFPRegisters) != 0; |
| 288 } | 296 } |
| 289 | 297 |
| 290 static FPRegister FromAllocationIndex(unsigned int index) { | 298 static FPRegister FromAllocationIndex(unsigned int index) { |
| 291 DCHECK(index < static_cast<unsigned>(NumAllocatableRegisters())); | 299 DCHECK(index < static_cast<unsigned>(NumAllocatableRegisters())); |
| 292 | 300 |
| 293 return (index <= kAllocatableLowRangeEnd) | 301 return (index <= kAllocatableLowRangeEnd) |
| 294 ? from_code(index) | 302 ? from_code(index) |
| (...skipping 2025 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2320 class EnsureSpace BASE_EMBEDDED { | 2328 class EnsureSpace BASE_EMBEDDED { |
| 2321 public: | 2329 public: |
| 2322 explicit EnsureSpace(Assembler* assembler) { | 2330 explicit EnsureSpace(Assembler* assembler) { |
| 2323 assembler->CheckBufferSpace(); | 2331 assembler->CheckBufferSpace(); |
| 2324 } | 2332 } |
| 2325 }; | 2333 }; |
| 2326 | 2334 |
| 2327 } } // namespace v8::internal | 2335 } } // namespace v8::internal |
| 2328 | 2336 |
| 2329 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ | 2337 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ |
| OLD | NEW |