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/base/flags.h" | 8 #include "src/base/flags.h" |
9 #include "src/handles.h" | 9 #include "src/handles.h" |
10 | 10 |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
44 CODE_AGE_LIST_WITH_ARG(CODE_AGE_LIST_IGNORE_ARG, V) | 44 CODE_AGE_LIST_WITH_ARG(CODE_AGE_LIST_IGNORE_ARG, V) |
45 | 45 |
46 #define DECLARE_CODE_AGE_BUILTIN(C, V) \ | 46 #define DECLARE_CODE_AGE_BUILTIN(C, V) \ |
47 V(Make##C##CodeYoungAgainOddMarking, BUILTIN, \ | 47 V(Make##C##CodeYoungAgainOddMarking, BUILTIN, \ |
48 UNINITIALIZED, kNoExtraICState) \ | 48 UNINITIALIZED, kNoExtraICState) \ |
49 V(Make##C##CodeYoungAgainEvenMarking, BUILTIN, \ | 49 V(Make##C##CodeYoungAgainEvenMarking, BUILTIN, \ |
50 UNINITIALIZED, kNoExtraICState) | 50 UNINITIALIZED, kNoExtraICState) |
51 | 51 |
52 | 52 |
53 // Define list of builtins implemented in C++. | 53 // Define list of builtins implemented in C++. |
54 #define BUILTIN_LIST_C(V) \ | 54 #define BUILTIN_LIST_C(V) \ |
55 V(Illegal, kNone) \ | 55 V(Illegal, kNone) \ |
56 \ | 56 \ |
57 V(EmptyFunction, kNone) \ | 57 V(EmptyFunction, kNone) \ |
58 \ | 58 \ |
59 V(ArrayPush, kNone) \ | 59 V(ArrayPush, kNone) \ |
60 V(ArrayPop, kNone) \ | 60 V(ArrayPop, kNone) \ |
61 V(ArrayShift, kNone) \ | 61 V(ArrayShift, kNone) \ |
62 V(ArrayUnshift, kNone) \ | 62 V(ArrayUnshift, kNone) \ |
63 V(ArraySlice, kNone) \ | 63 V(ArraySlice, kNone) \ |
64 V(ArraySplice, kNone) \ | 64 V(ArraySplice, kNone) \ |
65 V(ArrayConcat, kNone) \ | 65 V(ArrayConcat, kNone) \ |
66 \ | 66 \ |
67 V(DateToPrimitive, kNone) \ | 67 V(ArrayBufferConstructor, kTarget) \ |
68 \ | 68 V(ArrayBufferConstructor_ConstructStub, kTargetAndNewTarget) \ |
69 V(ProxyConstructor, kNone) \ | 69 V(ArrayBufferIsView, kNone) \ |
70 V(ProxyConstructor_ConstructStub, kTarget) \ | 70 \ |
71 \ | 71 V(DateToPrimitive, kNone) \ |
72 V(ReflectDefineProperty, kNone) \ | 72 \ |
73 V(ReflectDeleteProperty, kNone) \ | 73 V(ProxyConstructor, kNone) \ |
74 V(ReflectGet, kNone) \ | 74 V(ProxyConstructor_ConstructStub, kTarget) \ |
75 V(ReflectGetOwnPropertyDescriptor, kNone) \ | 75 \ |
76 V(ReflectGetPrototypeOf, kNone) \ | 76 V(ReflectDefineProperty, kNone) \ |
77 V(ReflectHas, kNone) \ | 77 V(ReflectDeleteProperty, kNone) \ |
78 V(ReflectIsExtensible, kNone) \ | 78 V(ReflectGet, kNone) \ |
79 V(ReflectOwnKeys, kNone) \ | 79 V(ReflectGetOwnPropertyDescriptor, kNone) \ |
80 V(ReflectPreventExtensions, kNone) \ | 80 V(ReflectGetPrototypeOf, kNone) \ |
81 V(ReflectSet, kNone) \ | 81 V(ReflectHas, kNone) \ |
82 V(ReflectSetPrototypeOf, kNone) \ | 82 V(ReflectIsExtensible, kNone) \ |
83 \ | 83 V(ReflectOwnKeys, kNone) \ |
84 V(SymbolConstructor, kNone) \ | 84 V(ReflectPreventExtensions, kNone) \ |
85 V(SymbolConstructor_ConstructStub, kTarget) \ | 85 V(ReflectSet, kNone) \ |
86 \ | 86 V(ReflectSetPrototypeOf, kNone) \ |
87 V(HandleApiCall, kTarget) \ | 87 \ |
88 V(HandleApiCallConstruct, kTarget) \ | 88 V(SymbolConstructor, kNone) \ |
89 V(HandleApiCallAsFunction, kNone) \ | 89 V(SymbolConstructor_ConstructStub, kTarget) \ |
90 V(HandleApiCallAsConstructor, kNone) \ | 90 \ |
91 \ | 91 V(HandleApiCall, kTarget) \ |
92 V(RestrictedFunctionPropertiesThrower, kNone) \ | 92 V(HandleApiCallConstruct, kTarget) \ |
| 93 V(HandleApiCallAsFunction, kNone) \ |
| 94 V(HandleApiCallAsConstructor, kNone) \ |
| 95 \ |
| 96 V(RestrictedFunctionPropertiesThrower, kNone) \ |
93 V(RestrictedStrictArgumentsPropertiesThrower, kNone) | 97 V(RestrictedStrictArgumentsPropertiesThrower, kNone) |
94 | 98 |
95 // Define list of builtins implemented in assembly. | 99 // Define list of builtins implemented in assembly. |
96 #define BUILTIN_LIST_A(V) \ | 100 #define BUILTIN_LIST_A(V) \ |
97 V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 101 V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
98 \ | 102 \ |
99 V(ConstructedNonConstructable, BUILTIN, UNINITIALIZED, kNoExtraICState) \ | 103 V(ConstructedNonConstructable, BUILTIN, UNINITIALIZED, kNoExtraICState) \ |
100 \ | 104 \ |
101 V(CallFunction_ReceiverIsNullOrUndefined, BUILTIN, UNINITIALIZED, \ | 105 V(CallFunction_ReceiverIsNullOrUndefined, BUILTIN, UNINITIALIZED, \ |
102 kNoExtraICState) \ | 106 kNoExtraICState) \ |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
386 friend class BuiltinFunctionTable; | 390 friend class BuiltinFunctionTable; |
387 friend class Isolate; | 391 friend class Isolate; |
388 | 392 |
389 DISALLOW_COPY_AND_ASSIGN(Builtins); | 393 DISALLOW_COPY_AND_ASSIGN(Builtins); |
390 }; | 394 }; |
391 | 395 |
392 } // namespace internal | 396 } // namespace internal |
393 } // namespace v8 | 397 } // namespace v8 |
394 | 398 |
395 #endif // V8_BUILTINS_H_ | 399 #endif // V8_BUILTINS_H_ |
OLD | NEW |