| OLD | NEW |
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 #include <memory> | 9 #include <memory> |
| 10 | 10 |
| (...skipping 7433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7444 DECL_BOOLEAN_ACCESSORS(is_function) | 7444 DECL_BOOLEAN_ACCESSORS(is_function) |
| 7445 | 7445 |
| 7446 // Indicates that code for this function must be compiled through the | 7446 // Indicates that code for this function must be compiled through the |
| 7447 // Ignition / TurboFan pipeline, and is unsupported by | 7447 // Ignition / TurboFan pipeline, and is unsupported by |
| 7448 // FullCodegen / Crankshaft. | 7448 // FullCodegen / Crankshaft. |
| 7449 DECL_BOOLEAN_ACCESSORS(must_use_ignition_turbo) | 7449 DECL_BOOLEAN_ACCESSORS(must_use_ignition_turbo) |
| 7450 | 7450 |
| 7451 // Indicates that code for this function cannot be flushed. | 7451 // Indicates that code for this function cannot be flushed. |
| 7452 DECL_BOOLEAN_ACCESSORS(dont_flush) | 7452 DECL_BOOLEAN_ACCESSORS(dont_flush) |
| 7453 | 7453 |
| 7454 // Indicates that this is a constructor for a base class with instance fields. | |
| 7455 DECL_BOOLEAN_ACCESSORS(requires_class_field_init) | |
| 7456 // Indicates that this is a synthesized function to set up class instance | |
| 7457 // fields. | |
| 7458 DECL_BOOLEAN_ACCESSORS(is_class_field_initializer) | |
| 7459 | |
| 7460 // Indicates that this function is an asm function. | 7454 // Indicates that this function is an asm function. |
| 7461 DECL_BOOLEAN_ACCESSORS(asm_function) | 7455 DECL_BOOLEAN_ACCESSORS(asm_function) |
| 7462 | 7456 |
| 7463 // Indicates that the the shared function info is deserialized from cache. | 7457 // Indicates that the the shared function info is deserialized from cache. |
| 7464 DECL_BOOLEAN_ACCESSORS(deserialized) | 7458 DECL_BOOLEAN_ACCESSORS(deserialized) |
| 7465 | 7459 |
| 7466 // Whether this function was created from a FunctionDeclaration. | 7460 // Whether this function was created from a FunctionDeclaration. |
| 7467 DECL_BOOLEAN_ACCESSORS(is_declaration) | 7461 DECL_BOOLEAN_ACCESSORS(is_declaration) |
| 7468 | 7462 |
| 7469 // Whether this function was marked to be tiered up. | 7463 // Whether this function was marked to be tiered up. |
| (...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7731 static const int kIsTopLevelBit = 1; | 7725 static const int kIsTopLevelBit = 1; |
| 7732 static const int kStartPositionShift = 2; | 7726 static const int kStartPositionShift = 2; |
| 7733 static const int kStartPositionMask = ~((1 << kStartPositionShift) - 1); | 7727 static const int kStartPositionMask = ~((1 << kStartPositionShift) - 1); |
| 7734 | 7728 |
| 7735 // Bit positions in compiler_hints. | 7729 // Bit positions in compiler_hints. |
| 7736 enum CompilerHints { | 7730 enum CompilerHints { |
| 7737 // byte 0 | 7731 // byte 0 |
| 7738 kAllowLazyCompilation, | 7732 kAllowLazyCompilation, |
| 7739 kMarkedForTierUp, | 7733 kMarkedForTierUp, |
| 7740 kOptimizationDisabled, | 7734 kOptimizationDisabled, |
| 7741 kIsClassFieldInitializer, | 7735 kHasDuplicateParameters, |
| 7742 kNative, | 7736 kNative, |
| 7743 kStrictModeFunction, | 7737 kStrictModeFunction, |
| 7744 kUsesArguments, | 7738 kUsesArguments, |
| 7745 kNeedsHomeObject, | 7739 kNeedsHomeObject, |
| 7746 // byte 1 | 7740 // byte 1 |
| 7747 kHasDuplicateParameters, | |
| 7748 kForceInline, | 7741 kForceInline, |
| 7749 kIsAsmFunction, | 7742 kIsAsmFunction, |
| 7750 kIsAnonymousExpression, | 7743 kIsAnonymousExpression, |
| 7751 kNameShouldPrintAsAnonymous, | 7744 kNameShouldPrintAsAnonymous, |
| 7752 kIsFunction, | 7745 kIsFunction, |
| 7753 kMustUseIgnitionTurbo, | 7746 kMustUseIgnitionTurbo, |
| 7754 kDontFlush, | 7747 kDontFlush, |
| 7748 kIsDeclaration, |
| 7755 // byte 2 | 7749 // byte 2 |
| 7756 kFunctionKind, | 7750 kFunctionKind, |
| 7757 // rest of byte 2 and first two bits of byte 3 are used by FunctionKind | 7751 // rest of byte 2 and first two bits of byte 3 are used by FunctionKind |
| 7758 // byte 3 | 7752 // byte 3 |
| 7759 kDeserialized = kFunctionKind + 10, | 7753 kDeserialized = kFunctionKind + 10, |
| 7760 kIsDeclaration, | |
| 7761 kIsAsmWasmBroken, | 7754 kIsAsmWasmBroken, |
| 7762 kRequiresClassFieldInit, | |
| 7763 kCompilerHintsCount, // Pseudo entry | 7755 kCompilerHintsCount, // Pseudo entry |
| 7764 }; | 7756 }; |
| 7765 // kFunctionKind has to be byte-aligned | 7757 // kFunctionKind has to be byte-aligned |
| 7766 STATIC_ASSERT((kFunctionKind % kBitsPerByte) == 0); | 7758 STATIC_ASSERT((kFunctionKind % kBitsPerByte) == 0); |
| 7767 | 7759 |
| 7768 class FunctionKindBits : public BitField<FunctionKind, kFunctionKind, 10> {}; | 7760 class FunctionKindBits : public BitField<FunctionKind, kFunctionKind, 10> {}; |
| 7769 | 7761 |
| 7770 class DeoptCountBits : public BitField<int, 0, 4> {}; | 7762 class DeoptCountBits : public BitField<int, 0, 4> {}; |
| 7771 class OptReenableTriesBits : public BitField<int, 4, 18> {}; | 7763 class OptReenableTriesBits : public BitField<int, 4, 18> {}; |
| 7772 class ICAgeBits : public BitField<int, 22, 8> {}; | 7764 class ICAgeBits : public BitField<int, 22, 8> {}; |
| (...skipping 3980 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11753 } | 11745 } |
| 11754 }; | 11746 }; |
| 11755 | 11747 |
| 11756 | 11748 |
| 11757 } // NOLINT, false-positive due to second-order macros. | 11749 } // NOLINT, false-positive due to second-order macros. |
| 11758 } // NOLINT, false-positive due to second-order macros. | 11750 } // NOLINT, false-positive due to second-order macros. |
| 11759 | 11751 |
| 11760 #include "src/objects/object-macros-undef.h" | 11752 #include "src/objects/object-macros-undef.h" |
| 11761 | 11753 |
| 11762 #endif // V8_OBJECTS_H_ | 11754 #endif // V8_OBJECTS_H_ |
| OLD | NEW |