Index: src/hydrogen-instructions.h |
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h |
index ec50f5bdfd2733c3ab9b8d96159c15c2e37e4865..1535be40c3b62c28bd200982a5579791f2a63665 100644 |
--- a/src/hydrogen-instructions.h |
+++ b/src/hydrogen-instructions.h |
@@ -7447,18 +7447,20 @@ class HFunctionLiteral V8_FINAL : public HTemplateInstruction<1> { |
Handle<SharedFunctionInfo> shared_info() const { return shared_info_; } |
bool pretenure() const { return pretenure_; } |
bool has_no_literals() const { return has_no_literals_; } |
- bool is_generator() const { return is_generator_; } |
+ bool is_arrow() const { return IsArrowFunction(kind_); } |
+ bool is_generator() const { return IsGeneratorFunction(kind_); } |
+ bool is_concise_method() const { return IsConciseMethod(kind_); } |
+ FunctionKind kind() const { return kind_; } |
StrictMode strict_mode() const { return strict_mode_; } |
private: |
- HFunctionLiteral(HValue* context, |
- Handle<SharedFunctionInfo> shared, |
+ HFunctionLiteral(HValue* context, Handle<SharedFunctionInfo> shared, |
bool pretenure) |
: HTemplateInstruction<1>(HType::JSObject()), |
shared_info_(shared), |
+ kind_(shared->kind()), |
pretenure_(pretenure), |
has_no_literals_(shared->num_literals() == 0), |
- is_generator_(shared->is_generator()), |
strict_mode_(shared->strict_mode()) { |
SetOperandAt(0, context); |
set_representation(Representation::Tagged()); |
@@ -7468,9 +7470,9 @@ class HFunctionLiteral V8_FINAL : public HTemplateInstruction<1> { |
virtual bool IsDeletable() const V8_OVERRIDE { return true; } |
Handle<SharedFunctionInfo> shared_info_; |
+ FunctionKind kind_; |
bool pretenure_ : 1; |
bool has_no_literals_ : 1; |
- bool is_generator_ : 1; |
StrictMode strict_mode_; |
}; |