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 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
194 #endif | 194 #endif |
195 | 195 |
196 // Trigger an incremental GCs once the external memory reaches this limit. | 196 // Trigger an incremental GCs once the external memory reaches this limit. |
197 const int kExternalAllocationSoftLimit = 64 * MB; | 197 const int kExternalAllocationSoftLimit = 64 * MB; |
198 | 198 |
199 // Maximum object size that gets allocated into regular pages. Objects larger | 199 // Maximum object size that gets allocated into regular pages. Objects larger |
200 // than that size are allocated in large object space and are never moved in | 200 // than that size are allocated in large object space and are never moved in |
201 // memory. This also applies to new space allocation, since objects are never | 201 // memory. This also applies to new space allocation, since objects are never |
202 // migrated from new space to large object space. Takes double alignment into | 202 // migrated from new space to large object space. Takes double alignment into |
203 // account. | 203 // account. |
204 const int kMaxRegularHeapObjectSize = 512 * KB - 512; | 204 // |
| 205 // Current value: Page::kAllocatableMemory (on 32-bit arch) - 512 (slack). |
| 206 const int kMaxRegularHeapObjectSize = 507136; |
205 | 207 |
206 STATIC_ASSERT(kPointerSize == (1 << kPointerSizeLog2)); | 208 STATIC_ASSERT(kPointerSize == (1 << kPointerSizeLog2)); |
207 | 209 |
208 const int kBitsPerByte = 8; | 210 const int kBitsPerByte = 8; |
209 const int kBitsPerByteLog2 = 3; | 211 const int kBitsPerByteLog2 = 3; |
210 const int kBitsPerPointer = kPointerSize * kBitsPerByte; | 212 const int kBitsPerPointer = kPointerSize * kBitsPerByte; |
211 const int kBitsPerInt = kIntSize * kBitsPerByte; | 213 const int kBitsPerInt = kIntSize * kBitsPerByte; |
212 | 214 |
213 // IEEE 754 single precision floating point number bit layout. | 215 // IEEE 754 single precision floating point number bit layout. |
214 const uint32_t kBinary32SignMask = 0x80000000u; | 216 const uint32_t kBinary32SignMask = 0x80000000u; |
(...skipping 956 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1171 LIVE_EDIT_FRAME_DROPPED_IN_RETURN_CALL, | 1173 LIVE_EDIT_FRAME_DROPPED_IN_RETURN_CALL, |
1172 LIVE_EDIT_CURRENTLY_SET_MODE | 1174 LIVE_EDIT_CURRENTLY_SET_MODE |
1173 }; | 1175 }; |
1174 | 1176 |
1175 } // namespace internal | 1177 } // namespace internal |
1176 } // namespace v8 | 1178 } // namespace v8 |
1177 | 1179 |
1178 namespace i = v8::internal; | 1180 namespace i = v8::internal; |
1179 | 1181 |
1180 #endif // V8_GLOBALS_H_ | 1182 #endif // V8_GLOBALS_H_ |
OLD | NEW |