OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_GLOBALS_H_ | 5 #ifndef V8_GLOBALS_H_ |
6 #define V8_GLOBALS_H_ | 6 #define V8_GLOBALS_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
124 const int kIntptrSize = sizeof(intptr_t); // NOLINT | 124 const int kIntptrSize = sizeof(intptr_t); // NOLINT |
125 const int kPointerSize = sizeof(void*); // NOLINT | 125 const int kPointerSize = sizeof(void*); // NOLINT |
126 #if V8_TARGET_ARCH_X64 && V8_TARGET_ARCH_32_BIT | 126 #if V8_TARGET_ARCH_X64 && V8_TARGET_ARCH_32_BIT |
127 const int kRegisterSize = kPointerSize + kPointerSize; | 127 const int kRegisterSize = kPointerSize + kPointerSize; |
128 #else | 128 #else |
129 const int kRegisterSize = kPointerSize; | 129 const int kRegisterSize = kPointerSize; |
130 #endif | 130 #endif |
131 const int kPCOnStackSize = kRegisterSize; | 131 const int kPCOnStackSize = kRegisterSize; |
132 const int kFPOnStackSize = kRegisterSize; | 132 const int kFPOnStackSize = kRegisterSize; |
133 | 133 |
| 134 #if V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_IA32 |
| 135 const int kElidedFrameSlots = kPCOnStackSize / kPointerSize; |
| 136 #else |
| 137 const int kElidedFrameSlots = 0; |
| 138 #endif |
| 139 |
134 const int kDoubleSizeLog2 = 3; | 140 const int kDoubleSizeLog2 = 3; |
135 | 141 |
136 #if V8_HOST_ARCH_64_BIT | 142 #if V8_HOST_ARCH_64_BIT |
137 const int kPointerSizeLog2 = 3; | 143 const int kPointerSizeLog2 = 3; |
138 const intptr_t kIntptrSignBit = V8_INT64_C(0x8000000000000000); | 144 const intptr_t kIntptrSignBit = V8_INT64_C(0x8000000000000000); |
139 const uintptr_t kUintptrAllBitsSet = V8_UINT64_C(0xFFFFFFFFFFFFFFFF); | 145 const uintptr_t kUintptrAllBitsSet = V8_UINT64_C(0xFFFFFFFFFFFFFFFF); |
140 const bool kRequiresCodeRange = true; | 146 const bool kRequiresCodeRange = true; |
141 #if V8_TARGET_ARCH_MIPS64 | 147 #if V8_TARGET_ARCH_MIPS64 |
142 // To use pseudo-relative jumps such as j/jal instructions which have 28-bit | 148 // To use pseudo-relative jumps such as j/jal instructions which have 28-bit |
143 // encoded immediate, the addresses have to be in range of 256MB aligned | 149 // encoded immediate, the addresses have to be in range of 256MB aligned |
(...skipping 882 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1026 return static_cast<uint32_t>(bit_cast<uintptr_t>(address) >> | 1032 return static_cast<uint32_t>(bit_cast<uintptr_t>(address) >> |
1027 kPointerSizeLog2); | 1033 kPointerSizeLog2); |
1028 } | 1034 } |
1029 | 1035 |
1030 } // namespace internal | 1036 } // namespace internal |
1031 } // namespace v8 | 1037 } // namespace v8 |
1032 | 1038 |
1033 namespace i = v8::internal; | 1039 namespace i = v8::internal; |
1034 | 1040 |
1035 #endif // V8_GLOBALS_H_ | 1041 #endif // V8_GLOBALS_H_ |
OLD | NEW |