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

Side by Side Diff: src/objects.h

Issue 2222053002: [turbofan] Improve typing rules for various builtins. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 4 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/compiler/typer.cc ('k') | src/type-cache.h » ('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 6778 matching lines...) Expand 10 before | Expand all | Expand 10 after
6789 V(Array.prototype, lastIndexOf, ArrayLastIndexOf) \ 6789 V(Array.prototype, lastIndexOf, ArrayLastIndexOf) \
6790 V(Array.prototype, push, ArrayPush) \ 6790 V(Array.prototype, push, ArrayPush) \
6791 V(Array.prototype, pop, ArrayPop) \ 6791 V(Array.prototype, pop, ArrayPop) \
6792 V(Array.prototype, shift, ArrayShift) \ 6792 V(Array.prototype, shift, ArrayShift) \
6793 V(Function.prototype, apply, FunctionApply) \ 6793 V(Function.prototype, apply, FunctionApply) \
6794 V(Function.prototype, call, FunctionCall) \ 6794 V(Function.prototype, call, FunctionCall) \
6795 V(Object.prototype, hasOwnProperty, ObjectHasOwnProperty) \ 6795 V(Object.prototype, hasOwnProperty, ObjectHasOwnProperty) \
6796 V(String.prototype, charCodeAt, StringCharCodeAt) \ 6796 V(String.prototype, charCodeAt, StringCharCodeAt) \
6797 V(String.prototype, charAt, StringCharAt) \ 6797 V(String.prototype, charAt, StringCharAt) \
6798 V(String.prototype, concat, StringConcat) \ 6798 V(String.prototype, concat, StringConcat) \
6799 V(String.prototype, substr, StringSubstr) \
6799 V(String.prototype, toLowerCase, StringToLowerCase) \ 6800 V(String.prototype, toLowerCase, StringToLowerCase) \
6800 V(String.prototype, toUpperCase, StringToUpperCase) \ 6801 V(String.prototype, toUpperCase, StringToUpperCase) \
6801 V(String, fromCharCode, StringFromCharCode) \ 6802 V(String, fromCharCode, StringFromCharCode) \
6802 V(Math, random, MathRandom) \ 6803 V(Math, random, MathRandom) \
6803 V(Math, floor, MathFloor) \ 6804 V(Math, floor, MathFloor) \
6804 V(Math, round, MathRound) \ 6805 V(Math, round, MathRound) \
6805 V(Math, ceil, MathCeil) \ 6806 V(Math, ceil, MathCeil) \
6806 V(Math, abs, MathAbs) \ 6807 V(Math, abs, MathAbs) \
6807 V(Math, log, MathLog) \ 6808 V(Math, log, MathLog) \
6808 V(Math, log1p, MathLog1p) \ 6809 V(Math, log1p, MathLog1p) \
(...skipping 17 matching lines...) Expand all
6826 V(Math, acosh, MathAcosh) \ 6827 V(Math, acosh, MathAcosh) \
6827 V(Math, asin, MathAsin) \ 6828 V(Math, asin, MathAsin) \
6828 V(Math, asinh, MathAsinh) \ 6829 V(Math, asinh, MathAsinh) \
6829 V(Math, atan, MathAtan) \ 6830 V(Math, atan, MathAtan) \
6830 V(Math, atan2, MathAtan2) \ 6831 V(Math, atan2, MathAtan2) \
6831 V(Math, atanh, MathAtanh) \ 6832 V(Math, atanh, MathAtanh) \
6832 V(Math, imul, MathImul) \ 6833 V(Math, imul, MathImul) \
6833 V(Math, clz32, MathClz32) \ 6834 V(Math, clz32, MathClz32) \
6834 V(Math, fround, MathFround) \ 6835 V(Math, fround, MathFround) \
6835 V(Math, trunc, MathTrunc) \ 6836 V(Math, trunc, MathTrunc) \
6836 V(Number, parseInt, NumberParseInt) 6837 V(Number, parseInt, NumberParseInt) \
6838 V(Number.prototype, toString, NumberToString)
6837 6839
6838 #define ATOMIC_FUNCTIONS_WITH_ID_LIST(V) \ 6840 #define ATOMIC_FUNCTIONS_WITH_ID_LIST(V) \
6839 V(Atomics, load, AtomicsLoad) \ 6841 V(Atomics, load, AtomicsLoad) \
6840 V(Atomics, store, AtomicsStore) 6842 V(Atomics, store, AtomicsStore)
6841 6843
6842 enum BuiltinFunctionId { 6844 enum BuiltinFunctionId {
6843 kArrayCode, 6845 kArrayCode,
6844 #define DECLARE_FUNCTION_ID(ignored1, ignore2, name) \ 6846 #define DECLARE_FUNCTION_ID(ignored1, ignore2, name) \
6845 k##name, 6847 k##name,
6846 FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) 6848 FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID)
6847 ATOMIC_FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID) 6849 ATOMIC_FUNCTIONS_WITH_ID_LIST(DECLARE_FUNCTION_ID)
6848 #undef DECLARE_FUNCTION_ID 6850 #undef DECLARE_FUNCTION_ID
6849 // Fake id for a special case of Math.pow. Note, it continues the 6851 // Fake id for a special case of Math.pow. Note, it continues the
6850 // list of math functions. 6852 // list of math functions.
6851 kMathPowHalf, 6853 kMathPowHalf,
6852 // These are manually assigned to special getters during bootstrapping. 6854 // These are manually assigned to special getters during bootstrapping.
6853 kArrayBufferByteLength, 6855 kArrayBufferByteLength,
6854 kDataViewBuffer, 6856 kDataViewBuffer,
6855 kDataViewByteLength, 6857 kDataViewByteLength,
6856 kDataViewByteOffset, 6858 kDataViewByteOffset,
6859 kGlobalDecodeURI,
6860 kGlobalDecodeURIComponent,
6861 kGlobalEncodeURI,
6862 kGlobalEncodeURIComponent,
6863 kGlobalEscape,
6864 kGlobalUnescape,
6857 kTypedArrayByteLength, 6865 kTypedArrayByteLength,
6858 kTypedArrayByteOffset, 6866 kTypedArrayByteOffset,
6859 kTypedArrayLength, 6867 kTypedArrayLength,
6860 kSharedArrayBufferByteLength, 6868 kSharedArrayBufferByteLength,
6861 }; 6869 };
6862 6870
6863 6871
6864 // Result of searching in an optimized code map of a SharedFunctionInfo. Note 6872 // Result of searching in an optimized code map of a SharedFunctionInfo. Note
6865 // that both {code} and {literals} can be NULL to pass search result status. 6873 // that both {code} and {literals} can be NULL to pass search result status.
6866 struct CodeAndLiterals { 6874 struct CodeAndLiterals {
(...skipping 4200 matching lines...) Expand 10 before | Expand all | Expand 10 after
11067 } 11075 }
11068 return value; 11076 return value;
11069 } 11077 }
11070 }; 11078 };
11071 11079
11072 11080
11073 } // NOLINT, false-positive due to second-order macros. 11081 } // NOLINT, false-positive due to second-order macros.
11074 } // NOLINT, false-positive due to second-order macros. 11082 } // NOLINT, false-positive due to second-order macros.
11075 11083
11076 #endif // V8_OBJECTS_H_ 11084 #endif // V8_OBJECTS_H_
OLDNEW
« no previous file with comments | « src/compiler/typer.cc ('k') | src/type-cache.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698