| 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 #ifndef V8_CODE_STUBS_H_ | 5 #ifndef V8_CODE_STUBS_H_ |
| 6 #define V8_CODE_STUBS_H_ | 6 #define V8_CODE_STUBS_H_ |
| 7 | 7 |
| 8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
| 9 #include "src/assembler.h" | 9 #include "src/assembler.h" |
| 10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 /* IC Handler stubs */ \ | 102 /* IC Handler stubs */ \ |
| 103 V(ArrayBufferViewLoadField) \ | 103 V(ArrayBufferViewLoadField) \ |
| 104 V(LoadConstant) \ | 104 V(LoadConstant) \ |
| 105 V(LoadFastElement) \ | 105 V(LoadFastElement) \ |
| 106 V(LoadField) \ | 106 V(LoadField) \ |
| 107 V(KeyedLoadSloppyArguments) \ | 107 V(KeyedLoadSloppyArguments) \ |
| 108 V(KeyedStoreSloppyArguments) \ | 108 V(KeyedStoreSloppyArguments) \ |
| 109 V(StoreField) \ | 109 V(StoreField) \ |
| 110 V(StoreGlobal) \ | 110 V(StoreGlobal) \ |
| 111 V(StoreTransition) \ | 111 V(StoreTransition) \ |
| 112 V(StringLength) \ | 112 V(StringLength) |
| 113 V(RestParamAccess) | |
| 114 | 113 |
| 115 // List of code stubs only used on ARM 32 bits platforms. | 114 // List of code stubs only used on ARM 32 bits platforms. |
| 116 #if V8_TARGET_ARCH_ARM | 115 #if V8_TARGET_ARCH_ARM |
| 117 #define CODE_STUB_LIST_ARM(V) V(DirectCEntry) | 116 #define CODE_STUB_LIST_ARM(V) V(DirectCEntry) |
| 118 | 117 |
| 119 #else | 118 #else |
| 120 #define CODE_STUB_LIST_ARM(V) | 119 #define CODE_STUB_LIST_ARM(V) |
| 121 #endif | 120 #endif |
| 122 | 121 |
| 123 // List of code stubs only used on ARM 64 bits platforms. | 122 // List of code stubs only used on ARM 64 bits platforms. |
| (...skipping 1787 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1911 void GenerateNewSloppySlow(MacroAssembler* masm); | 1910 void GenerateNewSloppySlow(MacroAssembler* masm); |
| 1912 | 1911 |
| 1913 void PrintName(std::ostream& os) const override; // NOLINT | 1912 void PrintName(std::ostream& os) const override; // NOLINT |
| 1914 | 1913 |
| 1915 class TypeBits : public BitField<Type, 0, 2> {}; | 1914 class TypeBits : public BitField<Type, 0, 2> {}; |
| 1916 | 1915 |
| 1917 DEFINE_PLATFORM_CODE_STUB(ArgumentsAccess, PlatformCodeStub); | 1916 DEFINE_PLATFORM_CODE_STUB(ArgumentsAccess, PlatformCodeStub); |
| 1918 }; | 1917 }; |
| 1919 | 1918 |
| 1920 | 1919 |
| 1921 class RestParamAccessStub: public PlatformCodeStub { | |
| 1922 public: | |
| 1923 explicit RestParamAccessStub(Isolate* isolate) : PlatformCodeStub(isolate) { } | |
| 1924 | |
| 1925 CallInterfaceDescriptor GetCallInterfaceDescriptor() const override { | |
| 1926 return ContextOnlyDescriptor(isolate()); | |
| 1927 } | |
| 1928 | |
| 1929 private: | |
| 1930 void GenerateNew(MacroAssembler* masm); | |
| 1931 | |
| 1932 void PrintName(std::ostream& os) const override; // NOLINT | |
| 1933 | |
| 1934 DEFINE_PLATFORM_CODE_STUB(RestParamAccess, PlatformCodeStub); | |
| 1935 }; | |
| 1936 | |
| 1937 | |
| 1938 class RegExpExecStub: public PlatformCodeStub { | 1920 class RegExpExecStub: public PlatformCodeStub { |
| 1939 public: | 1921 public: |
| 1940 explicit RegExpExecStub(Isolate* isolate) : PlatformCodeStub(isolate) { } | 1922 explicit RegExpExecStub(Isolate* isolate) : PlatformCodeStub(isolate) { } |
| 1941 | 1923 |
| 1942 DEFINE_CALL_INTERFACE_DESCRIPTOR(ContextOnly); | 1924 DEFINE_CALL_INTERFACE_DESCRIPTOR(ContextOnly); |
| 1943 DEFINE_PLATFORM_CODE_STUB(RegExpExec, PlatformCodeStub); | 1925 DEFINE_PLATFORM_CODE_STUB(RegExpExec, PlatformCodeStub); |
| 1944 }; | 1926 }; |
| 1945 | 1927 |
| 1946 | 1928 |
| 1947 class RegExpConstructResultStub final : public HydrogenCodeStub { | 1929 class RegExpConstructResultStub final : public HydrogenCodeStub { |
| (...skipping 1125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3073 #undef DEFINE_PLATFORM_CODE_STUB | 3055 #undef DEFINE_PLATFORM_CODE_STUB |
| 3074 #undef DEFINE_HANDLER_CODE_STUB | 3056 #undef DEFINE_HANDLER_CODE_STUB |
| 3075 #undef DEFINE_HYDROGEN_CODE_STUB | 3057 #undef DEFINE_HYDROGEN_CODE_STUB |
| 3076 #undef DEFINE_CODE_STUB | 3058 #undef DEFINE_CODE_STUB |
| 3077 #undef DEFINE_CODE_STUB_BASE | 3059 #undef DEFINE_CODE_STUB_BASE |
| 3078 | 3060 |
| 3079 extern Representation RepresentationFromType(Type* type); | 3061 extern Representation RepresentationFromType(Type* type); |
| 3080 } } // namespace v8::internal | 3062 } } // namespace v8::internal |
| 3081 | 3063 |
| 3082 #endif // V8_CODE_STUBS_H_ | 3064 #endif // V8_CODE_STUBS_H_ |
| OLD | NEW |