OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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/ic/accessor-assembler.h" | 5 #include "src/ic/accessor-assembler.h" |
6 #include "src/ic/accessor-assembler-impl.h" | 6 #include "src/ic/accessor-assembler-impl.h" |
7 | 7 |
8 #include "src/code-factory.h" | 8 #include "src/code-factory.h" |
9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" |
10 #include "src/ic/handler-configuration.h" | 10 #include "src/ic/handler-configuration.h" |
(...skipping 1651 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1662 Node* slot = nullptr; | 1662 Node* slot = nullptr; |
1663 Node* vector = nullptr; | 1663 Node* vector = nullptr; |
1664 Node* context = Parameter(Descriptor::kContext); | 1664 Node* context = Parameter(Descriptor::kContext); |
1665 LoadICParameters p(context, receiver, name, slot, vector); | 1665 LoadICParameters p(context, receiver, name, slot, vector); |
1666 | 1666 |
1667 HandleLoadICSmiHandlerCase(&p, receiver, Parameter(Descriptor::kSmiHandler), | 1667 HandleLoadICSmiHandlerCase(&p, receiver, Parameter(Descriptor::kSmiHandler), |
1668 nullptr, kOnlyProperties); | 1668 nullptr, kOnlyProperties); |
1669 } | 1669 } |
1670 | 1670 |
1671 void AccessorAssemblerImpl::GenerateLoadGlobalIC(TypeofMode typeof_mode) { | 1671 void AccessorAssemblerImpl::GenerateLoadGlobalIC(TypeofMode typeof_mode) { |
1672 typedef LoadGlobalICStub::Descriptor Descriptor; | 1672 typedef LoadGlobalWithVectorDescriptor Descriptor; |
1673 | 1673 |
1674 Node* name = Parameter(Descriptor::kName); | 1674 Node* name = Parameter(Descriptor::kName); |
1675 Node* slot = Parameter(Descriptor::kSlot); | 1675 Node* slot = Parameter(Descriptor::kSlot); |
1676 Node* vector = Parameter(Descriptor::kVector); | 1676 Node* vector = Parameter(Descriptor::kVector); |
1677 Node* context = Parameter(Descriptor::kContext); | 1677 Node* context = Parameter(Descriptor::kContext); |
1678 | 1678 |
1679 LoadICParameters p(context, nullptr, name, slot, vector); | 1679 LoadICParameters p(context, nullptr, name, slot, vector); |
1680 LoadGlobalIC(&p, typeof_mode); | 1680 LoadGlobalIC(&p, typeof_mode); |
1681 } | 1681 } |
1682 | 1682 |
1683 void AccessorAssemblerImpl::GenerateLoadGlobalICTrampoline( | 1683 void AccessorAssemblerImpl::GenerateLoadGlobalICTrampoline( |
1684 TypeofMode typeof_mode) { | 1684 TypeofMode typeof_mode) { |
1685 typedef LoadGlobalICTrampolineStub::Descriptor Descriptor; | 1685 typedef LoadGlobalDescriptor Descriptor; |
1686 | 1686 |
1687 Node* name = Parameter(Descriptor::kName); | 1687 Node* name = Parameter(Descriptor::kName); |
1688 Node* slot = Parameter(Descriptor::kSlot); | 1688 Node* slot = Parameter(Descriptor::kSlot); |
1689 Node* context = Parameter(Descriptor::kContext); | 1689 Node* context = Parameter(Descriptor::kContext); |
1690 Node* vector = LoadTypeFeedbackVectorForStub(); | 1690 Node* vector = LoadTypeFeedbackVectorForStub(); |
1691 | 1691 |
1692 LoadICParameters p(context, nullptr, name, slot, vector); | 1692 LoadICParameters p(context, nullptr, name, slot, vector); |
1693 LoadGlobalIC(&p, typeof_mode); | 1693 LoadGlobalIC(&p, typeof_mode); |
1694 } | 1694 } |
1695 | 1695 |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1827 void AccessorAssembler::GenerateKeyedStoreICTrampolineTF( | 1827 void AccessorAssembler::GenerateKeyedStoreICTrampolineTF( |
1828 CodeAssemblerState* state, LanguageMode language_mode) { | 1828 CodeAssemblerState* state, LanguageMode language_mode) { |
1829 AccessorAssemblerImpl assembler(state); | 1829 AccessorAssemblerImpl assembler(state); |
1830 assembler.GenerateKeyedStoreICTrampolineTF(language_mode); | 1830 assembler.GenerateKeyedStoreICTrampolineTF(language_mode); |
1831 } | 1831 } |
1832 | 1832 |
1833 #undef ACCESSOR_ASSEMBLER_PUBLIC_INTERFACE | 1833 #undef ACCESSOR_ASSEMBLER_PUBLIC_INTERFACE |
1834 | 1834 |
1835 } // namespace internal | 1835 } // namespace internal |
1836 } // namespace v8 | 1836 } // namespace v8 |
OLD | NEW |