OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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_PLATFORM_GLOBALS_H_ | 5 #ifndef RUNTIME_PLATFORM_GLOBALS_H_ |
6 #define RUNTIME_PLATFORM_GLOBALS_H_ | 6 #define RUNTIME_PLATFORM_GLOBALS_H_ |
7 | 7 |
8 // __STDC_FORMAT_MACROS has to be defined before including <inttypes.h> to | 8 // __STDC_FORMAT_MACROS has to be defined before including <inttypes.h> to |
9 // enable platform independent printf format specifiers. | 9 // enable platform independent printf format specifiers. |
10 #ifndef __STDC_FORMAT_MACROS | 10 #ifndef __STDC_FORMAT_MACROS |
(...skipping 430 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
441 const int64_t kMaxInt64 = DART_INT64_C(0x7FFFFFFFFFFFFFFF); | 441 const int64_t kMaxInt64 = DART_INT64_C(0x7FFFFFFFFFFFFFFF); |
442 const uint64_t kMaxUint64 = DART_2PART_UINT64_C(0xFFFFFFFF, FFFFFFFF); | 442 const uint64_t kMaxUint64 = DART_2PART_UINT64_C(0xFFFFFFFF, FFFFFFFF); |
443 const int64_t kSignBitDouble = DART_INT64_C(0x8000000000000000); | 443 const int64_t kSignBitDouble = DART_INT64_C(0x8000000000000000); |
444 | 444 |
445 // Types for native machine words. Guaranteed to be able to hold pointers and | 445 // Types for native machine words. Guaranteed to be able to hold pointers and |
446 // integers. | 446 // integers. |
447 typedef intptr_t word; | 447 typedef intptr_t word; |
448 typedef uintptr_t uword; | 448 typedef uintptr_t uword; |
449 | 449 |
450 // Size of a class id. | 450 // Size of a class id. |
451 #if defined(ARCH_IS_32_BIT) | |
452 typedef uint16_t classid_t; | 451 typedef uint16_t classid_t; |
453 #elif defined(ARCH_IS_64_BIT) | |
454 typedef uint32_t classid_t; | |
455 #else | |
456 #error Unexpected architecture word size | |
457 #endif | |
458 | 452 |
459 // Byte sizes. | 453 // Byte sizes. |
460 const int kWordSize = sizeof(word); | 454 const int kWordSize = sizeof(word); |
461 const int kDoubleSize = sizeof(double); // NOLINT | 455 const int kDoubleSize = sizeof(double); // NOLINT |
462 const int kFloatSize = sizeof(float); // NOLINT | 456 const int kFloatSize = sizeof(float); // NOLINT |
463 const int kQuadSize = 4 * kFloatSize; | 457 const int kQuadSize = 4 * kFloatSize; |
464 const int kSimd128Size = sizeof(simd128_value_t); // NOLINT | 458 const int kSimd128Size = sizeof(simd128_value_t); // NOLINT |
465 const int kInt64Size = sizeof(int64_t); // NOLINT | 459 const int kInt64Size = sizeof(int64_t); // NOLINT |
466 const int kInt32Size = sizeof(int32_t); // NOLINT | 460 const int kInt32Size = sizeof(int32_t); // NOLINT |
467 const int kInt16Size = sizeof(int16_t); // NOLINT | 461 const int kInt16Size = sizeof(int16_t); // NOLINT |
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
710 // tag in the ICData and check it when recreating the flow graph in | 704 // tag in the ICData and check it when recreating the flow graph in |
711 // optimizing compiler. Enable it for other modes (product, release) if needed | 705 // optimizing compiler. Enable it for other modes (product, release) if needed |
712 // for debugging. | 706 // for debugging. |
713 #if defined(DEBUG) | 707 #if defined(DEBUG) |
714 #define TAG_IC_DATA | 708 #define TAG_IC_DATA |
715 #endif | 709 #endif |
716 | 710 |
717 } // namespace dart | 711 } // namespace dart |
718 | 712 |
719 #endif // RUNTIME_PLATFORM_GLOBALS_H_ | 713 #endif // RUNTIME_PLATFORM_GLOBALS_H_ |
OLD | NEW |