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_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/assert-scope.h" | 9 #include "src/assert-scope.h" |
10 #include "src/builtins.h" | 10 #include "src/builtins.h" |
(...skipping 8392 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8403 static const int kStorage3Offset = kStorage2Offset + kPointerSize; | 8403 static const int kStorage3Offset = kStorage2Offset + kPointerSize; |
8404 static const int kSize = kStorage3Offset + kPointerSize; | 8404 static const int kSize = kStorage3Offset + kPointerSize; |
8405 | 8405 |
8406 // TODO(mvstanton): move these sentinel declarations to shared function info. | 8406 // TODO(mvstanton): move these sentinel declarations to shared function info. |
8407 // The object that indicates an uninitialized cache. | 8407 // The object that indicates an uninitialized cache. |
8408 static inline Handle<Object> UninitializedSentinel(Isolate* isolate); | 8408 static inline Handle<Object> UninitializedSentinel(Isolate* isolate); |
8409 | 8409 |
8410 // The object that indicates a megamorphic state. | 8410 // The object that indicates a megamorphic state. |
8411 static inline Handle<Object> MegamorphicSentinel(Isolate* isolate); | 8411 static inline Handle<Object> MegamorphicSentinel(Isolate* isolate); |
8412 | 8412 |
| 8413 // The object that indicates a premonomorphic state. |
| 8414 static inline Handle<Object> PremonomorphicSentinel(Isolate* isolate); |
| 8415 |
| 8416 // The object that indicates a generic state. |
| 8417 static inline Handle<Object> GenericSentinel(Isolate* isolate); |
| 8418 |
8413 // The object that indicates a monomorphic state of Array with | 8419 // The object that indicates a monomorphic state of Array with |
8414 // ElementsKind | 8420 // ElementsKind |
8415 static inline Handle<Object> MonomorphicArraySentinel(Isolate* isolate, | 8421 static inline Handle<Object> MonomorphicArraySentinel(Isolate* isolate, |
8416 ElementsKind elements_kind); | 8422 ElementsKind elements_kind); |
8417 | 8423 |
8418 // A raw version of the uninitialized sentinel that's safe to read during | 8424 // A raw version of the uninitialized sentinel that's safe to read during |
8419 // garbage collection (e.g., for patching the cache). | 8425 // garbage collection (e.g., for patching the cache). |
8420 static inline Object* RawUninitializedSentinel(Heap* heap); | 8426 static inline Object* RawUninitializedSentinel(Heap* heap); |
8421 | 8427 |
8422 private: | 8428 private: |
(...skipping 2728 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11151 } else { | 11157 } else { |
11152 value &= ~(1 << bit_position); | 11158 value &= ~(1 << bit_position); |
11153 } | 11159 } |
11154 return value; | 11160 return value; |
11155 } | 11161 } |
11156 }; | 11162 }; |
11157 | 11163 |
11158 } } // namespace v8::internal | 11164 } } // namespace v8::internal |
11159 | 11165 |
11160 #endif // V8_OBJECTS_H_ | 11166 #endif // V8_OBJECTS_H_ |
OLD | NEW |