Index: src/full-codegen/arm/full-codegen-arm.cc |
diff --git a/src/full-codegen/arm/full-codegen-arm.cc b/src/full-codegen/arm/full-codegen-arm.cc |
index 3e020a4365591b9ab3e231ed3f829df2b06f1f6b..e1c0bdf1df03fc531a0af736d810e2408a73696e 100644 |
--- a/src/full-codegen/arm/full-codegen-arm.cc |
+++ b/src/full-codegen/arm/full-codegen-arm.cc |
@@ -128,6 +128,17 @@ void FullCodeGenerator::Generate() { |
info->set_prologue_offset(masm_->pc_offset()); |
__ Prologue(info->GeneratePreagedPrologue()); |
+ // Increment invocation count for the function. |
+ __ ldr(r2, FieldMemOperand(r1, JSFunction::kLiteralsOffset)); |
Michael Starzinger
2016/09/14 07:53:45
suggestion: We could even add a code comment (the
mvstanton
2016/09/14 09:26:09
Let's certainly do so!
Benedikt Meurer
2016/09/14 10:55:44
Done.
|
+ __ ldr(r2, FieldMemOperand(r2, LiteralsArray::kFeedbackVectorOffset)); |
+ __ ldr(r9, FieldMemOperand( |
+ r2, TypeFeedbackVector::kInvocationCountIndex * kPointerSize + |
+ TypeFeedbackVector::kHeaderSize)); |
+ __ add(r9, r9, Operand(Smi::FromInt(1))); |
+ __ str(r9, FieldMemOperand( |
+ r2, TypeFeedbackVector::kInvocationCountIndex * kPointerSize + |
+ TypeFeedbackVector::kHeaderSize)); |
+ |
{ Comment cmnt(masm_, "[ Allocate locals"); |
int locals_count = info->scope()->num_stack_slots(); |
// Generators allocate locals, if any, in context slots. |