Index: src/full-codegen.h |
diff --git a/src/full-codegen.h b/src/full-codegen.h |
index 2733bdf0f7d12588c51bedc111577c86ee87ba9c..efa93919a325896327ba680844d7369f783fa349 100644 |
--- a/src/full-codegen.h |
+++ b/src/full-codegen.h |
@@ -89,16 +89,11 @@ class FullCodeGenerator: public AstVisitor { |
? info->function()->ast_node_count() : 0), |
stack_checks_(2), // There's always at least one. |
type_feedback_cells_(info->HasDeoptimizationSupport() |
- ? info->function()->ast_node_count() : 0) { } |
+ ? info->function()->ast_node_count() : 0), |
+ ic_total_count_(0) { } |
static bool MakeCode(CompilationInfo* info); |
- void Generate(); |
- void PopulateDeoptimizationData(Handle<Code> code); |
- void PopulateTypeFeedbackCells(Handle<Code> code); |
- |
- Handle<FixedArray> handler_table() { return handler_table_; } |
- |
// Encode state and pc-offset as a BitField<type, start, size>. |
// Only use 30 bits because we encode the result as a smi. |
class StateField : public BitField<State, 0, 1> { }; |
@@ -516,6 +511,10 @@ class FullCodeGenerator: public AstVisitor { |
// accumulator. |
void EmitKeyedPropertyAssignment(Assignment* expr); |
+ void CallIC(Handle<Code> code, |
+ RelocInfo::Mode rmode = RelocInfo::CODE_TARGET, |
+ unsigned ast_id = kNoASTId); |
+ |
void SetFunctionPosition(FunctionLiteral* fun); |
void SetReturnPosition(FunctionLiteral* fun); |
void SetStatementPosition(Statement* stmt); |
@@ -581,6 +580,13 @@ class FullCodeGenerator: public AstVisitor { |
void VisitForTypeofValue(Expression* expr); |
+ void Generate(); |
+ void PopulateDeoptimizationData(Handle<Code> code); |
+ void PopulateTypeFeedbackInfo(Handle<Code> code); |
+ void PopulateTypeFeedbackCells(Handle<Code> code); |
+ |
+ Handle<FixedArray> handler_table() { return handler_table_; } |
+ |
struct BailoutEntry { |
unsigned id; |
unsigned pc_and_state; |
@@ -779,6 +785,7 @@ class FullCodeGenerator: public AstVisitor { |
ZoneList<BailoutEntry> bailout_entries_; |
ZoneList<BailoutEntry> stack_checks_; |
ZoneList<TypeFeedbackCellEntry> type_feedback_cells_; |
+ int ic_total_count_; |
Handle<FixedArray> handler_table_; |
Handle<JSGlobalPropertyCell> profiling_counter_; |