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 #include "src/bootstrapper.h" | 7 #include "src/bootstrapper.h" |
8 #include "src/code-stubs.h" | 8 #include "src/code-stubs.h" |
9 #include "src/cpu-profiler.h" | 9 #include "src/cpu-profiler.h" |
10 #include "src/factory.h" | 10 #include "src/factory.h" |
(...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
579 void KeyedLoadGenericStub::InitializeDescriptor( | 579 void KeyedLoadGenericStub::InitializeDescriptor( |
580 CodeStubDescriptor* descriptor) { | 580 CodeStubDescriptor* descriptor) { |
581 descriptor->Initialize( | 581 descriptor->Initialize( |
582 Runtime::FunctionForId(Runtime::kKeyedGetProperty)->entry); | 582 Runtime::FunctionForId(Runtime::kKeyedGetProperty)->entry); |
583 } | 583 } |
584 | 584 |
585 | 585 |
586 void HandlerStub::InitializeDescriptor(CodeStubDescriptor* descriptor) { | 586 void HandlerStub::InitializeDescriptor(CodeStubDescriptor* descriptor) { |
587 if (kind() == Code::STORE_IC) { | 587 if (kind() == Code::STORE_IC) { |
588 descriptor->Initialize(FUNCTION_ADDR(StoreIC_MissFromStubFailure)); | 588 descriptor->Initialize(FUNCTION_ADDR(StoreIC_MissFromStubFailure)); |
| 589 } else if (kind() == Code::KEYED_LOAD_IC) { |
| 590 descriptor->Initialize(FUNCTION_ADDR(KeyedLoadIC_MissFromStubFailure)); |
589 } | 591 } |
590 } | 592 } |
591 | 593 |
592 | 594 |
593 CallInterfaceDescriptor HandlerStub::GetCallInterfaceDescriptor() { | 595 CallInterfaceDescriptor HandlerStub::GetCallInterfaceDescriptor() { |
594 if (kind() == Code::LOAD_IC) { | 596 if (kind() == Code::LOAD_IC || kind() == Code::KEYED_LOAD_IC) { |
595 return LoadDescriptor(isolate()); | 597 return LoadDescriptor(isolate()); |
596 } else { | 598 } else { |
597 DCHECK_EQ(Code::STORE_IC, kind()); | 599 DCHECK_EQ(Code::STORE_IC, kind()); |
598 return StoreDescriptor(isolate()); | 600 return StoreDescriptor(isolate()); |
599 } | 601 } |
600 } | 602 } |
601 | 603 |
602 | 604 |
603 void StoreFastElementStub::InitializeDescriptor( | 605 void StoreFastElementStub::InitializeDescriptor( |
604 CodeStubDescriptor* descriptor) { | 606 CodeStubDescriptor* descriptor) { |
(...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
952 } | 954 } |
953 | 955 |
954 | 956 |
955 InternalArrayConstructorStub::InternalArrayConstructorStub( | 957 InternalArrayConstructorStub::InternalArrayConstructorStub( |
956 Isolate* isolate) : PlatformCodeStub(isolate) { | 958 Isolate* isolate) : PlatformCodeStub(isolate) { |
957 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); | 959 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); |
958 } | 960 } |
959 | 961 |
960 | 962 |
961 } } // namespace v8::internal | 963 } } // namespace v8::internal |
OLD | NEW |