Index: src/ast.h |
diff --git a/src/ast.h b/src/ast.h |
index 34fadab62d8ec52949ab352a97051ad7ad6ae4f1..353d6068e1361d5da85d7e9657fcbaa3a34ffbad 100644 |
--- a/src/ast.h |
+++ b/src/ast.h |
@@ -1324,7 +1324,9 @@ class CallNew: public Expression { |
: Expression(isolate), |
expression_(expression), |
arguments_(arguments), |
- pos_(pos) { } |
+ pos_(pos), |
+ is_monomorphic_(false), |
+ return_id_(GetNextId(isolate)) { } |
DECLARE_NODE_TYPE(CallNew) |
@@ -1334,10 +1336,22 @@ class CallNew: public Expression { |
ZoneList<Expression*>* arguments() const { return arguments_; } |
virtual int position() const { return pos_; } |
+ void RecordTypeFeedback(TypeFeedbackOracle* oracle); |
+ virtual bool IsMonomorphic() { return is_monomorphic_; } |
+ Handle<JSFunction> target() { return target_; } |
+ |
+ // Bailout support. |
+ int ReturnId() const { return return_id_; } |
+ |
private: |
Expression* expression_; |
ZoneList<Expression*>* arguments_; |
int pos_; |
+ |
+ bool is_monomorphic_; |
+ Handle<JSFunction> target_; |
+ |
+ int return_id_; |
}; |