OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_RUNTIME_RUNTIME_H_ | 5 #ifndef V8_RUNTIME_RUNTIME_H_ |
6 #define V8_RUNTIME_RUNTIME_H_ | 6 #define V8_RUNTIME_RUNTIME_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/objects.h" | 9 #include "src/objects.h" |
10 #include "src/zone.h" | 10 #include "src/zone.h" |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 F(HasComplexElements, 1, 1) \ | 47 F(HasComplexElements, 1, 1) \ |
48 F(ForInCacheArrayLength, 2, 1) /* TODO(turbofan): Only temporary */ \ | 48 F(ForInCacheArrayLength, 2, 1) /* TODO(turbofan): Only temporary */ \ |
49 F(IsArray, 1, 1) \ | 49 F(IsArray, 1, 1) \ |
50 F(HasCachedArrayIndex, 1, 1) \ | 50 F(HasCachedArrayIndex, 1, 1) \ |
51 F(GetCachedArrayIndex, 1, 1) \ | 51 F(GetCachedArrayIndex, 1, 1) \ |
52 F(FixedArrayGet, 2, 1) \ | 52 F(FixedArrayGet, 2, 1) \ |
53 F(FixedArraySet, 3, 1) \ | 53 F(FixedArraySet, 3, 1) \ |
54 F(FastOneByteArrayJoin, 2, 1) | 54 F(FastOneByteArrayJoin, 2, 1) |
55 | 55 |
56 | 56 |
| 57 #define FOR_EACH_INTRINSIC_ATOMICS(F) \ |
| 58 F(AtomicsCompareExchange, 4, 1) \ |
| 59 F(AtomicsLoad, 2, 1) \ |
| 60 F(AtomicsStore, 3, 1) \ |
| 61 F(AtomicsAdd, 3, 1) \ |
| 62 F(AtomicsSub, 3, 1) \ |
| 63 F(AtomicsAnd, 3, 1) \ |
| 64 F(AtomicsOr, 3, 1) \ |
| 65 F(AtomicsXor, 3, 1) \ |
| 66 F(AtomicsExchange, 3, 1) \ |
| 67 F(AtomicsIsLockFree, 1, 1) |
| 68 |
| 69 |
57 #define FOR_EACH_INTRINSIC_CLASSES(F) \ | 70 #define FOR_EACH_INTRINSIC_CLASSES(F) \ |
58 F(ThrowNonMethodError, 0, 1) \ | 71 F(ThrowNonMethodError, 0, 1) \ |
59 F(ThrowUnsupportedSuperError, 0, 1) \ | 72 F(ThrowUnsupportedSuperError, 0, 1) \ |
60 F(ThrowConstructorNonCallableError, 0, 1) \ | 73 F(ThrowConstructorNonCallableError, 0, 1) \ |
61 F(ThrowArrayNotSubclassableError, 0, 1) \ | 74 F(ThrowArrayNotSubclassableError, 0, 1) \ |
62 F(ThrowStaticPrototypeError, 0, 1) \ | 75 F(ThrowStaticPrototypeError, 0, 1) \ |
63 F(ThrowIfStaticPrototype, 1, 1) \ | 76 F(ThrowIfStaticPrototype, 1, 1) \ |
64 F(ToMethod, 2, 1) \ | 77 F(ToMethod, 2, 1) \ |
65 F(HomeObjectSymbol, 0, 1) \ | 78 F(HomeObjectSymbol, 0, 1) \ |
66 F(DefineClass, 6, 1) \ | 79 F(DefineClass, 6, 1) \ |
(...skipping 574 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
641 F(TypedArrayInitialize, 5, 1) \ | 654 F(TypedArrayInitialize, 5, 1) \ |
642 F(TypedArrayInitializeFromArrayLike, 4, 1) \ | 655 F(TypedArrayInitializeFromArrayLike, 4, 1) \ |
643 F(ArrayBufferViewGetByteLength, 1, 1) \ | 656 F(ArrayBufferViewGetByteLength, 1, 1) \ |
644 F(ArrayBufferViewGetByteOffset, 1, 1) \ | 657 F(ArrayBufferViewGetByteOffset, 1, 1) \ |
645 F(TypedArrayGetLength, 1, 1) \ | 658 F(TypedArrayGetLength, 1, 1) \ |
646 F(DataViewGetBuffer, 1, 1) \ | 659 F(DataViewGetBuffer, 1, 1) \ |
647 F(TypedArrayGetBuffer, 1, 1) \ | 660 F(TypedArrayGetBuffer, 1, 1) \ |
648 F(TypedArraySetFastCases, 3, 1) \ | 661 F(TypedArraySetFastCases, 3, 1) \ |
649 F(TypedArrayMaxSizeInHeap, 0, 1) \ | 662 F(TypedArrayMaxSizeInHeap, 0, 1) \ |
650 F(IsTypedArray, 1, 1) \ | 663 F(IsTypedArray, 1, 1) \ |
| 664 F(IsSharedTypedArray, 1, 1) \ |
| 665 F(IsSharedIntegerTypedArray, 1, 1) \ |
651 F(DataViewInitialize, 4, 1) \ | 666 F(DataViewInitialize, 4, 1) \ |
652 F(DataViewGetUint8, 3, 1) \ | 667 F(DataViewGetUint8, 3, 1) \ |
653 F(DataViewGetInt8, 3, 1) \ | 668 F(DataViewGetInt8, 3, 1) \ |
654 F(DataViewGetUint16, 3, 1) \ | 669 F(DataViewGetUint16, 3, 1) \ |
655 F(DataViewGetInt16, 3, 1) \ | 670 F(DataViewGetInt16, 3, 1) \ |
656 F(DataViewGetUint32, 3, 1) \ | 671 F(DataViewGetUint32, 3, 1) \ |
657 F(DataViewGetInt32, 3, 1) \ | 672 F(DataViewGetInt32, 3, 1) \ |
658 F(DataViewGetFloat32, 3, 1) \ | 673 F(DataViewGetFloat32, 3, 1) \ |
659 F(DataViewGetFloat64, 3, 1) \ | 674 F(DataViewGetFloat64, 3, 1) \ |
660 F(DataViewSetUint8, 4, 1) \ | 675 F(DataViewSetUint8, 4, 1) \ |
(...skipping 14 matching lines...) Expand all Loading... |
675 #define FOR_EACH_INTRINSIC_RETURN_PAIR(F) \ | 690 #define FOR_EACH_INTRINSIC_RETURN_PAIR(F) \ |
676 F(LoadLookupSlot, 2, 2) \ | 691 F(LoadLookupSlot, 2, 2) \ |
677 F(LoadLookupSlotNoReferenceError, 2, 2) \ | 692 F(LoadLookupSlotNoReferenceError, 2, 2) \ |
678 F(ResolvePossiblyDirectEval, 6, 2) \ | 693 F(ResolvePossiblyDirectEval, 6, 2) \ |
679 F(ForInInit, 2, 2) /* TODO(turbofan): Only temporary */ \ | 694 F(ForInInit, 2, 2) /* TODO(turbofan): Only temporary */ \ |
680 F(ForInNext, 4, 2) /* TODO(turbofan): Only temporary */ | 695 F(ForInNext, 4, 2) /* TODO(turbofan): Only temporary */ |
681 | 696 |
682 | 697 |
683 #define FOR_EACH_INTRINSIC_RETURN_OBJECT(F) \ | 698 #define FOR_EACH_INTRINSIC_RETURN_OBJECT(F) \ |
684 FOR_EACH_INTRINSIC_ARRAY(F) \ | 699 FOR_EACH_INTRINSIC_ARRAY(F) \ |
| 700 FOR_EACH_INTRINSIC_ATOMICS(F) \ |
685 FOR_EACH_INTRINSIC_CLASSES(F) \ | 701 FOR_EACH_INTRINSIC_CLASSES(F) \ |
686 FOR_EACH_INTRINSIC_COLLECTIONS(F) \ | 702 FOR_EACH_INTRINSIC_COLLECTIONS(F) \ |
687 FOR_EACH_INTRINSIC_COMPILER(F) \ | 703 FOR_EACH_INTRINSIC_COMPILER(F) \ |
688 FOR_EACH_INTRINSIC_DATE(F) \ | 704 FOR_EACH_INTRINSIC_DATE(F) \ |
689 FOR_EACH_INTRINSIC_DEBUG(F) \ | 705 FOR_EACH_INTRINSIC_DEBUG(F) \ |
690 FOR_EACH_INTRINSIC_FUNCTION(F) \ | 706 FOR_EACH_INTRINSIC_FUNCTION(F) \ |
691 FOR_EACH_INTRINSIC_GENERATOR(F) \ | 707 FOR_EACH_INTRINSIC_GENERATOR(F) \ |
692 FOR_EACH_INTRINSIC_I18N(F) \ | 708 FOR_EACH_INTRINSIC_I18N(F) \ |
693 FOR_EACH_INTRINSIC_INTERNAL(F) \ | 709 FOR_EACH_INTRINSIC_INTERNAL(F) \ |
694 FOR_EACH_INTRINSIC_JSON(F) \ | 710 FOR_EACH_INTRINSIC_JSON(F) \ |
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
881 | 897 |
882 class DeclareGlobalsEvalFlag : public BitField<bool, 0, 1> {}; | 898 class DeclareGlobalsEvalFlag : public BitField<bool, 0, 1> {}; |
883 class DeclareGlobalsNativeFlag : public BitField<bool, 1, 1> {}; | 899 class DeclareGlobalsNativeFlag : public BitField<bool, 1, 1> {}; |
884 STATIC_ASSERT(LANGUAGE_END == 3); | 900 STATIC_ASSERT(LANGUAGE_END == 3); |
885 class DeclareGlobalsLanguageMode : public BitField<LanguageMode, 2, 2> {}; | 901 class DeclareGlobalsLanguageMode : public BitField<LanguageMode, 2, 2> {}; |
886 | 902 |
887 } // namespace internal | 903 } // namespace internal |
888 } // namespace v8 | 904 } // namespace v8 |
889 | 905 |
890 #endif // V8_RUNTIME_RUNTIME_H_ | 906 #endif // V8_RUNTIME_RUNTIME_H_ |
OLD | NEW |