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 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
124 V(GlobalEscape, kNone) \ | 124 V(GlobalEscape, kNone) \ |
125 V(GlobalUnescape, kNone) \ | 125 V(GlobalUnescape, kNone) \ |
126 \ | 126 \ |
127 V(GlobalEval, kTarget) \ | 127 V(GlobalEval, kTarget) \ |
128 \ | 128 \ |
129 V(JsonParse, kNone) \ | 129 V(JsonParse, kNone) \ |
130 V(JsonStringify, kNone) \ | 130 V(JsonStringify, kNone) \ |
131 \ | 131 \ |
132 V(MathAcos, kNone) \ | 132 V(MathAcos, kNone) \ |
133 V(MathAsin, kNone) \ | 133 V(MathAsin, kNone) \ |
134 V(MathAtan, kNone) \ | |
135 V(MathFround, kNone) \ | 134 V(MathFround, kNone) \ |
136 V(MathImul, kNone) \ | 135 V(MathImul, kNone) \ |
137 \ | 136 \ |
138 V(ObjectAssign, kNone) \ | 137 V(ObjectAssign, kNone) \ |
139 V(ObjectCreate, kNone) \ | 138 V(ObjectCreate, kNone) \ |
140 V(ObjectDefineGetter, kNone) \ | 139 V(ObjectDefineGetter, kNone) \ |
141 V(ObjectDefineProperties, kNone) \ | 140 V(ObjectDefineProperties, kNone) \ |
142 V(ObjectDefineProperty, kNone) \ | 141 V(ObjectDefineProperty, kNone) \ |
143 V(ObjectDefineSetter, kNone) \ | 142 V(ObjectDefineSetter, kNone) \ |
144 V(ObjectEntries, kNone) \ | 143 V(ObjectEntries, kNone) \ |
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 V(MarkCodeAsExecutedOnce, BUILTIN, kNoExtraICState) \ | 313 V(MarkCodeAsExecutedOnce, BUILTIN, kNoExtraICState) \ |
315 V(MarkCodeAsExecutedTwice, BUILTIN, kNoExtraICState) \ | 314 V(MarkCodeAsExecutedTwice, BUILTIN, kNoExtraICState) \ |
316 CODE_AGE_LIST_WITH_ARG(DECLARE_CODE_AGE_BUILTIN, V) | 315 CODE_AGE_LIST_WITH_ARG(DECLARE_CODE_AGE_BUILTIN, V) |
317 | 316 |
318 // Define list of builtins implemented in TurboFan (with JS linkage). | 317 // Define list of builtins implemented in TurboFan (with JS linkage). |
319 #define BUILTIN_LIST_T(V) \ | 318 #define BUILTIN_LIST_T(V) \ |
320 V(FunctionPrototypeHasInstance, 2) \ | 319 V(FunctionPrototypeHasInstance, 2) \ |
321 V(GeneratorPrototypeNext, 2) \ | 320 V(GeneratorPrototypeNext, 2) \ |
322 V(GeneratorPrototypeReturn, 2) \ | 321 V(GeneratorPrototypeReturn, 2) \ |
323 V(GeneratorPrototypeThrow, 2) \ | 322 V(GeneratorPrototypeThrow, 2) \ |
| 323 V(MathAtan, 2) \ |
| 324 V(MathAtan2, 3) \ |
324 V(MathCeil, 2) \ | 325 V(MathCeil, 2) \ |
325 V(MathClz32, 2) \ | 326 V(MathClz32, 2) \ |
326 V(MathFloor, 2) \ | 327 V(MathFloor, 2) \ |
327 V(MathLog, 2) \ | 328 V(MathLog, 2) \ |
328 V(MathLog1p, 2) \ | 329 V(MathLog1p, 2) \ |
329 V(MathRound, 2) \ | 330 V(MathRound, 2) \ |
330 V(MathSqrt, 2) \ | 331 V(MathSqrt, 2) \ |
331 V(MathTrunc, 2) \ | 332 V(MathTrunc, 2) \ |
332 V(ObjectHasOwnProperty, 2) \ | 333 V(ObjectHasOwnProperty, 2) \ |
333 V(ArrayIsArray, 2) \ | 334 V(ArrayIsArray, 2) \ |
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
608 | 609 |
609 static void Generate_FunctionPrototypeApply(MacroAssembler* masm); | 610 static void Generate_FunctionPrototypeApply(MacroAssembler* masm); |
610 static void Generate_FunctionPrototypeCall(MacroAssembler* masm); | 611 static void Generate_FunctionPrototypeCall(MacroAssembler* masm); |
611 | 612 |
612 static void Generate_ReflectApply(MacroAssembler* masm); | 613 static void Generate_ReflectApply(MacroAssembler* masm); |
613 static void Generate_ReflectConstruct(MacroAssembler* masm); | 614 static void Generate_ReflectConstruct(MacroAssembler* masm); |
614 | 615 |
615 static void Generate_InternalArrayCode(MacroAssembler* masm); | 616 static void Generate_InternalArrayCode(MacroAssembler* masm); |
616 static void Generate_ArrayCode(MacroAssembler* masm); | 617 static void Generate_ArrayCode(MacroAssembler* masm); |
617 | 618 |
| 619 // ES6 section 20.2.2.6 Math.atan ( x ) |
| 620 static void Generate_MathAtan(CodeStubAssembler* assembler); |
| 621 // ES6 section 20.2.2.8 Math.atan2 ( y, x ) |
| 622 static void Generate_MathAtan2(CodeStubAssembler* assembler); |
618 // ES6 section 20.2.2.10 Math.ceil ( x ) | 623 // ES6 section 20.2.2.10 Math.ceil ( x ) |
619 static void Generate_MathCeil(CodeStubAssembler* assembler); | 624 static void Generate_MathCeil(CodeStubAssembler* assembler); |
620 // ES6 section 20.2.2.11 Math.clz32 ( x ) | 625 // ES6 section 20.2.2.11 Math.clz32 ( x ) |
621 static void Generate_MathClz32(CodeStubAssembler* assembler); | 626 static void Generate_MathClz32(CodeStubAssembler* assembler); |
622 // ES6 section 20.2.2.16 Math.floor ( x ) | 627 // ES6 section 20.2.2.16 Math.floor ( x ) |
623 static void Generate_MathFloor(CodeStubAssembler* assembler); | 628 static void Generate_MathFloor(CodeStubAssembler* assembler); |
624 // ES6 section 20.2.2.20 Math.log ( x ) | 629 // ES6 section 20.2.2.20 Math.log ( x ) |
625 static void Generate_MathLog(CodeStubAssembler* assembler); | 630 static void Generate_MathLog(CodeStubAssembler* assembler); |
626 // ES6 section 20.2.2.21 Math.log ( x ) | 631 // ES6 section 20.2.2.21 Math.log ( x ) |
627 static void Generate_MathLog1p(CodeStubAssembler* assembler); | 632 static void Generate_MathLog1p(CodeStubAssembler* assembler); |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
723 friend class BuiltinFunctionTable; | 728 friend class BuiltinFunctionTable; |
724 friend class Isolate; | 729 friend class Isolate; |
725 | 730 |
726 DISALLOW_COPY_AND_ASSIGN(Builtins); | 731 DISALLOW_COPY_AND_ASSIGN(Builtins); |
727 }; | 732 }; |
728 | 733 |
729 } // namespace internal | 734 } // namespace internal |
730 } // namespace v8 | 735 } // namespace v8 |
731 | 736 |
732 #endif // V8_BUILTINS_H_ | 737 #endif // V8_BUILTINS_H_ |
OLD | NEW |