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 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 V(ArraySingleArgumentConstructor) \ | 86 V(ArraySingleArgumentConstructor) \ |
87 V(ArrayNArgumentsConstructor) \ | 87 V(ArrayNArgumentsConstructor) \ |
88 V(CreateAllocationSite) \ | 88 V(CreateAllocationSite) \ |
89 V(CreateWeakCell) \ | 89 V(CreateWeakCell) \ |
90 V(StringLength) \ | 90 V(StringLength) \ |
91 V(AddWithFeedback) \ | 91 V(AddWithFeedback) \ |
92 V(SubtractWithFeedback) \ | 92 V(SubtractWithFeedback) \ |
93 V(MultiplyWithFeedback) \ | 93 V(MultiplyWithFeedback) \ |
94 V(DivideWithFeedback) \ | 94 V(DivideWithFeedback) \ |
95 V(ModulusWithFeedback) \ | 95 V(ModulusWithFeedback) \ |
96 V(Inc) \ | |
97 V(InternalArrayNoArgumentConstructor) \ | 96 V(InternalArrayNoArgumentConstructor) \ |
98 V(InternalArraySingleArgumentConstructor) \ | 97 V(InternalArraySingleArgumentConstructor) \ |
99 V(Dec) \ | |
100 V(ElementsTransitionAndStore) \ | 98 V(ElementsTransitionAndStore) \ |
101 V(FastCloneRegExp) \ | 99 V(FastCloneRegExp) \ |
102 V(FastCloneShallowArray) \ | 100 V(FastCloneShallowArray) \ |
103 V(FastCloneShallowObject) \ | 101 V(FastCloneShallowObject) \ |
104 V(FastNewFunctionContext) \ | 102 V(FastNewFunctionContext) \ |
105 V(KeyedLoadSloppyArguments) \ | 103 V(KeyedLoadSloppyArguments) \ |
106 V(KeyedStoreSloppyArguments) \ | 104 V(KeyedStoreSloppyArguments) \ |
107 V(LoadScriptContextField) \ | 105 V(LoadScriptContextField) \ |
108 V(StoreScriptContextField) \ | 106 V(StoreScriptContextField) \ |
109 V(NumberToString) \ | 107 V(NumberToString) \ |
(...skipping 613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
723 class ModulusWithFeedbackStub final : public TurboFanCodeStub { | 721 class ModulusWithFeedbackStub final : public TurboFanCodeStub { |
724 public: | 722 public: |
725 explicit ModulusWithFeedbackStub(Isolate* isolate) | 723 explicit ModulusWithFeedbackStub(Isolate* isolate) |
726 : TurboFanCodeStub(isolate) {} | 724 : TurboFanCodeStub(isolate) {} |
727 | 725 |
728 DEFINE_CALL_INTERFACE_DESCRIPTOR(BinaryOpWithVector); | 726 DEFINE_CALL_INTERFACE_DESCRIPTOR(BinaryOpWithVector); |
729 DEFINE_TURBOFAN_BINARY_OP_CODE_STUB_WITH_FEEDBACK(ModulusWithFeedback, | 727 DEFINE_TURBOFAN_BINARY_OP_CODE_STUB_WITH_FEEDBACK(ModulusWithFeedback, |
730 TurboFanCodeStub); | 728 TurboFanCodeStub); |
731 }; | 729 }; |
732 | 730 |
733 class IncStub final : public TurboFanCodeStub { | |
734 public: | |
735 explicit IncStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} | |
736 | |
737 DEFINE_CALL_INTERFACE_DESCRIPTOR(CountOp); | |
738 DEFINE_TURBOFAN_UNARY_OP_CODE_STUB_WITH_FEEDBACK(Inc, TurboFanCodeStub); | |
739 }; | |
740 | |
741 class DecStub final : public TurboFanCodeStub { | |
742 public: | |
743 explicit DecStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} | |
744 | |
745 DEFINE_CALL_INTERFACE_DESCRIPTOR(CountOp); | |
746 DEFINE_TURBOFAN_UNARY_OP_CODE_STUB_WITH_FEEDBACK(Dec, TurboFanCodeStub); | |
747 }; | |
748 | |
749 class StoreInterceptorStub : public TurboFanCodeStub { | 731 class StoreInterceptorStub : public TurboFanCodeStub { |
750 public: | 732 public: |
751 explicit StoreInterceptorStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} | 733 explicit StoreInterceptorStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} |
752 | 734 |
753 Code::Kind GetCodeKind() const override { return Code::HANDLER; } | 735 Code::Kind GetCodeKind() const override { return Code::HANDLER; } |
754 ExtraICState GetExtraICState() const override { return Code::STORE_IC; } | 736 ExtraICState GetExtraICState() const override { return Code::STORE_IC; } |
755 | 737 |
756 DEFINE_CALL_INTERFACE_DESCRIPTOR(StoreWithVector); | 738 DEFINE_CALL_INTERFACE_DESCRIPTOR(StoreWithVector); |
757 DEFINE_TURBOFAN_CODE_STUB(StoreInterceptor, TurboFanCodeStub); | 739 DEFINE_TURBOFAN_CODE_STUB(StoreInterceptor, TurboFanCodeStub); |
758 }; | 740 }; |
(...skipping 1704 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2463 #undef DEFINE_PLATFORM_CODE_STUB | 2445 #undef DEFINE_PLATFORM_CODE_STUB |
2464 #undef DEFINE_HANDLER_CODE_STUB | 2446 #undef DEFINE_HANDLER_CODE_STUB |
2465 #undef DEFINE_HYDROGEN_CODE_STUB | 2447 #undef DEFINE_HYDROGEN_CODE_STUB |
2466 #undef DEFINE_CODE_STUB | 2448 #undef DEFINE_CODE_STUB |
2467 #undef DEFINE_CODE_STUB_BASE | 2449 #undef DEFINE_CODE_STUB_BASE |
2468 | 2450 |
2469 } // namespace internal | 2451 } // namespace internal |
2470 } // namespace v8 | 2452 } // namespace v8 |
2471 | 2453 |
2472 #endif // V8_CODE_STUBS_H_ | 2454 #endif // V8_CODE_STUBS_H_ |
OLD | NEW |