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/code-stubs.h" | 5 #include "src/code-stubs.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
8 | 8 |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/cpu-profiler.h" | 10 #include "src/cpu-profiler.h" |
(...skipping 625 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
636 if (kind() == Code::STORE_IC) { | 636 if (kind() == Code::STORE_IC) { |
637 descriptor->Initialize(FUNCTION_ADDR(StoreIC_MissFromStubFailure)); | 637 descriptor->Initialize(FUNCTION_ADDR(StoreIC_MissFromStubFailure)); |
638 } else if (kind() == Code::KEYED_LOAD_IC) { | 638 } else if (kind() == Code::KEYED_LOAD_IC) { |
639 descriptor->Initialize(FUNCTION_ADDR(KeyedLoadIC_MissFromStubFailure)); | 639 descriptor->Initialize(FUNCTION_ADDR(KeyedLoadIC_MissFromStubFailure)); |
640 } else if (kind() == Code::KEYED_STORE_IC) { | 640 } else if (kind() == Code::KEYED_STORE_IC) { |
641 descriptor->Initialize(FUNCTION_ADDR(KeyedStoreIC_MissFromStubFailure)); | 641 descriptor->Initialize(FUNCTION_ADDR(KeyedStoreIC_MissFromStubFailure)); |
642 } | 642 } |
643 } | 643 } |
644 | 644 |
645 | 645 |
646 CallInterfaceDescriptor HandlerStub::GetCallInterfaceDescriptor() { | 646 CallInterfaceDescriptor HandlerStub::GetCallInterfaceDescriptor() const { |
647 if (kind() == Code::LOAD_IC || kind() == Code::KEYED_LOAD_IC) { | 647 if (kind() == Code::LOAD_IC || kind() == Code::KEYED_LOAD_IC) { |
648 return LoadWithVectorDescriptor(isolate()); | 648 return LoadWithVectorDescriptor(isolate()); |
649 } else { | 649 } else { |
650 DCHECK(kind() == Code::STORE_IC || kind() == Code::KEYED_STORE_IC); | 650 DCHECK(kind() == Code::STORE_IC || kind() == Code::KEYED_STORE_IC); |
651 return StoreDescriptor(isolate()); | 651 return StoreDescriptor(isolate()); |
652 } | 652 } |
653 } | 653 } |
654 | 654 |
655 | 655 |
656 void StoreFastElementStub::InitializeDescriptor( | 656 void StoreFastElementStub::InitializeDescriptor( |
657 CodeStubDescriptor* descriptor) { | 657 CodeStubDescriptor* descriptor) { |
658 descriptor->Initialize(FUNCTION_ADDR(KeyedStoreIC_MissFromStubFailure)); | 658 descriptor->Initialize(FUNCTION_ADDR(KeyedStoreIC_MissFromStubFailure)); |
659 } | 659 } |
660 | 660 |
661 | 661 |
662 void ElementsTransitionAndStoreStub::InitializeDescriptor( | 662 void ElementsTransitionAndStoreStub::InitializeDescriptor( |
663 CodeStubDescriptor* descriptor) { | 663 CodeStubDescriptor* descriptor) { |
664 descriptor->Initialize(FUNCTION_ADDR(ElementsTransitionAndStoreIC_Miss)); | 664 descriptor->Initialize(FUNCTION_ADDR(ElementsTransitionAndStoreIC_Miss)); |
665 } | 665 } |
666 | 666 |
667 | 667 |
668 CallInterfaceDescriptor StoreTransitionStub::GetCallInterfaceDescriptor() { | 668 CallInterfaceDescriptor StoreTransitionStub::GetCallInterfaceDescriptor() |
| 669 const { |
669 return StoreTransitionDescriptor(isolate()); | 670 return StoreTransitionDescriptor(isolate()); |
670 } | 671 } |
671 | 672 |
672 | 673 |
673 void FastNewClosureStub::InitializeDescriptor(CodeStubDescriptor* descriptor) { | 674 void FastNewClosureStub::InitializeDescriptor(CodeStubDescriptor* descriptor) { |
674 descriptor->Initialize( | 675 descriptor->Initialize( |
675 Runtime::FunctionForId(Runtime::kNewClosureFromStubFailure)->entry); | 676 Runtime::FunctionForId(Runtime::kNewClosureFromStubFailure)->entry); |
676 } | 677 } |
677 | 678 |
678 | 679 |
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1058 | 1059 |
1059 if (type->Is(Type::UntaggedPointer())) { | 1060 if (type->Is(Type::UntaggedPointer())) { |
1060 return Representation::External(); | 1061 return Representation::External(); |
1061 } | 1062 } |
1062 | 1063 |
1063 DCHECK(!type->Is(Type::Untagged())); | 1064 DCHECK(!type->Is(Type::Untagged())); |
1064 return Representation::Tagged(); | 1065 return Representation::Tagged(); |
1065 } | 1066 } |
1066 } // namespace internal | 1067 } // namespace internal |
1067 } // namespace v8 | 1068 } // namespace v8 |
OLD | NEW |