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 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 V(NotEqual) \ | 123 V(NotEqual) \ |
124 V(StrictEqual) \ | 124 V(StrictEqual) \ |
125 V(StrictNotEqual) \ | 125 V(StrictNotEqual) \ |
126 V(StringEqual) \ | 126 V(StringEqual) \ |
127 V(StringNotEqual) \ | 127 V(StringNotEqual) \ |
128 V(StringLessThan) \ | 128 V(StringLessThan) \ |
129 V(StringLessThanOrEqual) \ | 129 V(StringLessThanOrEqual) \ |
130 V(StringGreaterThan) \ | 130 V(StringGreaterThan) \ |
131 V(StringGreaterThanOrEqual) \ | 131 V(StringGreaterThanOrEqual) \ |
132 V(ToBoolean) \ | 132 V(ToBoolean) \ |
| 133 V(ToInteger) \ |
133 V(ToLength) \ | 134 V(ToLength) \ |
134 /* IC Handler stubs */ \ | 135 /* IC Handler stubs */ \ |
135 V(ArrayBufferViewLoadField) \ | 136 V(ArrayBufferViewLoadField) \ |
136 V(LoadConstant) \ | 137 V(LoadConstant) \ |
137 V(LoadFastElement) \ | 138 V(LoadFastElement) \ |
138 V(LoadField) \ | 139 V(LoadField) \ |
139 V(LoadIndexedInterceptor) \ | 140 V(LoadIndexedInterceptor) \ |
140 V(KeyedLoadSloppyArguments) \ | 141 V(KeyedLoadSloppyArguments) \ |
141 V(KeyedStoreSloppyArguments) \ | 142 V(KeyedStoreSloppyArguments) \ |
142 V(StoreField) \ | 143 V(StoreField) \ |
(...skipping 686 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
829 }; | 830 }; |
830 | 831 |
831 class ToBooleanStub final : public TurboFanCodeStub { | 832 class ToBooleanStub final : public TurboFanCodeStub { |
832 public: | 833 public: |
833 explicit ToBooleanStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} | 834 explicit ToBooleanStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} |
834 | 835 |
835 DEFINE_CALL_INTERFACE_DESCRIPTOR(TypeConversion); | 836 DEFINE_CALL_INTERFACE_DESCRIPTOR(TypeConversion); |
836 DEFINE_TURBOFAN_CODE_STUB(ToBoolean, TurboFanCodeStub); | 837 DEFINE_TURBOFAN_CODE_STUB(ToBoolean, TurboFanCodeStub); |
837 }; | 838 }; |
838 | 839 |
| 840 class ToIntegerStub final : public TurboFanCodeStub { |
| 841 public: |
| 842 explicit ToIntegerStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} |
| 843 |
| 844 DEFINE_CALL_INTERFACE_DESCRIPTOR(TypeConversion); |
| 845 DEFINE_TURBOFAN_CODE_STUB(ToInteger, TurboFanCodeStub); |
| 846 }; |
| 847 |
839 class ToLengthStub final : public TurboFanCodeStub { | 848 class ToLengthStub final : public TurboFanCodeStub { |
840 public: | 849 public: |
841 explicit ToLengthStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} | 850 explicit ToLengthStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} |
842 | 851 |
843 DEFINE_CALL_INTERFACE_DESCRIPTOR(TypeConversion); | 852 DEFINE_CALL_INTERFACE_DESCRIPTOR(TypeConversion); |
844 DEFINE_TURBOFAN_CODE_STUB(ToLength, TurboFanCodeStub); | 853 DEFINE_TURBOFAN_CODE_STUB(ToLength, TurboFanCodeStub); |
845 }; | 854 }; |
846 | 855 |
847 class StoreInterceptorStub : public TurboFanCodeStub { | 856 class StoreInterceptorStub : public TurboFanCodeStub { |
848 public: | 857 public: |
(...skipping 2245 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3094 #undef DEFINE_HYDROGEN_CODE_STUB | 3103 #undef DEFINE_HYDROGEN_CODE_STUB |
3095 #undef DEFINE_CODE_STUB | 3104 #undef DEFINE_CODE_STUB |
3096 #undef DEFINE_CODE_STUB_BASE | 3105 #undef DEFINE_CODE_STUB_BASE |
3097 | 3106 |
3098 extern Representation RepresentationFromType(Type* type); | 3107 extern Representation RepresentationFromType(Type* type); |
3099 | 3108 |
3100 } // namespace internal | 3109 } // namespace internal |
3101 } // namespace v8 | 3110 } // namespace v8 |
3102 | 3111 |
3103 #endif // V8_CODE_STUBS_H_ | 3112 #endif // V8_CODE_STUBS_H_ |
OLD | NEW |