OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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_ARM_CONSTANTS_ARM_H_ | 5 #ifndef V8_ARM_CONSTANTS_ARM_H_ |
6 #define V8_ARM_CONSTANTS_ARM_H_ | 6 #define V8_ARM_CONSTANTS_ARM_H_ |
7 | 7 |
8 // ARM EABI is required. | 8 // ARM EABI is required. |
9 #if defined(__arm__) && !defined(__ARM_EABI__) | 9 #if defined(__arm__) && !defined(__ARM_EABI__) |
10 #error ARM EABI support is required. | 10 #error ARM EABI support is required. |
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
325 | 325 |
326 // ----------------------------------------------------------------------------- | 326 // ----------------------------------------------------------------------------- |
327 // Supervisor Call (svc) specific support. | 327 // Supervisor Call (svc) specific support. |
328 | 328 |
329 // Special Software Interrupt codes when used in the presence of the ARM | 329 // Special Software Interrupt codes when used in the presence of the ARM |
330 // simulator. | 330 // simulator. |
331 // svc (formerly swi) provides a 24bit immediate value. Use bits 22:0 for | 331 // svc (formerly swi) provides a 24bit immediate value. Use bits 22:0 for |
332 // standard SoftwareInterrupCode. Bit 23 is reserved for the stop feature. | 332 // standard SoftwareInterrupCode. Bit 23 is reserved for the stop feature. |
333 enum SoftwareInterruptCodes { | 333 enum SoftwareInterruptCodes { |
334 // transition to C code | 334 // transition to C code |
335 kCallRtRedirected= 0x10, | 335 kCallRtRedirected = 0x10, |
336 // break point | 336 // break point |
337 kBreakpoint= 0x20, | 337 kBreakpoint = 0x20, |
338 // stop | 338 // stop |
339 kStopCode = 1 << 23 | 339 kStopCode = 1 << 23 |
340 }; | 340 }; |
341 const uint32_t kStopCodeMask = kStopCode - 1; | 341 const uint32_t kStopCodeMask = kStopCode - 1; |
342 const uint32_t kMaxStopCode = kStopCode - 1; | 342 const uint32_t kMaxStopCode = kStopCode - 1; |
343 const int32_t kDefaultStopCode = -1; | 343 const int32_t kDefaultStopCode = -1; |
344 | 344 |
345 | 345 |
346 // Type of VFP register. Determines register encoding. | 346 // Type of VFP register. Determines register encoding. |
347 enum VFPRegPrecision { | 347 enum VFPRegPrecision { |
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
686 static int Number(const char* name, bool* is_double); | 686 static int Number(const char* name, bool* is_double); |
687 | 687 |
688 private: | 688 private: |
689 static const char* names_[kNumVFPRegisters]; | 689 static const char* names_[kNumVFPRegisters]; |
690 }; | 690 }; |
691 | 691 |
692 | 692 |
693 } } // namespace v8::internal | 693 } } // namespace v8::internal |
694 | 694 |
695 #endif // V8_ARM_CONSTANTS_ARM_H_ | 695 #endif // V8_ARM_CONSTANTS_ARM_H_ |
OLD | NEW |