| 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 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 V(InternalArrayNArgumentsConstructor) \ | 72 V(InternalArrayNArgumentsConstructor) \ |
| 73 V(InternalArrayNoArgumentConstructor) \ | 73 V(InternalArrayNoArgumentConstructor) \ |
| 74 V(InternalArraySingleArgumentConstructor) \ | 74 V(InternalArraySingleArgumentConstructor) \ |
| 75 V(KeyedLoadGeneric) \ | 75 V(KeyedLoadGeneric) \ |
| 76 V(LoadScriptContextField) \ | 76 V(LoadScriptContextField) \ |
| 77 V(LoadDictionaryElement) \ | 77 V(LoadDictionaryElement) \ |
| 78 V(LoadFastElement) \ | 78 V(LoadFastElement) \ |
| 79 V(MegamorphicLoad) \ | 79 V(MegamorphicLoad) \ |
| 80 V(NameDictionaryLookup) \ | 80 V(NameDictionaryLookup) \ |
| 81 V(NumberToString) \ | 81 V(NumberToString) \ |
| 82 V(Typeof) \ |
| 82 V(RegExpConstructResult) \ | 83 V(RegExpConstructResult) \ |
| 83 V(StoreFastElement) \ | 84 V(StoreFastElement) \ |
| 84 V(StoreScriptContextField) \ | 85 V(StoreScriptContextField) \ |
| 85 V(StringAdd) \ | 86 V(StringAdd) \ |
| 86 V(ToBoolean) \ | 87 V(ToBoolean) \ |
| 87 V(TransitionElementsKind) \ | 88 V(TransitionElementsKind) \ |
| 88 V(VectorRawKeyedLoad) \ | 89 V(VectorRawKeyedLoad) \ |
| 89 V(VectorRawLoad) \ | 90 V(VectorRawLoad) \ |
| 90 /* IC Handler stubs */ \ | 91 /* IC Handler stubs */ \ |
| 91 V(ArrayBufferViewLoadField) \ | 92 V(ArrayBufferViewLoadField) \ |
| (...skipping 495 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 587 explicit NumberToStringStub(Isolate* isolate) : HydrogenCodeStub(isolate) {} | 588 explicit NumberToStringStub(Isolate* isolate) : HydrogenCodeStub(isolate) {} |
| 588 | 589 |
| 589 // Parameters accessed via CodeStubGraphBuilder::GetParameter() | 590 // Parameters accessed via CodeStubGraphBuilder::GetParameter() |
| 590 static const int kNumber = 0; | 591 static const int kNumber = 0; |
| 591 | 592 |
| 592 DEFINE_CALL_INTERFACE_DESCRIPTOR(NumberToString); | 593 DEFINE_CALL_INTERFACE_DESCRIPTOR(NumberToString); |
| 593 DEFINE_HYDROGEN_CODE_STUB(NumberToString, HydrogenCodeStub); | 594 DEFINE_HYDROGEN_CODE_STUB(NumberToString, HydrogenCodeStub); |
| 594 }; | 595 }; |
| 595 | 596 |
| 596 | 597 |
| 598 class TypeofStub final : public HydrogenCodeStub { |
| 599 public: |
| 600 explicit TypeofStub(Isolate* isolate) : HydrogenCodeStub(isolate) {} |
| 601 |
| 602 // Parameters accessed via CodeStubGraphBuilder::GetParameter() |
| 603 static const int kObject = 0; |
| 604 |
| 605 static void GenerateAheadOfTime(Isolate* isolate); |
| 606 |
| 607 DEFINE_CALL_INTERFACE_DESCRIPTOR(Typeof); |
| 608 DEFINE_HYDROGEN_CODE_STUB(Typeof, HydrogenCodeStub); |
| 609 }; |
| 610 |
| 611 |
| 597 class FastNewClosureStub : public HydrogenCodeStub { | 612 class FastNewClosureStub : public HydrogenCodeStub { |
| 598 public: | 613 public: |
| 599 FastNewClosureStub(Isolate* isolate, LanguageMode language_mode, | 614 FastNewClosureStub(Isolate* isolate, LanguageMode language_mode, |
| 600 FunctionKind kind) | 615 FunctionKind kind) |
| 601 : HydrogenCodeStub(isolate) { | 616 : HydrogenCodeStub(isolate) { |
| 602 DCHECK(IsValidFunctionKind(kind)); | 617 DCHECK(IsValidFunctionKind(kind)); |
| 603 set_sub_minor_key(LanguageModeBits::encode(language_mode) | | 618 set_sub_minor_key(LanguageModeBits::encode(language_mode) | |
| 604 FunctionKindBits::encode(kind)); | 619 FunctionKindBits::encode(kind)); |
| 605 } | 620 } |
| 606 | 621 |
| (...skipping 2182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2789 | 2804 |
| 2790 #undef DEFINE_CALL_INTERFACE_DESCRIPTOR | 2805 #undef DEFINE_CALL_INTERFACE_DESCRIPTOR |
| 2791 #undef DEFINE_PLATFORM_CODE_STUB | 2806 #undef DEFINE_PLATFORM_CODE_STUB |
| 2792 #undef DEFINE_HANDLER_CODE_STUB | 2807 #undef DEFINE_HANDLER_CODE_STUB |
| 2793 #undef DEFINE_HYDROGEN_CODE_STUB | 2808 #undef DEFINE_HYDROGEN_CODE_STUB |
| 2794 #undef DEFINE_CODE_STUB | 2809 #undef DEFINE_CODE_STUB |
| 2795 #undef DEFINE_CODE_STUB_BASE | 2810 #undef DEFINE_CODE_STUB_BASE |
| 2796 } } // namespace v8::internal | 2811 } } // namespace v8::internal |
| 2797 | 2812 |
| 2798 #endif // V8_CODE_STUBS_H_ | 2813 #endif // V8_CODE_STUBS_H_ |
| OLD | NEW |