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 7151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7162 | 7162 |
7163 // Indicates that |has_no_side_effect| has been computed and set. | 7163 // Indicates that |has_no_side_effect| has been computed and set. |
7164 DECL_BOOLEAN_ACCESSORS(computed_has_no_side_effect) | 7164 DECL_BOOLEAN_ACCESSORS(computed_has_no_side_effect) |
7165 | 7165 |
7166 // Indicates that the function should be skipped during stepping. | 7166 // Indicates that the function should be skipped during stepping. |
7167 DECL_BOOLEAN_ACCESSORS(debug_is_blackboxed) | 7167 DECL_BOOLEAN_ACCESSORS(debug_is_blackboxed) |
7168 | 7168 |
7169 // Indicates that |debug_is_blackboxed| has been computed and set. | 7169 // Indicates that |debug_is_blackboxed| has been computed and set. |
7170 DECL_BOOLEAN_ACCESSORS(computed_debug_is_blackboxed) | 7170 DECL_BOOLEAN_ACCESSORS(computed_debug_is_blackboxed) |
7171 | 7171 |
| 7172 // Indicates that the function is Promise.all, Promise.race, Promise.resolve |
| 7173 // or Promise.reject. |
| 7174 DECL_BOOLEAN_ACCESSORS(is_promise_builtin) |
| 7175 |
7172 // The function's name if it is non-empty, otherwise the inferred name. | 7176 // The function's name if it is non-empty, otherwise the inferred name. |
7173 String* DebugName(); | 7177 String* DebugName(); |
7174 | 7178 |
7175 // The function cannot cause any side effects. | 7179 // The function cannot cause any side effects. |
7176 bool HasNoSideEffect(); | 7180 bool HasNoSideEffect(); |
7177 | 7181 |
7178 // Used for flags such as --hydrogen-filter. | 7182 // Used for flags such as --hydrogen-filter. |
7179 bool PassesFilter(const char* raw_filter); | 7183 bool PassesFilter(const char* raw_filter); |
7180 | 7184 |
7181 // Position of the 'function' token in the script source. | 7185 // Position of the 'function' token in the script source. |
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7558 | 7562 |
7559 // Bit positions in debugger_hints. | 7563 // Bit positions in debugger_hints. |
7560 enum DebuggerHints { | 7564 enum DebuggerHints { |
7561 kIsAnonymousExpression, | 7565 kIsAnonymousExpression, |
7562 kNameShouldPrintAsAnonymous, | 7566 kNameShouldPrintAsAnonymous, |
7563 kDeserialized, | 7567 kDeserialized, |
7564 kHasNoSideEffect, | 7568 kHasNoSideEffect, |
7565 kComputedHasNoSideEffect, | 7569 kComputedHasNoSideEffect, |
7566 kDebugIsBlackboxed, | 7570 kDebugIsBlackboxed, |
7567 kComputedDebugIsBlackboxed, | 7571 kComputedDebugIsBlackboxed, |
| 7572 kIsPromiseBuiltin, |
7568 }; | 7573 }; |
7569 | 7574 |
7570 // kFunctionKind has to be byte-aligned | 7575 // kFunctionKind has to be byte-aligned |
7571 STATIC_ASSERT((kFunctionKind % kBitsPerByte) == 0); | 7576 STATIC_ASSERT((kFunctionKind % kBitsPerByte) == 0); |
7572 | 7577 |
7573 class FunctionKindBits : public BitField<FunctionKind, kFunctionKind, 10> {}; | 7578 class FunctionKindBits : public BitField<FunctionKind, kFunctionKind, 10> {}; |
7574 | 7579 |
7575 class DeoptCountBits : public BitField<int, 0, 4> {}; | 7580 class DeoptCountBits : public BitField<int, 0, 4> {}; |
7576 class OptReenableTriesBits : public BitField<int, 4, 18> {}; | 7581 class OptReenableTriesBits : public BitField<int, 4, 18> {}; |
7577 class ICAgeBits : public BitField<int, 22, 8> {}; | 7582 class ICAgeBits : public BitField<int, 22, 8> {}; |
(...skipping 3964 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11542 } | 11547 } |
11543 }; | 11548 }; |
11544 | 11549 |
11545 | 11550 |
11546 } // NOLINT, false-positive due to second-order macros. | 11551 } // NOLINT, false-positive due to second-order macros. |
11547 } // NOLINT, false-positive due to second-order macros. | 11552 } // NOLINT, false-positive due to second-order macros. |
11548 | 11553 |
11549 #include "src/objects/object-macros-undef.h" | 11554 #include "src/objects/object-macros-undef.h" |
11550 | 11555 |
11551 #endif // V8_OBJECTS_H_ | 11556 #endif // V8_OBJECTS_H_ |
OLD | NEW |