| 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 <iosfwd> | 8 #include <iosfwd> |
| 9 | 9 |
| 10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
| (...skipping 5467 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5478 class NumberOfOwnDescriptorsBits: public BitField<int, | 5478 class NumberOfOwnDescriptorsBits: public BitField<int, |
| 5479 kDescriptorIndexBitCount, kDescriptorIndexBitCount> {}; // NOLINT | 5479 kDescriptorIndexBitCount, kDescriptorIndexBitCount> {}; // NOLINT |
| 5480 STATIC_ASSERT(kDescriptorIndexBitCount + kDescriptorIndexBitCount == 20); | 5480 STATIC_ASSERT(kDescriptorIndexBitCount + kDescriptorIndexBitCount == 20); |
| 5481 class DictionaryMap : public BitField<bool, 20, 1> {}; | 5481 class DictionaryMap : public BitField<bool, 20, 1> {}; |
| 5482 class OwnsDescriptors : public BitField<bool, 21, 1> {}; | 5482 class OwnsDescriptors : public BitField<bool, 21, 1> {}; |
| 5483 class IsHiddenPrototype : public BitField<bool, 22, 1> {}; | 5483 class IsHiddenPrototype : public BitField<bool, 22, 1> {}; |
| 5484 class Deprecated : public BitField<bool, 23, 1> {}; | 5484 class Deprecated : public BitField<bool, 23, 1> {}; |
| 5485 class IsUnstable : public BitField<bool, 24, 1> {}; | 5485 class IsUnstable : public BitField<bool, 24, 1> {}; |
| 5486 class IsMigrationTarget : public BitField<bool, 25, 1> {}; | 5486 class IsMigrationTarget : public BitField<bool, 25, 1> {}; |
| 5487 class IsStrong : public BitField<bool, 26, 1> {}; | 5487 class IsStrong : public BitField<bool, 26, 1> {}; |
| 5488 // Bit 27 is free. | 5488 class NewTargetIsBase : public BitField<bool, 27, 1> {}; |
| 5489 | 5489 |
| 5490 // Keep this bit field at the very end for better code in | 5490 // Keep this bit field at the very end for better code in |
| 5491 // Builtins::kJSConstructStubGeneric stub. | 5491 // Builtins::kJSConstructStubGeneric stub. |
| 5492 // This counter is used for in-object slack tracking and for map aging. | 5492 // This counter is used for in-object slack tracking and for map aging. |
| 5493 // The in-object slack tracking is considered enabled when the counter is | 5493 // The in-object slack tracking is considered enabled when the counter is |
| 5494 // in the range [kSlackTrackingCounterStart, kSlackTrackingCounterEnd]. | 5494 // in the range [kSlackTrackingCounterStart, kSlackTrackingCounterEnd]. |
| 5495 class Counter : public BitField<int, 28, 4> {}; | 5495 class Counter : public BitField<int, 28, 4> {}; |
| 5496 static const int kSlackTrackingCounterStart = 14; | 5496 static const int kSlackTrackingCounterStart = 14; |
| 5497 static const int kSlackTrackingCounterEnd = 8; | 5497 static const int kSlackTrackingCounterEnd = 8; |
| 5498 static const int kRetainingCounterStart = kSlackTrackingCounterEnd - 1; | 5498 static const int kRetainingCounterStart = kSlackTrackingCounterEnd - 1; |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5541 inline void set_is_observed(); | 5541 inline void set_is_observed(); |
| 5542 inline bool is_observed(); | 5542 inline bool is_observed(); |
| 5543 | 5543 |
| 5544 // Tells whether the instance has a [[Call]] internal method. | 5544 // Tells whether the instance has a [[Call]] internal method. |
| 5545 // This property is implemented according to ES6, section 7.2.3. | 5545 // This property is implemented according to ES6, section 7.2.3. |
| 5546 inline void set_is_callable(); | 5546 inline void set_is_callable(); |
| 5547 inline bool is_callable() const; | 5547 inline bool is_callable() const; |
| 5548 | 5548 |
| 5549 inline void set_is_strong(); | 5549 inline void set_is_strong(); |
| 5550 inline bool is_strong(); | 5550 inline bool is_strong(); |
| 5551 inline void set_new_target_is_base(bool value); |
| 5552 inline bool new_target_is_base(); |
| 5551 inline void set_is_extensible(bool value); | 5553 inline void set_is_extensible(bool value); |
| 5552 inline bool is_extensible(); | 5554 inline bool is_extensible(); |
| 5553 inline void set_is_prototype_map(bool value); | 5555 inline void set_is_prototype_map(bool value); |
| 5554 inline bool is_prototype_map() const; | 5556 inline bool is_prototype_map() const; |
| 5555 | 5557 |
| 5556 inline void set_elements_kind(ElementsKind elements_kind); | 5558 inline void set_elements_kind(ElementsKind elements_kind); |
| 5557 inline ElementsKind elements_kind(); | 5559 inline ElementsKind elements_kind(); |
| 5558 | 5560 |
| 5559 // Tells whether the instance has fast elements that are only Smis. | 5561 // Tells whether the instance has fast elements that are only Smis. |
| 5560 inline bool has_fast_smi_elements(); | 5562 inline bool has_fast_smi_elements(); |
| (...skipping 5147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10708 } | 10710 } |
| 10709 return value; | 10711 return value; |
| 10710 } | 10712 } |
| 10711 }; | 10713 }; |
| 10712 | 10714 |
| 10713 | 10715 |
| 10714 } // NOLINT, false-positive due to second-order macros. | 10716 } // NOLINT, false-positive due to second-order macros. |
| 10715 } // NOLINT, false-positive due to second-order macros. | 10717 } // NOLINT, false-positive due to second-order macros. |
| 10716 | 10718 |
| 10717 #endif // V8_OBJECTS_H_ | 10719 #endif // V8_OBJECTS_H_ |
| OLD | NEW |