| 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 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 53 UNINITIALIZED, kNoExtraICState) | 53 UNINITIALIZED, kNoExtraICState) |
| 54 | 54 |
| 55 | 55 |
| 56 // Define list of builtins implemented in C++. | 56 // Define list of builtins implemented in C++. |
| 57 #define BUILTIN_LIST_C(V) \ | 57 #define BUILTIN_LIST_C(V) \ |
| 58 V(Illegal, kNone) \ | 58 V(Illegal, kNone) \ |
| 59 \ | 59 \ |
| 60 V(EmptyFunction, kNone) \ | 60 V(EmptyFunction, kNone) \ |
| 61 \ | 61 \ |
| 62 V(ArrayConcat, kNone) \ | 62 V(ArrayConcat, kNone) \ |
| 63 V(ArrayIsArray, kNone) \ | |
| 64 V(ArrayPop, kNone) \ | 63 V(ArrayPop, kNone) \ |
| 65 V(ArrayPush, kNone) \ | 64 V(ArrayPush, kNone) \ |
| 66 V(ArrayShift, kNone) \ | 65 V(ArrayShift, kNone) \ |
| 67 V(ArraySlice, kNone) \ | 66 V(ArraySlice, kNone) \ |
| 68 V(ArraySplice, kNone) \ | 67 V(ArraySplice, kNone) \ |
| 69 V(ArrayUnshift, kNone) \ | 68 V(ArrayUnshift, kNone) \ |
| 70 \ | 69 \ |
| 71 V(ArrayBufferConstructor, kTarget) \ | 70 V(ArrayBufferConstructor, kTarget) \ |
| 72 V(ArrayBufferConstructor_ConstructStub, kTargetAndNewTarget) \ | 71 V(ArrayBufferConstructor_ConstructStub, kTargetAndNewTarget) \ |
| 73 V(ArrayBufferIsView, kNone) \ | 72 V(ArrayBufferIsView, kNone) \ |
| (...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 306 V(GeneratorPrototypeNext, 2) \ | 305 V(GeneratorPrototypeNext, 2) \ |
| 307 V(GeneratorPrototypeReturn, 2) \ | 306 V(GeneratorPrototypeReturn, 2) \ |
| 308 V(GeneratorPrototypeThrow, 2) \ | 307 V(GeneratorPrototypeThrow, 2) \ |
| 309 V(MathCeil, 2) \ | 308 V(MathCeil, 2) \ |
| 310 V(MathClz32, 2) \ | 309 V(MathClz32, 2) \ |
| 311 V(MathFloor, 2) \ | 310 V(MathFloor, 2) \ |
| 312 V(MathRound, 2) \ | 311 V(MathRound, 2) \ |
| 313 V(MathSqrt, 2) \ | 312 V(MathSqrt, 2) \ |
| 314 V(MathTrunc, 2) \ | 313 V(MathTrunc, 2) \ |
| 315 V(ObjectHasOwnProperty, 2) \ | 314 V(ObjectHasOwnProperty, 2) \ |
| 315 V(ArrayIsArray, 2) \ |
| 316 V(StringPrototypeCharAt, 2) \ | 316 V(StringPrototypeCharAt, 2) \ |
| 317 V(StringPrototypeCharCodeAt, 2) \ | 317 V(StringPrototypeCharCodeAt, 2) \ |
| 318 V(AtomicsLoad, 3) | 318 V(AtomicsLoad, 3) |
| 319 | 319 |
| 320 // Define list of builtin handlers implemented in assembly. | 320 // Define list of builtin handlers implemented in assembly. |
| 321 #define BUILTIN_LIST_H(V) \ | 321 #define BUILTIN_LIST_H(V) \ |
| 322 V(LoadIC_Slow, LOAD_IC) \ | 322 V(LoadIC_Slow, LOAD_IC) \ |
| 323 V(KeyedLoadIC_Slow, KEYED_LOAD_IC) \ | 323 V(KeyedLoadIC_Slow, KEYED_LOAD_IC) \ |
| 324 V(StoreIC_Slow, STORE_IC) \ | 324 V(StoreIC_Slow, STORE_IC) \ |
| 325 V(KeyedStoreIC_Slow, KEYED_STORE_IC) \ | 325 V(KeyedStoreIC_Slow, KEYED_STORE_IC) \ |
| (...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 621 // ES6 section 25.3.1.2 Generator.prototype.next ( value ) | 621 // ES6 section 25.3.1.2 Generator.prototype.next ( value ) |
| 622 static void Generate_GeneratorPrototypeNext(CodeStubAssembler* assembler); | 622 static void Generate_GeneratorPrototypeNext(CodeStubAssembler* assembler); |
| 623 // ES6 section 25.3.1.3 Generator.prototype.return ( value ) | 623 // ES6 section 25.3.1.3 Generator.prototype.return ( value ) |
| 624 static void Generate_GeneratorPrototypeReturn(CodeStubAssembler* assembler); | 624 static void Generate_GeneratorPrototypeReturn(CodeStubAssembler* assembler); |
| 625 // ES6 section 25.3.1.4 Generator.prototype.throw ( exception ) | 625 // ES6 section 25.3.1.4 Generator.prototype.throw ( exception ) |
| 626 static void Generate_GeneratorPrototypeThrow(CodeStubAssembler* assembler); | 626 static void Generate_GeneratorPrototypeThrow(CodeStubAssembler* assembler); |
| 627 | 627 |
| 628 // ES6 section 19.1.3.2 Object.prototype.hasOwnProperty | 628 // ES6 section 19.1.3.2 Object.prototype.hasOwnProperty |
| 629 static void Generate_ObjectHasOwnProperty(CodeStubAssembler* assembler); | 629 static void Generate_ObjectHasOwnProperty(CodeStubAssembler* assembler); |
| 630 | 630 |
| 631 // ES6 section 22.1.2.2 Array.isArray |
| 632 static void Generate_ArrayIsArray(CodeStubAssembler* assembler); |
| 633 |
| 631 // ES6 section 21.1.3.1 String.prototype.charAt ( pos ) | 634 // ES6 section 21.1.3.1 String.prototype.charAt ( pos ) |
| 632 static void Generate_StringPrototypeCharAt(CodeStubAssembler* assembler); | 635 static void Generate_StringPrototypeCharAt(CodeStubAssembler* assembler); |
| 633 // ES6 section 21.1.3.2 String.prototype.charCodeAt ( pos ) | 636 // ES6 section 21.1.3.2 String.prototype.charCodeAt ( pos ) |
| 634 static void Generate_StringPrototypeCharCodeAt(CodeStubAssembler* assembler); | 637 static void Generate_StringPrototypeCharCodeAt(CodeStubAssembler* assembler); |
| 635 | 638 |
| 636 static void Generate_StringConstructor(MacroAssembler* masm); | 639 static void Generate_StringConstructor(MacroAssembler* masm); |
| 637 static void Generate_StringConstructor_ConstructStub(MacroAssembler* masm); | 640 static void Generate_StringConstructor_ConstructStub(MacroAssembler* masm); |
| 638 static void Generate_OnStackReplacement(MacroAssembler* masm); | 641 static void Generate_OnStackReplacement(MacroAssembler* masm); |
| 639 static void Generate_InterruptCheck(MacroAssembler* masm); | 642 static void Generate_InterruptCheck(MacroAssembler* masm); |
| 640 static void Generate_StackCheck(MacroAssembler* masm); | 643 static void Generate_StackCheck(MacroAssembler* masm); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 677 friend class BuiltinFunctionTable; | 680 friend class BuiltinFunctionTable; |
| 678 friend class Isolate; | 681 friend class Isolate; |
| 679 | 682 |
| 680 DISALLOW_COPY_AND_ASSIGN(Builtins); | 683 DISALLOW_COPY_AND_ASSIGN(Builtins); |
| 681 }; | 684 }; |
| 682 | 685 |
| 683 } // namespace internal | 686 } // namespace internal |
| 684 } // namespace v8 | 687 } // namespace v8 |
| 685 | 688 |
| 686 #endif // V8_BUILTINS_H_ | 689 #endif // V8_BUILTINS_H_ |
| OLD | NEW |