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

Side by Side Diff: src/code-stubs.h

Issue 2607563002: [builtins] FastNewClosureStub becomes a builtin. (Closed)
Patch Set: Renames. Created 3 years, 11 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/code-factory.cc ('k') | src/code-stubs.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 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 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 V(DivideWithFeedback) \ 95 V(DivideWithFeedback) \
96 V(ModulusWithFeedback) \ 96 V(ModulusWithFeedback) \
97 V(Inc) \ 97 V(Inc) \
98 V(InternalArrayNoArgumentConstructor) \ 98 V(InternalArrayNoArgumentConstructor) \
99 V(InternalArraySingleArgumentConstructor) \ 99 V(InternalArraySingleArgumentConstructor) \
100 V(Dec) \ 100 V(Dec) \
101 V(ElementsTransitionAndStore) \ 101 V(ElementsTransitionAndStore) \
102 V(FastCloneRegExp) \ 102 V(FastCloneRegExp) \
103 V(FastCloneShallowArray) \ 103 V(FastCloneShallowArray) \
104 V(FastCloneShallowObject) \ 104 V(FastCloneShallowObject) \
105 V(FastNewClosure) \
106 V(FastNewFunctionContext) \ 105 V(FastNewFunctionContext) \
107 V(KeyedLoadSloppyArguments) \ 106 V(KeyedLoadSloppyArguments) \
108 V(KeyedStoreSloppyArguments) \ 107 V(KeyedStoreSloppyArguments) \
109 V(LoadScriptContextField) \ 108 V(LoadScriptContextField) \
110 V(StoreScriptContextField) \ 109 V(StoreScriptContextField) \
111 V(NumberToString) \ 110 V(NumberToString) \
112 V(StringAdd) \ 111 V(StringAdd) \
113 V(GetProperty) \ 112 V(GetProperty) \
114 V(LoadIC) \ 113 V(LoadIC) \
115 V(LoadICProtoArray) \ 114 V(LoadICProtoArray) \
(...skipping 665 matching lines...) Expand 10 before | Expand all | Expand 10 after
781 }; 780 };
782 781
783 class NumberToStringStub final : public TurboFanCodeStub { 782 class NumberToStringStub final : public TurboFanCodeStub {
784 public: 783 public:
785 explicit NumberToStringStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} 784 explicit NumberToStringStub(Isolate* isolate) : TurboFanCodeStub(isolate) {}
786 785
787 DEFINE_CALL_INTERFACE_DESCRIPTOR(TypeConversion); 786 DEFINE_CALL_INTERFACE_DESCRIPTOR(TypeConversion);
788 DEFINE_TURBOFAN_CODE_STUB(NumberToString, TurboFanCodeStub); 787 DEFINE_TURBOFAN_CODE_STUB(NumberToString, TurboFanCodeStub);
789 }; 788 };
790 789
791 class FastNewClosureStub : public TurboFanCodeStub {
792 public:
793 explicit FastNewClosureStub(Isolate* isolate) : TurboFanCodeStub(isolate) {}
794
795 static compiler::Node* Generate(CodeStubAssembler* assembler,
796 compiler::Node* shared_info,
797 compiler::Node* context);
798
799 DEFINE_CALL_INTERFACE_DESCRIPTOR(FastNewClosure);
800 DEFINE_TURBOFAN_CODE_STUB(FastNewClosure, TurboFanCodeStub);
801 };
802
803 class FastNewFunctionContextStub final : public TurboFanCodeStub { 790 class FastNewFunctionContextStub final : public TurboFanCodeStub {
804 public: 791 public:
805 static int MaximumSlots(); 792 static int MaximumSlots();
806 793
807 explicit FastNewFunctionContextStub(Isolate* isolate, ScopeType scope_type) 794 explicit FastNewFunctionContextStub(Isolate* isolate, ScopeType scope_type)
808 : TurboFanCodeStub(isolate) { 795 : TurboFanCodeStub(isolate) {
809 minor_key_ = ScopeTypeBits::encode(scope_type); 796 minor_key_ = ScopeTypeBits::encode(scope_type);
810 } 797 }
811 798
812 static compiler::Node* Generate(CodeStubAssembler* assembler, 799 static compiler::Node* Generate(CodeStubAssembler* assembler,
(...skipping 1673 matching lines...) Expand 10 before | Expand all | Expand 10 after
2486 #undef DEFINE_PLATFORM_CODE_STUB 2473 #undef DEFINE_PLATFORM_CODE_STUB
2487 #undef DEFINE_HANDLER_CODE_STUB 2474 #undef DEFINE_HANDLER_CODE_STUB
2488 #undef DEFINE_HYDROGEN_CODE_STUB 2475 #undef DEFINE_HYDROGEN_CODE_STUB
2489 #undef DEFINE_CODE_STUB 2476 #undef DEFINE_CODE_STUB
2490 #undef DEFINE_CODE_STUB_BASE 2477 #undef DEFINE_CODE_STUB_BASE
2491 2478
2492 } // namespace internal 2479 } // namespace internal
2493 } // namespace v8 2480 } // namespace v8
2494 2481
2495 #endif // V8_CODE_STUBS_H_ 2482 #endif // V8_CODE_STUBS_H_
OLDNEW
« no previous file with comments | « src/code-factory.cc ('k') | src/code-stubs.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698