| 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 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 318 // Define list of builtins implemented in TurboFan (with JS linkage). | 318 // Define list of builtins implemented in TurboFan (with JS linkage). |
| 319 #define BUILTIN_LIST_T(V) \ | 319 #define BUILTIN_LIST_T(V) \ |
| 320 V(FunctionPrototypeHasInstance, 2) \ | 320 V(FunctionPrototypeHasInstance, 2) \ |
| 321 V(GeneratorPrototypeNext, 2) \ | 321 V(GeneratorPrototypeNext, 2) \ |
| 322 V(GeneratorPrototypeReturn, 2) \ | 322 V(GeneratorPrototypeReturn, 2) \ |
| 323 V(GeneratorPrototypeThrow, 2) \ | 323 V(GeneratorPrototypeThrow, 2) \ |
| 324 V(MathCeil, 2) \ | 324 V(MathCeil, 2) \ |
| 325 V(MathClz32, 2) \ | 325 V(MathClz32, 2) \ |
| 326 V(MathFloor, 2) \ | 326 V(MathFloor, 2) \ |
| 327 V(MathLog, 2) \ | 327 V(MathLog, 2) \ |
| 328 V(MathLog1p, 2) \ |
| 328 V(MathRound, 2) \ | 329 V(MathRound, 2) \ |
| 329 V(MathSqrt, 2) \ | 330 V(MathSqrt, 2) \ |
| 330 V(MathTrunc, 2) \ | 331 V(MathTrunc, 2) \ |
| 331 V(ObjectHasOwnProperty, 2) \ | 332 V(ObjectHasOwnProperty, 2) \ |
| 332 V(ArrayIsArray, 2) \ | 333 V(ArrayIsArray, 2) \ |
| 333 V(StringFromCharCode, 2) \ | 334 V(StringFromCharCode, 2) \ |
| 334 V(StringPrototypeCharAt, 2) \ | 335 V(StringPrototypeCharAt, 2) \ |
| 335 V(StringPrototypeCharCodeAt, 2) \ | 336 V(StringPrototypeCharCodeAt, 2) \ |
| 336 V(TypedArrayPrototypeByteLength, 1) \ | 337 V(TypedArrayPrototypeByteLength, 1) \ |
| 337 V(TypedArrayPrototypeByteOffset, 1) \ | 338 V(TypedArrayPrototypeByteOffset, 1) \ |
| (...skipping 277 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 615 static void Generate_ArrayCode(MacroAssembler* masm); | 616 static void Generate_ArrayCode(MacroAssembler* masm); |
| 616 | 617 |
| 617 // ES6 section 20.2.2.10 Math.ceil ( x ) | 618 // ES6 section 20.2.2.10 Math.ceil ( x ) |
| 618 static void Generate_MathCeil(CodeStubAssembler* assembler); | 619 static void Generate_MathCeil(CodeStubAssembler* assembler); |
| 619 // ES6 section 20.2.2.11 Math.clz32 ( x ) | 620 // ES6 section 20.2.2.11 Math.clz32 ( x ) |
| 620 static void Generate_MathClz32(CodeStubAssembler* assembler); | 621 static void Generate_MathClz32(CodeStubAssembler* assembler); |
| 621 // ES6 section 20.2.2.16 Math.floor ( x ) | 622 // ES6 section 20.2.2.16 Math.floor ( x ) |
| 622 static void Generate_MathFloor(CodeStubAssembler* assembler); | 623 static void Generate_MathFloor(CodeStubAssembler* assembler); |
| 623 // ES6 section 20.2.2.20 Math.log ( x ) | 624 // ES6 section 20.2.2.20 Math.log ( x ) |
| 624 static void Generate_MathLog(CodeStubAssembler* assembler); | 625 static void Generate_MathLog(CodeStubAssembler* assembler); |
| 626 // ES6 section 20.2.2.21 Math.log ( x ) |
| 627 static void Generate_MathLog1p(CodeStubAssembler* assembler); |
| 625 enum class MathMaxMinKind { kMax, kMin }; | 628 enum class MathMaxMinKind { kMax, kMin }; |
| 626 static void Generate_MathMaxMin(MacroAssembler* masm, MathMaxMinKind kind); | 629 static void Generate_MathMaxMin(MacroAssembler* masm, MathMaxMinKind kind); |
| 627 // ES6 section 20.2.2.24 Math.max ( value1, value2 , ...values ) | 630 // ES6 section 20.2.2.24 Math.max ( value1, value2 , ...values ) |
| 628 static void Generate_MathMax(MacroAssembler* masm) { | 631 static void Generate_MathMax(MacroAssembler* masm) { |
| 629 Generate_MathMaxMin(masm, MathMaxMinKind::kMax); | 632 Generate_MathMaxMin(masm, MathMaxMinKind::kMax); |
| 630 } | 633 } |
| 631 // ES6 section 20.2.2.25 Math.min ( value1, value2 , ...values ) | 634 // ES6 section 20.2.2.25 Math.min ( value1, value2 , ...values ) |
| 632 static void Generate_MathMin(MacroAssembler* masm) { | 635 static void Generate_MathMin(MacroAssembler* masm) { |
| 633 Generate_MathMaxMin(masm, MathMaxMinKind::kMin); | 636 Generate_MathMaxMin(masm, MathMaxMinKind::kMin); |
| 634 } | 637 } |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 720 friend class BuiltinFunctionTable; | 723 friend class BuiltinFunctionTable; |
| 721 friend class Isolate; | 724 friend class Isolate; |
| 722 | 725 |
| 723 DISALLOW_COPY_AND_ASSIGN(Builtins); | 726 DISALLOW_COPY_AND_ASSIGN(Builtins); |
| 724 }; | 727 }; |
| 725 | 728 |
| 726 } // namespace internal | 729 } // namespace internal |
| 727 } // namespace v8 | 730 } // namespace v8 |
| 728 | 731 |
| 729 #endif // V8_BUILTINS_H_ | 732 #endif // V8_BUILTINS_H_ |
| OLD | NEW |