Index: src/ast.h |
diff --git a/src/ast.h b/src/ast.h |
index f997c44a82d418c76a9bf79b23d050727b860e81..ae7ec1a659bf7bb70ae4faeeadc6763c8bef88a0 100644 |
--- a/src/ast.h |
+++ b/src/ast.h |
@@ -957,9 +957,11 @@ class ForInStatement FINAL : public ForEachStatement { |
ForInType for_in_type() const { return for_in_type_; } |
void set_for_in_type(ForInType type) { for_in_type_ = type; } |
- static int num_ids() { return parent_num_ids() + 2; } |
+ static int num_ids() { return parent_num_ids() + 4; } |
BailoutId BodyId() const { return BailoutId(local_id(0)); } |
BailoutId PrepareId() const { return BailoutId(local_id(1)); } |
+ BailoutId EnumId() const { return BailoutId(local_id(2)); } |
+ BailoutId ToObjectId() const { return BailoutId(local_id(3)); } |
virtual BailoutId ContinueId() const OVERRIDE { return EntryId(); } |
virtual BailoutId StackCheckId() const OVERRIDE { return BodyId(); } |
@@ -1568,11 +1570,15 @@ class ObjectLiteral FINAL : public MaterializedLiteral { |
}; |
struct Accessors: public ZoneObject { |
- Accessors() : getter(NULL), setter(NULL) { } |
+ Accessors() : getter(NULL), setter(NULL) {} |
Expression* getter; |
Expression* setter; |
}; |
+ BailoutId CreateLiteralId() const { return BailoutId(local_id(0)); } |
+ |
+ static int num_ids() { return parent_num_ids() + 1; } |
+ |
protected: |
ObjectLiteral(Zone* zone, ZoneList<Property*>* properties, int literal_index, |
int boilerplate_properties, bool has_function, int pos) |
@@ -1582,8 +1588,10 @@ class ObjectLiteral FINAL : public MaterializedLiteral { |
fast_elements_(false), |
may_store_doubles_(false), |
has_function_(has_function) {} |
+ static int parent_num_ids() { return MaterializedLiteral::num_ids(); } |
private: |
+ int local_id(int n) const { return base_id() + parent_num_ids() + n; } |
Handle<FixedArray> constant_properties_; |
ZoneList<Property*>* properties_; |
int boilerplate_properties_; |