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 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 F(AtomicsStore, 3, 1) \ | 59 F(AtomicsStore, 3, 1) \ |
60 F(AtomicsAdd, 3, 1) \ | 60 F(AtomicsAdd, 3, 1) \ |
61 F(AtomicsSub, 3, 1) \ | 61 F(AtomicsSub, 3, 1) \ |
62 F(AtomicsAnd, 3, 1) \ | 62 F(AtomicsAnd, 3, 1) \ |
63 F(AtomicsOr, 3, 1) \ | 63 F(AtomicsOr, 3, 1) \ |
64 F(AtomicsXor, 3, 1) \ | 64 F(AtomicsXor, 3, 1) \ |
65 F(AtomicsExchange, 3, 1) \ | 65 F(AtomicsExchange, 3, 1) \ |
66 F(AtomicsIsLockFree, 1, 1) | 66 F(AtomicsIsLockFree, 1, 1) |
67 | 67 |
68 | 68 |
| 69 #define FOR_EACH_INTRINSIC_FUTEX(F) \ |
| 70 F(AtomicsFutexWait, 4, 1) \ |
| 71 F(AtomicsFutexWake, 3, 1) \ |
| 72 F(AtomicsFutexWakeOrRequeue, 5, 1) \ |
| 73 F(AtomicsFutexNumWaitersForTesting, 2, 1) |
| 74 |
| 75 |
69 #define FOR_EACH_INTRINSIC_CLASSES(F) \ | 76 #define FOR_EACH_INTRINSIC_CLASSES(F) \ |
70 F(ThrowNonMethodError, 0, 1) \ | 77 F(ThrowNonMethodError, 0, 1) \ |
71 F(ThrowUnsupportedSuperError, 0, 1) \ | 78 F(ThrowUnsupportedSuperError, 0, 1) \ |
72 F(ThrowConstructorNonCallableError, 0, 1) \ | 79 F(ThrowConstructorNonCallableError, 0, 1) \ |
73 F(ThrowArrayNotSubclassableError, 0, 1) \ | 80 F(ThrowArrayNotSubclassableError, 0, 1) \ |
74 F(ThrowStaticPrototypeError, 0, 1) \ | 81 F(ThrowStaticPrototypeError, 0, 1) \ |
75 F(ThrowIfStaticPrototype, 1, 1) \ | 82 F(ThrowIfStaticPrototype, 1, 1) \ |
76 F(ToMethod, 2, 1) \ | 83 F(ToMethod, 2, 1) \ |
77 F(HomeObjectSymbol, 0, 1) \ | 84 F(HomeObjectSymbol, 0, 1) \ |
78 F(DefineClass, 6, 1) \ | 85 F(DefineClass, 6, 1) \ |
(...skipping 642 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
721 #define FOR_EACH_INTRINSIC_RETURN_OBJECT(F) \ | 728 #define FOR_EACH_INTRINSIC_RETURN_OBJECT(F) \ |
722 FOR_EACH_INTRINSIC_ARRAY(F) \ | 729 FOR_EACH_INTRINSIC_ARRAY(F) \ |
723 FOR_EACH_INTRINSIC_ATOMICS(F) \ | 730 FOR_EACH_INTRINSIC_ATOMICS(F) \ |
724 FOR_EACH_INTRINSIC_CLASSES(F) \ | 731 FOR_EACH_INTRINSIC_CLASSES(F) \ |
725 FOR_EACH_INTRINSIC_COLLECTIONS(F) \ | 732 FOR_EACH_INTRINSIC_COLLECTIONS(F) \ |
726 FOR_EACH_INTRINSIC_COMPILER(F) \ | 733 FOR_EACH_INTRINSIC_COMPILER(F) \ |
727 FOR_EACH_INTRINSIC_DATE(F) \ | 734 FOR_EACH_INTRINSIC_DATE(F) \ |
728 FOR_EACH_INTRINSIC_DEBUG(F) \ | 735 FOR_EACH_INTRINSIC_DEBUG(F) \ |
729 FOR_EACH_INTRINSIC_FORIN(F) \ | 736 FOR_EACH_INTRINSIC_FORIN(F) \ |
730 FOR_EACH_INTRINSIC_FUNCTION(F) \ | 737 FOR_EACH_INTRINSIC_FUNCTION(F) \ |
| 738 FOR_EACH_INTRINSIC_FUTEX(F) \ |
731 FOR_EACH_INTRINSIC_GENERATOR(F) \ | 739 FOR_EACH_INTRINSIC_GENERATOR(F) \ |
732 FOR_EACH_INTRINSIC_I18N(F) \ | 740 FOR_EACH_INTRINSIC_I18N(F) \ |
733 FOR_EACH_INTRINSIC_INTERNAL(F) \ | 741 FOR_EACH_INTRINSIC_INTERNAL(F) \ |
734 FOR_EACH_INTRINSIC_JSON(F) \ | 742 FOR_EACH_INTRINSIC_JSON(F) \ |
735 FOR_EACH_INTRINSIC_LITERALS(F) \ | 743 FOR_EACH_INTRINSIC_LITERALS(F) \ |
736 FOR_EACH_INTRINSIC_LIVEEDIT(F) \ | 744 FOR_EACH_INTRINSIC_LIVEEDIT(F) \ |
737 FOR_EACH_INTRINSIC_MATHS(F) \ | 745 FOR_EACH_INTRINSIC_MATHS(F) \ |
738 FOR_EACH_INTRINSIC_NUMBERS(F) \ | 746 FOR_EACH_INTRINSIC_NUMBERS(F) \ |
739 FOR_EACH_INTRINSIC_OBJECT(F) \ | 747 FOR_EACH_INTRINSIC_OBJECT(F) \ |
740 FOR_EACH_INTRINSIC_OBSERVE(F) \ | 748 FOR_EACH_INTRINSIC_OBSERVE(F) \ |
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
946 inline bool Runtime::AtomicIsLockFree(uint32_t size) { | 954 inline bool Runtime::AtomicIsLockFree(uint32_t size) { |
947 return size == 1 || size == 2 || size == 4; | 955 return size == 1 || size == 2 || size == 4; |
948 } | 956 } |
949 | 957 |
950 #endif | 958 #endif |
951 | 959 |
952 } // namespace internal | 960 } // namespace internal |
953 } // namespace v8 | 961 } // namespace v8 |
954 | 962 |
955 #endif // V8_RUNTIME_RUNTIME_H_ | 963 #endif // V8_RUNTIME_RUNTIME_H_ |
OLD | NEW |