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 629 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
708 #define FOR_EACH_INTRINSIC_RETURN_OBJECT(F) \ | 715 #define FOR_EACH_INTRINSIC_RETURN_OBJECT(F) \ |
709 FOR_EACH_INTRINSIC_ARRAY(F) \ | 716 FOR_EACH_INTRINSIC_ARRAY(F) \ |
710 FOR_EACH_INTRINSIC_ATOMICS(F) \ | 717 FOR_EACH_INTRINSIC_ATOMICS(F) \ |
711 FOR_EACH_INTRINSIC_CLASSES(F) \ | 718 FOR_EACH_INTRINSIC_CLASSES(F) \ |
712 FOR_EACH_INTRINSIC_COLLECTIONS(F) \ | 719 FOR_EACH_INTRINSIC_COLLECTIONS(F) \ |
713 FOR_EACH_INTRINSIC_COMPILER(F) \ | 720 FOR_EACH_INTRINSIC_COMPILER(F) \ |
714 FOR_EACH_INTRINSIC_DATE(F) \ | 721 FOR_EACH_INTRINSIC_DATE(F) \ |
715 FOR_EACH_INTRINSIC_DEBUG(F) \ | 722 FOR_EACH_INTRINSIC_DEBUG(F) \ |
716 FOR_EACH_INTRINSIC_FORIN(F) \ | 723 FOR_EACH_INTRINSIC_FORIN(F) \ |
717 FOR_EACH_INTRINSIC_FUNCTION(F) \ | 724 FOR_EACH_INTRINSIC_FUNCTION(F) \ |
| 725 FOR_EACH_INTRINSIC_FUTEX(F) \ |
718 FOR_EACH_INTRINSIC_GENERATOR(F) \ | 726 FOR_EACH_INTRINSIC_GENERATOR(F) \ |
719 FOR_EACH_INTRINSIC_I18N(F) \ | 727 FOR_EACH_INTRINSIC_I18N(F) \ |
720 FOR_EACH_INTRINSIC_INTERNAL(F) \ | 728 FOR_EACH_INTRINSIC_INTERNAL(F) \ |
721 FOR_EACH_INTRINSIC_JSON(F) \ | 729 FOR_EACH_INTRINSIC_JSON(F) \ |
722 FOR_EACH_INTRINSIC_LITERALS(F) \ | 730 FOR_EACH_INTRINSIC_LITERALS(F) \ |
723 FOR_EACH_INTRINSIC_LIVEEDIT(F) \ | 731 FOR_EACH_INTRINSIC_LIVEEDIT(F) \ |
724 FOR_EACH_INTRINSIC_MATHS(F) \ | 732 FOR_EACH_INTRINSIC_MATHS(F) \ |
725 FOR_EACH_INTRINSIC_NUMBERS(F) \ | 733 FOR_EACH_INTRINSIC_NUMBERS(F) \ |
726 FOR_EACH_INTRINSIC_OBJECT(F) \ | 734 FOR_EACH_INTRINSIC_OBJECT(F) \ |
727 FOR_EACH_INTRINSIC_OBSERVE(F) \ | 735 FOR_EACH_INTRINSIC_OBSERVE(F) \ |
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
941 inline bool Runtime::AtomicIsLockFree(uint32_t size) { | 949 inline bool Runtime::AtomicIsLockFree(uint32_t size) { |
942 return size == 1 || size == 2 || size == 4; | 950 return size == 1 || size == 2 || size == 4; |
943 } | 951 } |
944 | 952 |
945 #endif | 953 #endif |
946 | 954 |
947 } // namespace internal | 955 } // namespace internal |
948 } // namespace v8 | 956 } // namespace v8 |
949 | 957 |
950 #endif // V8_RUNTIME_RUNTIME_H_ | 958 #endif // V8_RUNTIME_RUNTIME_H_ |
OLD | NEW |