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

Side by Side Diff: src/objects.h

Issue 2313073002: [builtins] Migrate Number predicates and make them optimizable. (Closed)
Patch Set: Created 4 years, 3 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/js/v8natives.js ('k') | test/cctest/test-serialize.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 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 6933 matching lines...) Expand 10 before | Expand all | Expand 10 after
6944 V(Math, acosh, MathAcosh) \ 6944 V(Math, acosh, MathAcosh) \
6945 V(Math, asin, MathAsin) \ 6945 V(Math, asin, MathAsin) \
6946 V(Math, asinh, MathAsinh) \ 6946 V(Math, asinh, MathAsinh) \
6947 V(Math, atan, MathAtan) \ 6947 V(Math, atan, MathAtan) \
6948 V(Math, atan2, MathAtan2) \ 6948 V(Math, atan2, MathAtan2) \
6949 V(Math, atanh, MathAtanh) \ 6949 V(Math, atanh, MathAtanh) \
6950 V(Math, imul, MathImul) \ 6950 V(Math, imul, MathImul) \
6951 V(Math, clz32, MathClz32) \ 6951 V(Math, clz32, MathClz32) \
6952 V(Math, fround, MathFround) \ 6952 V(Math, fround, MathFround) \
6953 V(Math, trunc, MathTrunc) \ 6953 V(Math, trunc, MathTrunc) \
6954 V(Number, isFinite, NumberIsFinite) \
6955 V(Number, isInteger, NumberIsInteger) \
6956 V(Number, isNaN, NumberIsNaN) \
6957 V(Number, isSafeInteger, NumberIsSafeInteger) \
6954 V(Number, parseInt, NumberParseInt) \ 6958 V(Number, parseInt, NumberParseInt) \
6955 V(Number.prototype, toString, NumberToString) 6959 V(Number.prototype, toString, NumberToString)
6956 6960
6957 #define ATOMIC_FUNCTIONS_WITH_ID_LIST(V) \ 6961 #define ATOMIC_FUNCTIONS_WITH_ID_LIST(V) \
6958 V(Atomics, load, AtomicsLoad) \ 6962 V(Atomics, load, AtomicsLoad) \
6959 V(Atomics, store, AtomicsStore) 6963 V(Atomics, store, AtomicsStore)
6960 6964
6961 enum BuiltinFunctionId { 6965 enum BuiltinFunctionId {
6962 kArrayCode, 6966 kArrayCode,
6963 #define DECLARE_FUNCTION_ID(ignored1, ignore2, name) \ 6967 #define DECLARE_FUNCTION_ID(ignored1, ignore2, name) \
6964 k##name, 6968 k##name,
6965 FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) 6969 FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID)
6966 ATOMIC_FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) 6970 ATOMIC_FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID)
6967 #undef DECLARE_FUNCTION_ID 6971 #undef DECLARE_FUNCTION_ID
6968 // Fake id for a special case of Math.pow. Note, it continues the 6972 // Fake id for a special case of Math.pow. Note, it continues the
6969 // list of math functions. 6973 // list of math functions.
6970 kMathPowHalf, 6974 kMathPowHalf,
6971 // These are manually assigned to special getters during bootstrapping. 6975 // These are manually assigned to special getters during bootstrapping.
6972 kArrayBufferByteLength, 6976 kArrayBufferByteLength,
6973 kDataViewBuffer, 6977 kDataViewBuffer,
6974 kDataViewByteLength, 6978 kDataViewByteLength,
6975 kDataViewByteOffset, 6979 kDataViewByteOffset,
6976 kGlobalDecodeURI, 6980 kGlobalDecodeURI,
6977 kGlobalDecodeURIComponent, 6981 kGlobalDecodeURIComponent,
6978 kGlobalEncodeURI, 6982 kGlobalEncodeURI,
6979 kGlobalEncodeURIComponent, 6983 kGlobalEncodeURIComponent,
6980 kGlobalEscape, 6984 kGlobalEscape,
6981 kGlobalUnescape, 6985 kGlobalUnescape,
6986 kGlobalIsFinite,
6987 kGlobalIsNaN,
6982 kTypedArrayByteLength, 6988 kTypedArrayByteLength,
6983 kTypedArrayByteOffset, 6989 kTypedArrayByteOffset,
6984 kTypedArrayLength, 6990 kTypedArrayLength,
6985 kSharedArrayBufferByteLength, 6991 kSharedArrayBufferByteLength,
6986 }; 6992 };
6987 6993
6988 6994
6989 // Result of searching in an optimized code map of a SharedFunctionInfo. Note 6995 // Result of searching in an optimized code map of a SharedFunctionInfo. Note
6990 // that both {code} and {literals} can be NULL to pass search result status. 6996 // that both {code} and {literals} can be NULL to pass search result status.
6991 struct CodeAndLiterals { 6997 struct CodeAndLiterals {
(...skipping 4209 matching lines...) Expand 10 before | Expand all | Expand 10 after
11201 } 11207 }
11202 return value; 11208 return value;
11203 } 11209 }
11204 }; 11210 };
11205 11211
11206 11212
11207 } // NOLINT, false-positive due to second-order macros. 11213 } // NOLINT, false-positive due to second-order macros.
11208 } // NOLINT, false-positive due to second-order macros. 11214 } // NOLINT, false-positive due to second-order macros.
11209 11215
11210 #endif // V8_OBJECTS_H_ 11216 #endif // V8_OBJECTS_H_
OLDNEW
« no previous file with comments | « src/js/v8natives.js ('k') | test/cctest/test-serialize.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698