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 8484 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8495 DISALLOW_IMPLICIT_CONSTRUCTORS(PolymorphicCodeCacheHashTable); | 8495 DISALLOW_IMPLICIT_CONSTRUCTORS(PolymorphicCodeCacheHashTable); |
8496 }; | 8496 }; |
8497 | 8497 |
8498 | 8498 |
8499 class TypeFeedbackInfo: public Struct { | 8499 class TypeFeedbackInfo: public Struct { |
8500 public: | 8500 public: |
8501 inline int ic_total_count(); | 8501 inline int ic_total_count(); |
8502 inline void set_ic_total_count(int count); | 8502 inline void set_ic_total_count(int count); |
8503 | 8503 |
8504 inline int ic_with_type_info_count(); | 8504 inline int ic_with_type_info_count(); |
8505 inline void change_ic_with_type_info_count(int count); | 8505 inline void change_ic_with_type_info_count(int delta); |
| 8506 |
| 8507 inline int ic_generic_count(); |
| 8508 inline void change_ic_generic_count(int delta); |
8506 | 8509 |
8507 inline void initialize_storage(); | 8510 inline void initialize_storage(); |
8508 | 8511 |
8509 inline void change_own_type_change_checksum(); | 8512 inline void change_own_type_change_checksum(); |
8510 inline int own_type_change_checksum(); | 8513 inline int own_type_change_checksum(); |
8511 | 8514 |
8512 inline void set_inlined_type_change_checksum(int checksum); | 8515 inline void set_inlined_type_change_checksum(int checksum); |
8513 inline bool matches_inlined_type_change_checksum(int checksum); | 8516 inline bool matches_inlined_type_change_checksum(int checksum); |
8514 | 8517 |
8515 | 8518 |
8516 DECLARE_CAST(TypeFeedbackInfo) | 8519 DECLARE_CAST(TypeFeedbackInfo) |
8517 | 8520 |
8518 // Dispatched behavior. | 8521 // Dispatched behavior. |
8519 DECLARE_PRINTER(TypeFeedbackInfo) | 8522 DECLARE_PRINTER(TypeFeedbackInfo) |
8520 DECLARE_VERIFIER(TypeFeedbackInfo) | 8523 DECLARE_VERIFIER(TypeFeedbackInfo) |
8521 | 8524 |
8522 static const int kStorage1Offset = HeapObject::kHeaderSize; | 8525 static const int kStorage1Offset = HeapObject::kHeaderSize; |
8523 static const int kStorage2Offset = kStorage1Offset + kPointerSize; | 8526 static const int kStorage2Offset = kStorage1Offset + kPointerSize; |
8524 static const int kSize = kStorage2Offset + kPointerSize; | 8527 static const int kStorage3Offset = kStorage2Offset + kPointerSize; |
| 8528 static const int kSize = kStorage3Offset + kPointerSize; |
8525 | 8529 |
8526 // TODO(mvstanton): move these sentinel declarations to shared function info. | 8530 // TODO(mvstanton): move these sentinel declarations to shared function info. |
8527 // The object that indicates an uninitialized cache. | 8531 // The object that indicates an uninitialized cache. |
8528 static inline Handle<Object> UninitializedSentinel(Isolate* isolate); | 8532 static inline Handle<Object> UninitializedSentinel(Isolate* isolate); |
8529 | 8533 |
8530 // The object that indicates a megamorphic state. | 8534 // The object that indicates a megamorphic state. |
8531 static inline Handle<Object> MegamorphicSentinel(Isolate* isolate); | 8535 static inline Handle<Object> MegamorphicSentinel(Isolate* isolate); |
8532 | 8536 |
8533 // The object that indicates a monomorphic state of Array with | 8537 // The object that indicates a monomorphic state of Array with |
8534 // ElementsKind | 8538 // ElementsKind |
(...skipping 2725 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11260 } else { | 11264 } else { |
11261 value &= ~(1 << bit_position); | 11265 value &= ~(1 << bit_position); |
11262 } | 11266 } |
11263 return value; | 11267 return value; |
11264 } | 11268 } |
11265 }; | 11269 }; |
11266 | 11270 |
11267 } } // namespace v8::internal | 11271 } } // namespace v8::internal |
11268 | 11272 |
11269 #endif // V8_OBJECTS_H_ | 11273 #endif // V8_OBJECTS_H_ |
OLD | NEW |