| OLD | NEW | 
|---|
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "src/v8.h" | 5 #include "src/v8.h" | 
| 6 | 6 | 
| 7 #if V8_TARGET_ARCH_ARM | 7 #if V8_TARGET_ARCH_ARM | 
| 8 | 8 | 
| 9 #include "src/codegen.h" | 9 #include "src/codegen.h" | 
| 10 #include "src/debug/debug.h" | 10 #include "src/debug/debug.h" | 
| (...skipping 1432 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1443   Register vector = LoadWithVectorDescriptor::VectorRegister(); | 1443   Register vector = LoadWithVectorDescriptor::VectorRegister(); | 
| 1444 | 1444 | 
| 1445   __ ldr(key, MemOperand(fp, indexOffset)); | 1445   __ ldr(key, MemOperand(fp, indexOffset)); | 
| 1446   __ b(&entry); | 1446   __ b(&entry); | 
| 1447 | 1447 | 
| 1448   // Load the current argument from the arguments array. | 1448   // Load the current argument from the arguments array. | 
| 1449   __ bind(&loop); | 1449   __ bind(&loop); | 
| 1450   __ ldr(receiver, MemOperand(fp, argumentsOffset)); | 1450   __ ldr(receiver, MemOperand(fp, argumentsOffset)); | 
| 1451 | 1451 | 
| 1452   // Use inline caching to speed up access to arguments. | 1452   // Use inline caching to speed up access to arguments. | 
| 1453   FeedbackVectorSpec spec(0, Code::KEYED_LOAD_IC); | 1453   Code::Kind kinds[] = {Code::KEYED_LOAD_IC}; | 
|  | 1454   FeedbackVectorSpec spec(0, 1, kinds); | 
| 1454   Handle<TypeFeedbackVector> feedback_vector = | 1455   Handle<TypeFeedbackVector> feedback_vector = | 
| 1455       masm->isolate()->factory()->NewTypeFeedbackVector(&spec); | 1456       masm->isolate()->factory()->NewTypeFeedbackVector(&spec); | 
| 1456   int index = feedback_vector->GetIndex(FeedbackVectorICSlot(0)); | 1457   int index = feedback_vector->GetIndex(FeedbackVectorICSlot(0)); | 
| 1457   __ mov(slot, Operand(Smi::FromInt(index))); | 1458   __ mov(slot, Operand(Smi::FromInt(index))); | 
| 1458   __ Move(vector, feedback_vector); | 1459   __ Move(vector, feedback_vector); | 
| 1459   Handle<Code> ic = | 1460   Handle<Code> ic = | 
| 1460       KeyedLoadICStub(masm->isolate(), LoadICState(kNoExtraICState)).GetCode(); | 1461       KeyedLoadICStub(masm->isolate(), LoadICState(kNoExtraICState)).GetCode(); | 
| 1461   __ Call(ic, RelocInfo::CODE_TARGET); | 1462   __ Call(ic, RelocInfo::CODE_TARGET); | 
| 1462 | 1463 | 
| 1463   // Push the nth argument. | 1464   // Push the nth argument. | 
| (...skipping 399 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1863   } | 1864   } | 
| 1864 } | 1865 } | 
| 1865 | 1866 | 
| 1866 | 1867 | 
| 1867 #undef __ | 1868 #undef __ | 
| 1868 | 1869 | 
| 1869 }  // namespace internal | 1870 }  // namespace internal | 
| 1870 }  // namespace v8 | 1871 }  // namespace v8 | 
| 1871 | 1872 | 
| 1872 #endif  // V8_TARGET_ARCH_ARM | 1873 #endif  // V8_TARGET_ARCH_ARM | 
| OLD | NEW | 
|---|