| 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 4258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4269 : public BitField<VariableAllocationInfo, ReceiverVariableField::kNext, | 4269 : public BitField<VariableAllocationInfo, ReceiverVariableField::kNext, |
| 4270 2> {}; | 4270 2> {}; |
| 4271 class FunctionVariableMode | 4271 class FunctionVariableMode |
| 4272 : public BitField<VariableMode, FunctionVariableField::kNext, 3> {}; | 4272 : public BitField<VariableMode, FunctionVariableField::kNext, 3> {}; |
| 4273 class AsmModuleField : public BitField<bool, FunctionVariableMode::kNext, 1> { | 4273 class AsmModuleField : public BitField<bool, FunctionVariableMode::kNext, 1> { |
| 4274 }; | 4274 }; |
| 4275 class AsmFunctionField : public BitField<bool, AsmModuleField::kNext, 1> {}; | 4275 class AsmFunctionField : public BitField<bool, AsmModuleField::kNext, 1> {}; |
| 4276 class HasSimpleParametersField | 4276 class HasSimpleParametersField |
| 4277 : public BitField<bool, AsmFunctionField::kNext, 1> {}; | 4277 : public BitField<bool, AsmFunctionField::kNext, 1> {}; |
| 4278 class FunctionKindField | 4278 class FunctionKindField |
| 4279 : public BitField<FunctionKind, HasSimpleParametersField::kNext, 8> {}; | 4279 : public BitField<FunctionKind, HasSimpleParametersField::kNext, 9> {}; |
| 4280 | 4280 |
| 4281 // BitFields representing the encoded information for context locals in the | 4281 // BitFields representing the encoded information for context locals in the |
| 4282 // ContextLocalInfoEntries part. | 4282 // ContextLocalInfoEntries part. |
| 4283 class ContextLocalMode: public BitField<VariableMode, 0, 3> {}; | 4283 class ContextLocalMode: public BitField<VariableMode, 0, 3> {}; |
| 4284 class ContextLocalInitFlag: public BitField<InitializationFlag, 3, 1> {}; | 4284 class ContextLocalInitFlag: public BitField<InitializationFlag, 3, 1> {}; |
| 4285 class ContextLocalMaybeAssignedFlag | 4285 class ContextLocalMaybeAssignedFlag |
| 4286 : public BitField<MaybeAssignedFlag, 4, 1> {}; | 4286 : public BitField<MaybeAssignedFlag, 4, 1> {}; |
| 4287 | 4287 |
| 4288 friend class ScopeIterator; | 4288 friend class ScopeIterator; |
| 4289 }; | 4289 }; |
| (...skipping 2454 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6744 | 6744 |
| 6745 // Indicates that code for this function cannot be compiled with Crankshaft. | 6745 // Indicates that code for this function cannot be compiled with Crankshaft. |
| 6746 DECL_BOOLEAN_ACCESSORS(dont_crankshaft) | 6746 DECL_BOOLEAN_ACCESSORS(dont_crankshaft) |
| 6747 | 6747 |
| 6748 // Indicates that code for this function cannot be flushed. | 6748 // Indicates that code for this function cannot be flushed. |
| 6749 DECL_BOOLEAN_ACCESSORS(dont_flush) | 6749 DECL_BOOLEAN_ACCESSORS(dont_flush) |
| 6750 | 6750 |
| 6751 // Indicates that this function is a generator. | 6751 // Indicates that this function is a generator. |
| 6752 DECL_BOOLEAN_ACCESSORS(is_generator) | 6752 DECL_BOOLEAN_ACCESSORS(is_generator) |
| 6753 | 6753 |
| 6754 // Indicates that this function is an async function. |
| 6755 DECL_BOOLEAN_ACCESSORS(is_async) |
| 6756 |
| 6754 // Indicates that this function is an arrow function. | 6757 // Indicates that this function is an arrow function. |
| 6755 DECL_BOOLEAN_ACCESSORS(is_arrow) | 6758 DECL_BOOLEAN_ACCESSORS(is_arrow) |
| 6756 | 6759 |
| 6757 // Indicates that this function is a concise method. | 6760 // Indicates that this function is a concise method. |
| 6758 DECL_BOOLEAN_ACCESSORS(is_concise_method) | 6761 DECL_BOOLEAN_ACCESSORS(is_concise_method) |
| 6759 | 6762 |
| 6760 // Indicates that this function is an accessor (getter or setter). | 6763 // Indicates that this function is an accessor (getter or setter). |
| 6761 DECL_BOOLEAN_ACCESSORS(is_accessor_function) | 6764 DECL_BOOLEAN_ACCESSORS(is_accessor_function) |
| 6762 | 6765 |
| 6763 // Indicates that this function is a default constructor. | 6766 // Indicates that this function is a default constructor. |
| (...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7028 kNeedsHomeObject, | 7031 kNeedsHomeObject, |
| 7029 kHasDuplicateParameters, | 7032 kHasDuplicateParameters, |
| 7030 kForceInline, | 7033 kForceInline, |
| 7031 kBoundFunction, | 7034 kBoundFunction, |
| 7032 kIsAnonymous, | 7035 kIsAnonymous, |
| 7033 kNameShouldPrintAsAnonymous, | 7036 kNameShouldPrintAsAnonymous, |
| 7034 kIsFunction, | 7037 kIsFunction, |
| 7035 kDontCrankshaft, | 7038 kDontCrankshaft, |
| 7036 kDontFlush, | 7039 kDontFlush, |
| 7037 kIsArrow, | 7040 kIsArrow, |
| 7041 kIsAsync, |
| 7038 kIsGenerator, | 7042 kIsGenerator, |
| 7039 kIsConciseMethod, | 7043 kIsConciseMethod, |
| 7040 kIsAccessorFunction, | 7044 kIsAccessorFunction, |
| 7041 kIsDefaultConstructor, | 7045 kIsDefaultConstructor, |
| 7042 kIsSubclassConstructor, | 7046 kIsSubclassConstructor, |
| 7043 kIsBaseConstructor, | 7047 kIsBaseConstructor, |
| 7044 kInClassLiteral, | 7048 kInClassLiteral, |
| 7045 kIsAsmFunction, | 7049 kIsAsmFunction, |
| 7046 kDeserialized, | 7050 kDeserialized, |
| 7047 kNeverCompiled, | 7051 kNeverCompiled, |
| 7048 kCompilerHintsCount // Pseudo entry | 7052 kCompilerHintsCount // Pseudo entry |
| 7049 }; | 7053 }; |
| 7050 // Add hints for other modes when they're added. | 7054 // Add hints for other modes when they're added. |
| 7051 STATIC_ASSERT(LANGUAGE_END == 3); | 7055 STATIC_ASSERT(LANGUAGE_END == 3); |
| 7052 | 7056 |
| 7053 class FunctionKindBits : public BitField<FunctionKind, kIsArrow, 8> {}; | 7057 class FunctionKindBits : public BitField<FunctionKind, kIsArrow, 9> {}; |
| 7054 | 7058 |
| 7055 class DeoptCountBits : public BitField<int, 0, 4> {}; | 7059 class DeoptCountBits : public BitField<int, 0, 4> {}; |
| 7056 class OptReenableTriesBits : public BitField<int, 4, 18> {}; | 7060 class OptReenableTriesBits : public BitField<int, 4, 18> {}; |
| 7057 class ICAgeBits : public BitField<int, 22, 8> {}; | 7061 class ICAgeBits : public BitField<int, 22, 8> {}; |
| 7058 | 7062 |
| 7059 class OptCountBits : public BitField<int, 0, 22> {}; | 7063 class OptCountBits : public BitField<int, 0, 22> {}; |
| 7060 class DisabledOptimizationReasonBits : public BitField<int, 22, 8> {}; | 7064 class DisabledOptimizationReasonBits : public BitField<int, 22, 8> {}; |
| 7061 | 7065 |
| 7062 private: | 7066 private: |
| 7063 #if V8_HOST_ARCH_32_BIT | 7067 #if V8_HOST_ARCH_32_BIT |
| (...skipping 3772 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10836 // (elements + properties) in the current level. | 10840 // (elements + properties) in the current level. |
| 10837 int levelLength_; | 10841 int levelLength_; |
| 10838 | 10842 |
| 10839 DISALLOW_COPY_AND_ASSIGN(KeyAccumulator); | 10843 DISALLOW_COPY_AND_ASSIGN(KeyAccumulator); |
| 10840 }; | 10844 }; |
| 10841 | 10845 |
| 10842 } // NOLINT, false-positive due to second-order macros. | 10846 } // NOLINT, false-positive due to second-order macros. |
| 10843 } // NOLINT, false-positive due to second-order macros. | 10847 } // NOLINT, false-positive due to second-order macros. |
| 10844 | 10848 |
| 10845 #endif // V8_OBJECTS_H_ | 10849 #endif // V8_OBJECTS_H_ |
| OLD | NEW |