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 7147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7158 | 7158 |
7159 // Indicates that |has_no_side_effect| has been computed and set. | 7159 // Indicates that |has_no_side_effect| has been computed and set. |
7160 DECL_BOOLEAN_ACCESSORS(computed_has_no_side_effect) | 7160 DECL_BOOLEAN_ACCESSORS(computed_has_no_side_effect) |
7161 | 7161 |
7162 // Indicates that the function should be skipped during stepping. | 7162 // Indicates that the function should be skipped during stepping. |
7163 DECL_BOOLEAN_ACCESSORS(debug_is_blackboxed) | 7163 DECL_BOOLEAN_ACCESSORS(debug_is_blackboxed) |
7164 | 7164 |
7165 // Indicates that |debug_is_blackboxed| has been computed and set. | 7165 // Indicates that |debug_is_blackboxed| has been computed and set. |
7166 DECL_BOOLEAN_ACCESSORS(computed_debug_is_blackboxed) | 7166 DECL_BOOLEAN_ACCESSORS(computed_debug_is_blackboxed) |
7167 | 7167 |
| 7168 // Indicates that the function is Promise.all, Promise.race, Promise.resolve |
| 7169 // or Promise.reject. |
| 7170 DECL_BOOLEAN_ACCESSORS(is_promise_builtin) |
| 7171 |
7168 // The function's name if it is non-empty, otherwise the inferred name. | 7172 // The function's name if it is non-empty, otherwise the inferred name. |
7169 String* DebugName(); | 7173 String* DebugName(); |
7170 | 7174 |
7171 // The function cannot cause any side effects. | 7175 // The function cannot cause any side effects. |
7172 bool HasNoSideEffect(); | 7176 bool HasNoSideEffect(); |
7173 | 7177 |
7174 // Used for flags such as --hydrogen-filter. | 7178 // Used for flags such as --hydrogen-filter. |
7175 bool PassesFilter(const char* raw_filter); | 7179 bool PassesFilter(const char* raw_filter); |
7176 | 7180 |
7177 // Position of the 'function' token in the script source. | 7181 // Position of the 'function' token in the script source. |
(...skipping 377 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7555 | 7559 |
7556 // Bit positions in debugger_hints. | 7560 // Bit positions in debugger_hints. |
7557 enum DebuggerHints { | 7561 enum DebuggerHints { |
7558 kIsAnonymousExpression, | 7562 kIsAnonymousExpression, |
7559 kNameShouldPrintAsAnonymous, | 7563 kNameShouldPrintAsAnonymous, |
7560 kDeserialized, | 7564 kDeserialized, |
7561 kHasNoSideEffect, | 7565 kHasNoSideEffect, |
7562 kComputedHasNoSideEffect, | 7566 kComputedHasNoSideEffect, |
7563 kDebugIsBlackboxed, | 7567 kDebugIsBlackboxed, |
7564 kComputedDebugIsBlackboxed, | 7568 kComputedDebugIsBlackboxed, |
| 7569 kIsPromiseBuiltin, |
7565 }; | 7570 }; |
7566 | 7571 |
7567 // kFunctionKind has to be byte-aligned | 7572 // kFunctionKind has to be byte-aligned |
7568 STATIC_ASSERT((kFunctionKind % kBitsPerByte) == 0); | 7573 STATIC_ASSERT((kFunctionKind % kBitsPerByte) == 0); |
7569 | 7574 |
7570 class FunctionKindBits : public BitField<FunctionKind, kFunctionKind, 10> {}; | 7575 class FunctionKindBits : public BitField<FunctionKind, kFunctionKind, 10> {}; |
7571 | 7576 |
7572 class DeoptCountBits : public BitField<int, 0, 4> {}; | 7577 class DeoptCountBits : public BitField<int, 0, 4> {}; |
7573 class OptReenableTriesBits : public BitField<int, 4, 18> {}; | 7578 class OptReenableTriesBits : public BitField<int, 4, 18> {}; |
7574 class ICAgeBits : public BitField<int, 22, 8> {}; | 7579 class ICAgeBits : public BitField<int, 22, 8> {}; |
(...skipping 4006 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11581 } | 11586 } |
11582 }; | 11587 }; |
11583 | 11588 |
11584 | 11589 |
11585 } // NOLINT, false-positive due to second-order macros. | 11590 } // NOLINT, false-positive due to second-order macros. |
11586 } // NOLINT, false-positive due to second-order macros. | 11591 } // NOLINT, false-positive due to second-order macros. |
11587 | 11592 |
11588 #include "src/objects/object-macros-undef.h" | 11593 #include "src/objects/object-macros-undef.h" |
11589 | 11594 |
11590 #endif // V8_OBJECTS_H_ | 11595 #endif // V8_OBJECTS_H_ |
OLD | NEW |