OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 6972 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6983 // List of builtin functions we want to identify to improve code | 6983 // List of builtin functions we want to identify to improve code |
6984 // generation. | 6984 // generation. |
6985 // | 6985 // |
6986 // Each entry has a name of a global object property holding an object | 6986 // Each entry has a name of a global object property holding an object |
6987 // optionally followed by ".prototype", a name of a builtin function | 6987 // optionally followed by ".prototype", a name of a builtin function |
6988 // on the object (the one the id is set for), and a label. | 6988 // on the object (the one the id is set for), and a label. |
6989 // | 6989 // |
6990 // Installation of ids for the selected builtin functions is handled | 6990 // Installation of ids for the selected builtin functions is handled |
6991 // by the bootstrapper. | 6991 // by the bootstrapper. |
6992 #define FUNCTIONS_WITH_ID_LIST(V) \ | 6992 #define FUNCTIONS_WITH_ID_LIST(V) \ |
| 6993 V(Array, isArray, ArrayIsArray) \ |
6993 V(Array.prototype, concat, ArrayConcat) \ | 6994 V(Array.prototype, concat, ArrayConcat) \ |
6994 V(Array.prototype, every, ArrayEvery) \ | 6995 V(Array.prototype, every, ArrayEvery) \ |
6995 V(Array.prototype, fill, ArrayFill) \ | 6996 V(Array.prototype, fill, ArrayFill) \ |
6996 V(Array.prototype, filter, ArrayFilter) \ | 6997 V(Array.prototype, filter, ArrayFilter) \ |
6997 V(Array.prototype, findIndex, ArrayFindIndex) \ | 6998 V(Array.prototype, findIndex, ArrayFindIndex) \ |
6998 V(Array.prototype, forEach, ArrayForEach) \ | 6999 V(Array.prototype, forEach, ArrayForEach) \ |
6999 V(Array.prototype, includes, ArrayIncludes) \ | 7000 V(Array.prototype, includes, ArrayIncludes) \ |
7000 V(Array.prototype, indexOf, ArrayIndexOf) \ | 7001 V(Array.prototype, indexOf, ArrayIndexOf) \ |
7001 V(Array.prototype, join, ArrayJoin) \ | 7002 V(Array.prototype, join, ArrayJoin) \ |
7002 V(Array.prototype, lastIndexOf, ArrayLastIndexOf) \ | 7003 V(Array.prototype, lastIndexOf, ArrayLastIndexOf) \ |
(...skipping 11 matching lines...) Expand all Loading... |
7014 V(Date.prototype, getDay, DateGetDay) \ | 7015 V(Date.prototype, getDay, DateGetDay) \ |
7015 V(Date.prototype, getFullYear, DateGetFullYear) \ | 7016 V(Date.prototype, getFullYear, DateGetFullYear) \ |
7016 V(Date.prototype, getHours, DateGetHours) \ | 7017 V(Date.prototype, getHours, DateGetHours) \ |
7017 V(Date.prototype, getMilliseconds, DateGetMilliseconds) \ | 7018 V(Date.prototype, getMilliseconds, DateGetMilliseconds) \ |
7018 V(Date.prototype, getMinutes, DateGetMinutes) \ | 7019 V(Date.prototype, getMinutes, DateGetMinutes) \ |
7019 V(Date.prototype, getMonth, DateGetMonth) \ | 7020 V(Date.prototype, getMonth, DateGetMonth) \ |
7020 V(Date.prototype, getSeconds, DateGetSeconds) \ | 7021 V(Date.prototype, getSeconds, DateGetSeconds) \ |
7021 V(Date.prototype, getTime, DateGetTime) \ | 7022 V(Date.prototype, getTime, DateGetTime) \ |
7022 V(Function.prototype, apply, FunctionApply) \ | 7023 V(Function.prototype, apply, FunctionApply) \ |
7023 V(Function.prototype, call, FunctionCall) \ | 7024 V(Function.prototype, call, FunctionCall) \ |
| 7025 V(Object, assign, ObjectAssign) \ |
| 7026 V(Object, create, ObjectCreate) \ |
7024 V(Object.prototype, hasOwnProperty, ObjectHasOwnProperty) \ | 7027 V(Object.prototype, hasOwnProperty, ObjectHasOwnProperty) \ |
7025 V(RegExp.prototype, compile, RegExpCompile) \ | 7028 V(RegExp.prototype, compile, RegExpCompile) \ |
7026 V(RegExp.prototype, exec, RegExpExec) \ | 7029 V(RegExp.prototype, exec, RegExpExec) \ |
7027 V(RegExp.prototype, test, RegExpTest) \ | 7030 V(RegExp.prototype, test, RegExpTest) \ |
7028 V(RegExp.prototype, toString, RegExpToString) \ | 7031 V(RegExp.prototype, toString, RegExpToString) \ |
7029 V(String.prototype, charCodeAt, StringCharCodeAt) \ | 7032 V(String.prototype, charCodeAt, StringCharCodeAt) \ |
7030 V(String.prototype, charAt, StringCharAt) \ | 7033 V(String.prototype, charAt, StringCharAt) \ |
7031 V(String.prototype, codePointAt, StringCodePointAt) \ | 7034 V(String.prototype, codePointAt, StringCodePointAt) \ |
7032 V(String.prototype, concat, StringConcat) \ | 7035 V(String.prototype, concat, StringConcat) \ |
7033 V(String.prototype, endsWith, StringEndsWith) \ | 7036 V(String.prototype, endsWith, StringEndsWith) \ |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7083 V(Math, clz32, MathClz32) \ | 7086 V(Math, clz32, MathClz32) \ |
7084 V(Math, fround, MathFround) \ | 7087 V(Math, fround, MathFround) \ |
7085 V(Math, trunc, MathTrunc) \ | 7088 V(Math, trunc, MathTrunc) \ |
7086 V(Number, isFinite, NumberIsFinite) \ | 7089 V(Number, isFinite, NumberIsFinite) \ |
7087 V(Number, isInteger, NumberIsInteger) \ | 7090 V(Number, isInteger, NumberIsInteger) \ |
7088 V(Number, isNaN, NumberIsNaN) \ | 7091 V(Number, isNaN, NumberIsNaN) \ |
7089 V(Number, isSafeInteger, NumberIsSafeInteger) \ | 7092 V(Number, isSafeInteger, NumberIsSafeInteger) \ |
7090 V(Number, parseFloat, NumberParseFloat) \ | 7093 V(Number, parseFloat, NumberParseFloat) \ |
7091 V(Number, parseInt, NumberParseInt) \ | 7094 V(Number, parseInt, NumberParseInt) \ |
7092 V(Number.prototype, toString, NumberToString) \ | 7095 V(Number.prototype, toString, NumberToString) \ |
7093 V(Object, create, ObjectCreate) | 7096 V(Map.prototype, clear, MapClear) \ |
| 7097 V(Map.prototype, delete, MapDelete) \ |
| 7098 V(Map.prototype, entries, MapEntries) \ |
| 7099 V(Map.prototype, forEach, MapForEach) \ |
| 7100 V(Map.prototype, has, MapHas) \ |
| 7101 V(Map.prototype, keys, MapKeys) \ |
| 7102 V(Map.prototype, set, MapSet) \ |
| 7103 V(Map.prototype, values, MapValues) \ |
| 7104 V(Set.prototype, add, SetAdd) \ |
| 7105 V(Set.prototype, clear, SetClear) \ |
| 7106 V(Set.prototype, delete, SetDelete) \ |
| 7107 V(Set.prototype, entries, SetEntries) \ |
| 7108 V(Set.prototype, forEach, SetForEach) \ |
| 7109 V(Set.prototype, has, SetHas) \ |
| 7110 V(Set.prototype, keys, SetKeys) \ |
| 7111 V(Set.prototype, values, SetValues) \ |
| 7112 V(WeakMap.prototype, delete, WeakMapDelete) \ |
| 7113 V(WeakMap.prototype, has, WeakMapHas) \ |
| 7114 V(WeakMap.prototype, set, WeakMapSet) \ |
| 7115 V(WeakSet.prototype, add, WeakSetAdd) \ |
| 7116 V(WeakSet.prototype, delete, WeakSetDelete) \ |
| 7117 V(WeakSet.prototype, has, WeakSetHas) |
7094 | 7118 |
7095 #define ATOMIC_FUNCTIONS_WITH_ID_LIST(V) \ | 7119 #define ATOMIC_FUNCTIONS_WITH_ID_LIST(V) \ |
7096 V(Atomics, load, AtomicsLoad) \ | 7120 V(Atomics, load, AtomicsLoad) \ |
7097 V(Atomics, store, AtomicsStore) | 7121 V(Atomics, store, AtomicsStore) |
7098 | 7122 |
7099 enum BuiltinFunctionId { | 7123 enum BuiltinFunctionId { |
7100 kArrayCode, | 7124 kArrayCode, |
7101 #define DECLARE_FUNCTION_ID(ignored1, ignore2, name) \ | 7125 #define DECLARE_FUNCTION_ID(ignored1, ignore2, name) \ |
7102 k##name, | 7126 k##name, |
7103 FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) | 7127 FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) |
(...skipping 4598 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11702 } | 11726 } |
11703 }; | 11727 }; |
11704 | 11728 |
11705 | 11729 |
11706 } // NOLINT, false-positive due to second-order macros. | 11730 } // NOLINT, false-positive due to second-order macros. |
11707 } // NOLINT, false-positive due to second-order macros. | 11731 } // NOLINT, false-positive due to second-order macros. |
11708 | 11732 |
11709 #include "src/objects/object-macros-undef.h" | 11733 #include "src/objects/object-macros-undef.h" |
11710 | 11734 |
11711 #endif // V8_OBJECTS_H_ | 11735 #endif // V8_OBJECTS_H_ |
OLD | NEW |