Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1730)

Side by Side Diff: src/interface-descriptors.h

Issue 2600443002: [turbofan] Lower StringCharCodeAt to a dedicated builtin. (Closed)
Patch Set: Created 3 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/compiler/simplified-lowering.cc ('k') | src/interface-descriptors.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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 #ifndef V8_CALL_INTERFACE_DESCRIPTOR_H_ 5 #ifndef V8_CALL_INTERFACE_DESCRIPTOR_H_
6 #define V8_CALL_INTERFACE_DESCRIPTOR_H_ 6 #define V8_CALL_INTERFACE_DESCRIPTOR_H_
7 7
8 #include <memory> 8 #include <memory>
9 9
10 #include "src/assembler.h" 10 #include "src/assembler.h"
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 V(ArrayNoArgumentConstructor) \ 67 V(ArrayNoArgumentConstructor) \
68 V(ArraySingleArgumentConstructor) \ 68 V(ArraySingleArgumentConstructor) \
69 V(ArrayNArgumentsConstructor) \ 69 V(ArrayNArgumentsConstructor) \
70 V(Compare) \ 70 V(Compare) \
71 V(BinaryOp) \ 71 V(BinaryOp) \
72 V(BinaryOpWithAllocationSite) \ 72 V(BinaryOpWithAllocationSite) \
73 V(BinaryOpWithVector) \ 73 V(BinaryOpWithVector) \
74 V(CountOp) \ 74 V(CountOp) \
75 V(StringAdd) \ 75 V(StringAdd) \
76 V(StringCharAt) \ 76 V(StringCharAt) \
77 V(StringCharCodeAt) \
77 V(StringCompare) \ 78 V(StringCompare) \
78 V(SubString) \ 79 V(SubString) \
79 V(Keyed) \ 80 V(Keyed) \
80 V(Named) \ 81 V(Named) \
81 V(HasProperty) \ 82 V(HasProperty) \
82 V(ForInFilter) \ 83 V(ForInFilter) \
83 V(GetProperty) \ 84 V(GetProperty) \
84 V(CallHandler) \ 85 V(CallHandler) \
85 V(ArgumentAdaptor) \ 86 V(ArgumentAdaptor) \
86 V(ApiCallback) \ 87 V(ApiCallback) \
(...skipping 603 matching lines...) Expand 10 before | Expand all | Expand 10 after
690 DECLARE_DESCRIPTOR(StringAddDescriptor, CallInterfaceDescriptor) 691 DECLARE_DESCRIPTOR(StringAddDescriptor, CallInterfaceDescriptor)
691 }; 692 };
692 693
693 class StringCharAtDescriptor final : public CallInterfaceDescriptor { 694 class StringCharAtDescriptor final : public CallInterfaceDescriptor {
694 public: 695 public:
695 DEFINE_PARAMETERS(kReceiver, kPosition) 696 DEFINE_PARAMETERS(kReceiver, kPosition)
696 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(StringCharAtDescriptor, 697 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(StringCharAtDescriptor,
697 CallInterfaceDescriptor) 698 CallInterfaceDescriptor)
698 }; 699 };
699 700
701 class StringCharCodeAtDescriptor final : public CallInterfaceDescriptor {
702 public:
703 DEFINE_PARAMETERS(kReceiver, kPosition)
704 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(StringCharCodeAtDescriptor,
705 CallInterfaceDescriptor)
706 };
707
700 class StringCompareDescriptor : public CallInterfaceDescriptor { 708 class StringCompareDescriptor : public CallInterfaceDescriptor {
701 public: 709 public:
702 DEFINE_PARAMETERS(kLeft, kRight) 710 DEFINE_PARAMETERS(kLeft, kRight)
703 DECLARE_DESCRIPTOR(StringCompareDescriptor, CallInterfaceDescriptor) 711 DECLARE_DESCRIPTOR(StringCompareDescriptor, CallInterfaceDescriptor)
704 712
705 static const Register LeftRegister(); 713 static const Register LeftRegister();
706 static const Register RightRegister(); 714 static const Register RightRegister();
707 }; 715 };
708 716
709 class SubStringDescriptor : public CallInterfaceDescriptor { 717 class SubStringDescriptor : public CallInterfaceDescriptor {
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
867 } // namespace v8 875 } // namespace v8
868 876
869 877
870 #if V8_TARGET_ARCH_ARM64 878 #if V8_TARGET_ARCH_ARM64
871 #include "src/arm64/interface-descriptors-arm64.h" 879 #include "src/arm64/interface-descriptors-arm64.h"
872 #elif V8_TARGET_ARCH_ARM 880 #elif V8_TARGET_ARCH_ARM
873 #include "src/arm/interface-descriptors-arm.h" 881 #include "src/arm/interface-descriptors-arm.h"
874 #endif 882 #endif
875 883
876 #endif // V8_CALL_INTERFACE_DESCRIPTOR_H_ 884 #endif // V8_CALL_INTERFACE_DESCRIPTOR_H_
OLDNEW
« no previous file with comments | « src/compiler/simplified-lowering.cc ('k') | src/interface-descriptors.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698