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_AST_AST_H_ | 5 #ifndef V8_AST_AST_H_ |
6 #define V8_AST_AST_H_ | 6 #define V8_AST_AST_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/ast/ast-value-factory.h" | 9 #include "src/ast/ast-value-factory.h" |
10 #include "src/ast/modules.h" | 10 #include "src/ast/modules.h" |
(...skipping 1977 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1988 BailoutId LookupId() const { return BailoutId(local_id(2)); } | 1988 BailoutId LookupId() const { return BailoutId(local_id(2)); } |
1989 BailoutId CallId() const { return BailoutId(local_id(3)); } | 1989 BailoutId CallId() const { return BailoutId(local_id(3)); } |
1990 | 1990 |
1991 bool is_uninitialized() const { | 1991 bool is_uninitialized() const { |
1992 return IsUninitializedField::decode(bit_field_); | 1992 return IsUninitializedField::decode(bit_field_); |
1993 } | 1993 } |
1994 void set_is_uninitialized(bool b) { | 1994 void set_is_uninitialized(bool b) { |
1995 bit_field_ = IsUninitializedField::update(bit_field_, b); | 1995 bit_field_ = IsUninitializedField::update(bit_field_, b); |
1996 } | 1996 } |
1997 | 1997 |
1998 bool is_tail() const { return IsTailField::decode(bit_field_); } | 1998 TailCallMode tail_call_mode() const { |
| 1999 return IsTailField::decode(bit_field_) ? TailCallMode::kAllow |
| 2000 : TailCallMode::kDisallow; |
| 2001 } |
1999 void MarkTail() override { | 2002 void MarkTail() override { |
2000 bit_field_ = IsTailField::update(bit_field_, true); | 2003 bit_field_ = IsTailField::update(bit_field_, true); |
2001 } | 2004 } |
2002 | 2005 |
2003 enum CallType { | 2006 enum CallType { |
2004 POSSIBLY_EVAL_CALL, | 2007 POSSIBLY_EVAL_CALL, |
2005 GLOBAL_CALL, | 2008 GLOBAL_CALL, |
2006 LOOKUP_SLOT_CALL, | 2009 LOOKUP_SLOT_CALL, |
2007 NAMED_PROPERTY_CALL, | 2010 NAMED_PROPERTY_CALL, |
2008 KEYED_PROPERTY_CALL, | 2011 KEYED_PROPERTY_CALL, |
(...skipping 1540 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3549 // the parser-level zone. | 3552 // the parser-level zone. |
3550 Zone* parser_zone_; | 3553 Zone* parser_zone_; |
3551 AstValueFactory* ast_value_factory_; | 3554 AstValueFactory* ast_value_factory_; |
3552 }; | 3555 }; |
3553 | 3556 |
3554 | 3557 |
3555 } // namespace internal | 3558 } // namespace internal |
3556 } // namespace v8 | 3559 } // namespace v8 |
3557 | 3560 |
3558 #endif // V8_AST_AST_H_ | 3561 #endif // V8_AST_AST_H_ |
OLD | NEW |