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 7d5d2d3cc6acc0c478a7c6d5ab17f3933f915f23..e5d7016a0136e0c6daba230245f2c33996fba0a1 100644 |
--- a/src/full-codegen/arm/full-codegen-arm.cc |
+++ b/src/full-codegen/arm/full-codegen-arm.cc |
@@ -132,8 +132,7 @@ void FullCodeGenerator::Generate() { |
// Increment invocation count for the function. |
{ |
Comment cmnt(masm_, "[ Increment invocation count"); |
- __ ldr(r2, FieldMemOperand(r1, JSFunction::kLiteralsOffset)); |
- __ ldr(r2, FieldMemOperand(r2, LiteralsArray::kFeedbackVectorOffset)); |
+ __ ldr(r2, FieldMemOperand(r1, JSFunction::kFeedbackVectorOffset)); |
__ ldr(r9, FieldMemOperand(r2, TypeFeedbackVector::kInvocationCountIndex * |
kPointerSize + |
TypeFeedbackVector::kHeaderSize)); |
@@ -1216,7 +1215,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) { |
Handle<BoilerplateDescription> constant_properties = |
expr->GetOrBuildConstantProperties(isolate()); |
__ ldr(r3, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); |
- __ mov(r2, Operand(Smi::FromInt(expr->literal_index()))); |
+ __ mov(r2, Operand(SmiFromSlot(expr->literal_slot()))); |
__ mov(r1, Operand(constant_properties)); |
int flags = expr->ComputeFlags(); |
__ mov(r0, Operand(Smi::FromInt(flags))); |
@@ -1358,7 +1357,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { |
} |
__ ldr(r3, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); |
- __ mov(r2, Operand(Smi::FromInt(expr->literal_index()))); |
+ __ mov(r2, Operand(SmiFromSlot(expr->literal_slot()))); |
__ mov(r1, Operand(constant_elements)); |
if (MustCreateArrayLiteralWithRuntime(expr)) { |
__ mov(r0, Operand(Smi::FromInt(expr->ComputeFlags()))); |