| 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 |