| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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_BUILTINS_BUILTINS_H_ | 5 #ifndef V8_BUILTINS_BUILTINS_H_ |
| 6 #define V8_BUILTINS_BUILTINS_H_ | 6 #define V8_BUILTINS_BUILTINS_H_ |
| 7 | 7 |
| 8 #include "src/base/flags.h" | 8 #include "src/base/flags.h" |
| 9 #include "src/handles.h" | 9 #include "src/handles.h" |
| 10 | 10 |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 87 ASM(Construct) \ | 87 ASM(Construct) \ |
| 88 ASM(JSConstructStubApi) \ | 88 ASM(JSConstructStubApi) \ |
| 89 ASM(JSConstructStubGeneric) \ | 89 ASM(JSConstructStubGeneric) \ |
| 90 ASM(JSBuiltinsConstructStub) \ | 90 ASM(JSBuiltinsConstructStub) \ |
| 91 ASM(JSBuiltinsConstructStubForDerived) \ | 91 ASM(JSBuiltinsConstructStubForDerived) \ |
| 92 TFS(FastNewClosure, BUILTIN, kNoExtraICState, FastNewClosure) \ | 92 TFS(FastNewClosure, BUILTIN, kNoExtraICState, FastNewClosure) \ |
| 93 TFS(FastNewFunctionContextEval, BUILTIN, kNoExtraICState, \ | 93 TFS(FastNewFunctionContextEval, BUILTIN, kNoExtraICState, \ |
| 94 FastNewFunctionContext) \ | 94 FastNewFunctionContext) \ |
| 95 TFS(FastNewFunctionContextFunction, BUILTIN, kNoExtraICState, \ | 95 TFS(FastNewFunctionContextFunction, BUILTIN, kNoExtraICState, \ |
| 96 FastNewFunctionContext) \ | 96 FastNewFunctionContext) \ |
| 97 TFS(FastCloneRegExp, BUILTIN, kNoExtraICState, FastCloneRegExp) \ |
| 98 TFS(FastCloneShallowArrayTrack, BUILTIN, kNoExtraICState, \ |
| 99 FastCloneShallowArray) \ |
| 100 TFS(FastCloneShallowArrayDontTrack, BUILTIN, kNoExtraICState, \ |
| 101 FastCloneShallowArray) \ |
| 102 TFS(FastCloneShallowObject0, BUILTIN, kNoExtraICState, \ |
| 103 FastCloneShallowObject) \ |
| 104 TFS(FastCloneShallowObject1, BUILTIN, kNoExtraICState, \ |
| 105 FastCloneShallowObject) \ |
| 106 TFS(FastCloneShallowObject2, BUILTIN, kNoExtraICState, \ |
| 107 FastCloneShallowObject) \ |
| 108 TFS(FastCloneShallowObject3, BUILTIN, kNoExtraICState, \ |
| 109 FastCloneShallowObject) \ |
| 110 TFS(FastCloneShallowObject4, BUILTIN, kNoExtraICState, \ |
| 111 FastCloneShallowObject) \ |
| 112 TFS(FastCloneShallowObject5, BUILTIN, kNoExtraICState, \ |
| 113 FastCloneShallowObject) \ |
| 114 TFS(FastCloneShallowObject6, BUILTIN, kNoExtraICState, \ |
| 115 FastCloneShallowObject) \ |
| 97 \ | 116 \ |
| 98 /* Apply and entries */ \ | 117 /* Apply and entries */ \ |
| 99 ASM(Apply) \ | 118 ASM(Apply) \ |
| 100 ASM(JSEntryTrampoline) \ | 119 ASM(JSEntryTrampoline) \ |
| 101 ASM(JSConstructEntryTrampoline) \ | 120 ASM(JSConstructEntryTrampoline) \ |
| 102 ASM(ResumeGeneratorTrampoline) \ | 121 ASM(ResumeGeneratorTrampoline) \ |
| 103 \ | 122 \ |
| 104 /* Stack and interrupt check */ \ | 123 /* Stack and interrupt check */ \ |
| 105 ASM(InterruptCheck) \ | 124 ASM(InterruptCheck) \ |
| 106 ASM(StackCheck) \ | 125 ASM(StackCheck) \ |
| (...skipping 670 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 777 TailCallMode tail_call_mode = TailCallMode::kDisallow); | 796 TailCallMode tail_call_mode = TailCallMode::kDisallow); |
| 778 Handle<Code> CallBoundFunction(TailCallMode tail_call_mode); | 797 Handle<Code> CallBoundFunction(TailCallMode tail_call_mode); |
| 779 Handle<Code> NonPrimitiveToPrimitive( | 798 Handle<Code> NonPrimitiveToPrimitive( |
| 780 ToPrimitiveHint hint = ToPrimitiveHint::kDefault); | 799 ToPrimitiveHint hint = ToPrimitiveHint::kDefault); |
| 781 Handle<Code> OrdinaryToPrimitive(OrdinaryToPrimitiveHint hint); | 800 Handle<Code> OrdinaryToPrimitive(OrdinaryToPrimitiveHint hint); |
| 782 Handle<Code> InterpreterPushArgsAndCall( | 801 Handle<Code> InterpreterPushArgsAndCall( |
| 783 TailCallMode tail_call_mode, | 802 TailCallMode tail_call_mode, |
| 784 CallableType function_type = CallableType::kAny); | 803 CallableType function_type = CallableType::kAny); |
| 785 Handle<Code> InterpreterPushArgsAndConstruct(CallableType function_type); | 804 Handle<Code> InterpreterPushArgsAndConstruct(CallableType function_type); |
| 786 Handle<Code> NewFunctionContext(ScopeType scope_type); | 805 Handle<Code> NewFunctionContext(ScopeType scope_type); |
| 806 Handle<Code> NewCloneShallowArray(AllocationSiteMode allocation_mode); |
| 807 Handle<Code> NewCloneShallowObject(int length); |
| 787 | 808 |
| 788 Code* builtin(Name name) { | 809 Code* builtin(Name name) { |
| 789 // Code::cast cannot be used here since we access builtins | 810 // Code::cast cannot be used here since we access builtins |
| 790 // during the marking phase of mark sweep. See IC::Clear. | 811 // during the marking phase of mark sweep. See IC::Clear. |
| 791 return reinterpret_cast<Code*>(builtins_[name]); | 812 return reinterpret_cast<Code*>(builtins_[name]); |
| 792 } | 813 } |
| 793 | 814 |
| 794 Address builtin_address(Name name) { | 815 Address builtin_address(Name name) { |
| 795 return reinterpret_cast<Address>(&builtins_[name]); | 816 return reinterpret_cast<Address>(&builtins_[name]); |
| 796 } | 817 } |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 862 | 883 |
| 863 friend class Isolate; | 884 friend class Isolate; |
| 864 | 885 |
| 865 DISALLOW_COPY_AND_ASSIGN(Builtins); | 886 DISALLOW_COPY_AND_ASSIGN(Builtins); |
| 866 }; | 887 }; |
| 867 | 888 |
| 868 } // namespace internal | 889 } // namespace internal |
| 869 } // namespace v8 | 890 } // namespace v8 |
| 870 | 891 |
| 871 #endif // V8_BUILTINS_BUILTINS_H_ | 892 #endif // V8_BUILTINS_BUILTINS_H_ |
| OLD | NEW |