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 6837 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6848 | 6848 |
6849 // Indicates that this function is a generator. | 6849 // Indicates that this function is a generator. |
6850 DECL_BOOLEAN_ACCESSORS(is_generator) | 6850 DECL_BOOLEAN_ACCESSORS(is_generator) |
6851 | 6851 |
6852 // Indicates that this function is an arrow function. | 6852 // Indicates that this function is an arrow function. |
6853 DECL_BOOLEAN_ACCESSORS(is_arrow) | 6853 DECL_BOOLEAN_ACCESSORS(is_arrow) |
6854 | 6854 |
6855 // Indicates that this function is a concise method. | 6855 // Indicates that this function is a concise method. |
6856 DECL_BOOLEAN_ACCESSORS(is_concise_method) | 6856 DECL_BOOLEAN_ACCESSORS(is_concise_method) |
6857 | 6857 |
| 6858 // Indicates that this function is a default constructor. |
| 6859 DECL_BOOLEAN_ACCESSORS(is_default_constructor) |
| 6860 |
| 6861 // Indicates that this function is a default constructor that needs to call |
| 6862 // super. |
| 6863 DECL_BOOLEAN_ACCESSORS(is_default_constructor_call_super) |
| 6864 |
6858 // Indicates that this function is an asm function. | 6865 // Indicates that this function is an asm function. |
6859 DECL_BOOLEAN_ACCESSORS(asm_function) | 6866 DECL_BOOLEAN_ACCESSORS(asm_function) |
6860 | 6867 |
6861 // Indicates that the the shared function info is deserialized from cache. | 6868 // Indicates that the the shared function info is deserialized from cache. |
6862 DECL_BOOLEAN_ACCESSORS(deserialized) | 6869 DECL_BOOLEAN_ACCESSORS(deserialized) |
6863 | 6870 |
6864 inline FunctionKind kind(); | 6871 inline FunctionKind kind(); |
6865 inline void set_kind(FunctionKind kind); | 6872 inline void set_kind(FunctionKind kind); |
6866 | 6873 |
6867 // Indicates whether or not the code in the shared function support | 6874 // Indicates whether or not the code in the shared function support |
(...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7085 kInlineBuiltin, | 7092 kInlineBuiltin, |
7086 kBoundFunction, | 7093 kBoundFunction, |
7087 kIsAnonymous, | 7094 kIsAnonymous, |
7088 kNameShouldPrintAsAnonymous, | 7095 kNameShouldPrintAsAnonymous, |
7089 kIsFunction, | 7096 kIsFunction, |
7090 kDontCache, | 7097 kDontCache, |
7091 kDontFlush, | 7098 kDontFlush, |
7092 kIsArrow, | 7099 kIsArrow, |
7093 kIsGenerator, | 7100 kIsGenerator, |
7094 kIsConciseMethod, | 7101 kIsConciseMethod, |
| 7102 kIsDefaultConstructor, |
| 7103 kIsDefaultConstructorCallSuper, |
7095 kIsAsmFunction, | 7104 kIsAsmFunction, |
7096 kDeserialized, | 7105 kDeserialized, |
7097 kCompilerHintsCount // Pseudo entry | 7106 kCompilerHintsCount // Pseudo entry |
7098 }; | 7107 }; |
7099 | 7108 |
7100 class FunctionKindBits : public BitField<FunctionKind, kIsArrow, 3> {}; | 7109 class FunctionKindBits : public BitField<FunctionKind, kIsArrow, 5> {}; |
7101 | 7110 |
7102 class DeoptCountBits : public BitField<int, 0, 4> {}; | 7111 class DeoptCountBits : public BitField<int, 0, 4> {}; |
7103 class OptReenableTriesBits : public BitField<int, 4, 18> {}; | 7112 class OptReenableTriesBits : public BitField<int, 4, 18> {}; |
7104 class ICAgeBits : public BitField<int, 22, 8> {}; | 7113 class ICAgeBits : public BitField<int, 22, 8> {}; |
7105 | 7114 |
7106 class OptCountBits : public BitField<int, 0, 22> {}; | 7115 class OptCountBits : public BitField<int, 0, 22> {}; |
7107 class DisabledOptimizationReasonBits : public BitField<int, 22, 8> {}; | 7116 class DisabledOptimizationReasonBits : public BitField<int, 22, 8> {}; |
7108 | 7117 |
7109 private: | 7118 private: |
7110 #if V8_HOST_ARCH_32_BIT | 7119 #if V8_HOST_ARCH_32_BIT |
(...skipping 3822 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10933 } else { | 10942 } else { |
10934 value &= ~(1 << bit_position); | 10943 value &= ~(1 << bit_position); |
10935 } | 10944 } |
10936 return value; | 10945 return value; |
10937 } | 10946 } |
10938 }; | 10947 }; |
10939 | 10948 |
10940 } } // namespace v8::internal | 10949 } } // namespace v8::internal |
10941 | 10950 |
10942 #endif // V8_OBJECTS_H_ | 10951 #endif // V8_OBJECTS_H_ |
OLD | NEW |