| Index: src/ast.h
|
| ===================================================================
|
| --- src/ast.h (revision 6955)
|
| +++ src/ast.h (working copy)
|
| @@ -1211,9 +1211,10 @@
|
| key_(key),
|
| pos_(pos),
|
| type_(type),
|
| + receiver_types_(NULL),
|
| is_monomorphic_(false),
|
| - receiver_types_(NULL),
|
| is_array_length_(false),
|
| + is_string_length_(false),
|
| is_function_prototype_(false),
|
| is_arguments_access_(false) { }
|
|
|
| @@ -1227,6 +1228,7 @@
|
| int position() const { return pos_; }
|
| bool is_synthetic() const { return type_ == SYNTHETIC; }
|
|
|
| + bool IsStringLength() const { return is_string_length_; }
|
| bool IsFunctionPrototype() const { return is_function_prototype_; }
|
|
|
| // Marks that this is actually an argument rewritten to a keyed property
|
| @@ -1251,11 +1253,12 @@
|
| int pos_;
|
| Type type_;
|
|
|
| - bool is_monomorphic_;
|
| ZoneMapList* receiver_types_;
|
| - bool is_array_length_;
|
| - bool is_function_prototype_;
|
| - bool is_arguments_access_;
|
| + bool is_monomorphic_ : 1;
|
| + bool is_array_length_ : 1;
|
| + bool is_string_length_ : 1;
|
| + bool is_function_prototype_ : 1;
|
| + bool is_arguments_access_ : 1;
|
| Handle<Map> monomorphic_receiver_type_;
|
| };
|
|
|
| @@ -1700,7 +1703,8 @@
|
| int start_position,
|
| int end_position,
|
| bool is_expression,
|
| - bool contains_loops)
|
| + bool contains_loops,
|
| + bool strict_mode)
|
| : name_(name),
|
| scope_(scope),
|
| body_(body),
|
| @@ -1714,6 +1718,7 @@
|
| end_position_(end_position),
|
| is_expression_(is_expression),
|
| contains_loops_(contains_loops),
|
| + strict_mode_(strict_mode),
|
| function_token_position_(RelocInfo::kNoPosition),
|
| inferred_name_(HEAP->empty_string()),
|
| try_full_codegen_(false),
|
| @@ -1730,6 +1735,7 @@
|
| int end_position() const { return end_position_; }
|
| bool is_expression() const { return is_expression_; }
|
| bool contains_loops() const { return contains_loops_; }
|
| + bool strict_mode() const { return strict_mode_; }
|
|
|
| int materialized_literal_count() { return materialized_literal_count_; }
|
| int expected_property_count() { return expected_property_count_; }
|
| @@ -1742,7 +1748,6 @@
|
| int num_parameters() { return num_parameters_; }
|
|
|
| bool AllowsLazyCompilation();
|
| - bool AllowOptimize();
|
|
|
| Handle<String> debug_name() const {
|
| if (name_->length() > 0) return name_;
|
| @@ -1773,6 +1778,7 @@
|
| int end_position_;
|
| bool is_expression_;
|
| bool contains_loops_;
|
| + bool strict_mode_;
|
| int function_token_position_;
|
| Handle<String> inferred_name_;
|
| bool try_full_codegen_;
|
|
|