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_H_ | 5 #ifndef V8_BUILTINS_H_ |
6 #define V8_BUILTINS_H_ | 6 #define V8_BUILTINS_H_ |
7 | 7 |
8 #include "src/handles.h" | 8 #include "src/handles.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
71 V(RestrictedStrictArgumentsPropertiesThrower, NO_EXTRA_ARGUMENTS) | 71 V(RestrictedStrictArgumentsPropertiesThrower, NO_EXTRA_ARGUMENTS) |
72 | 72 |
73 // Define list of builtins implemented in assembly. | 73 // Define list of builtins implemented in assembly. |
74 #define BUILTIN_LIST_A(V) \ | 74 #define BUILTIN_LIST_A(V) \ |
75 V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 75 V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
76 \ | 76 \ |
77 V(CallFunction, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 77 V(CallFunction, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
78 V(Call, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 78 V(Call, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
79 \ | 79 \ |
80 V(ConstructFunction, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 80 V(ConstructFunction, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
| 81 V(ConstructProxy, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
81 V(Construct, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 82 V(Construct, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
82 \ | 83 \ |
83 V(PushArgsAndCall, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 84 V(PushArgsAndCall, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
84 \ | 85 \ |
85 V(InOptimizationQueue, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 86 V(InOptimizationQueue, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
86 V(JSConstructStubGeneric, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 87 V(JSConstructStubGeneric, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
87 V(JSConstructStubForDerived, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 88 V(JSConstructStubForDerived, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
88 V(JSConstructStubApi, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 89 V(JSConstructStubApi, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
89 V(JSEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 90 V(JSEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
90 V(JSConstructEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 91 V(JSConstructEntryTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
274 static void Generate_NotifyStubFailureSaveDoubles(MacroAssembler* masm); | 275 static void Generate_NotifyStubFailureSaveDoubles(MacroAssembler* masm); |
275 static void Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm); | 276 static void Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm); |
276 | 277 |
277 // ES6 section 9.2.1 [[Call]] ( thisArgument, argumentsList) | 278 // ES6 section 9.2.1 [[Call]] ( thisArgument, argumentsList) |
278 static void Generate_CallFunction(MacroAssembler* masm); | 279 static void Generate_CallFunction(MacroAssembler* masm); |
279 // ES6 section 7.3.12 Call(F, V, [argumentsList]) | 280 // ES6 section 7.3.12 Call(F, V, [argumentsList]) |
280 static void Generate_Call(MacroAssembler* masm); | 281 static void Generate_Call(MacroAssembler* masm); |
281 | 282 |
282 // ES6 section 9.2.2 [[Construct]] ( argumentsList, newTarget) | 283 // ES6 section 9.2.2 [[Construct]] ( argumentsList, newTarget) |
283 static void Generate_ConstructFunction(MacroAssembler* masm); | 284 static void Generate_ConstructFunction(MacroAssembler* masm); |
| 285 // ES6 section 9.5.14 [[Construct]] ( argumentsList, newTarget) |
| 286 static void Generate_ConstructProxy(MacroAssembler* masm); |
284 // ES6 section 7.3.13 Construct (F, [argumentsList], [newTarget]) | 287 // ES6 section 7.3.13 Construct (F, [argumentsList], [newTarget]) |
285 static void Generate_Construct(MacroAssembler* masm); | 288 static void Generate_Construct(MacroAssembler* masm); |
286 | 289 |
287 static void Generate_PushArgsAndCall(MacroAssembler* masm); | 290 static void Generate_PushArgsAndCall(MacroAssembler* masm); |
288 | 291 |
289 static void Generate_FunctionCall(MacroAssembler* masm); | 292 static void Generate_FunctionCall(MacroAssembler* masm); |
290 static void Generate_FunctionApply(MacroAssembler* masm); | 293 static void Generate_FunctionApply(MacroAssembler* masm); |
291 static void Generate_ReflectApply(MacroAssembler* masm); | 294 static void Generate_ReflectApply(MacroAssembler* masm); |
292 static void Generate_ReflectConstruct(MacroAssembler* masm); | 295 static void Generate_ReflectConstruct(MacroAssembler* masm); |
293 | 296 |
(...skipping 25 matching lines...) Expand all Loading... |
319 | 322 |
320 friend class BuiltinFunctionTable; | 323 friend class BuiltinFunctionTable; |
321 friend class Isolate; | 324 friend class Isolate; |
322 | 325 |
323 DISALLOW_COPY_AND_ASSIGN(Builtins); | 326 DISALLOW_COPY_AND_ASSIGN(Builtins); |
324 }; | 327 }; |
325 | 328 |
326 } } // namespace v8::internal | 329 } } // namespace v8::internal |
327 | 330 |
328 #endif // V8_BUILTINS_H_ | 331 #endif // V8_BUILTINS_H_ |
OLD | NEW |