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 861 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
872 | 872 |
873 static void ArrayIdToTypeAndSize(int array_id, ExternalArrayType* type, | 873 static void ArrayIdToTypeAndSize(int array_id, ExternalArrayType* type, |
874 ElementsKind* external_elements_kind, | 874 ElementsKind* external_elements_kind, |
875 ElementsKind* fixed_elements_kind, | 875 ElementsKind* fixed_elements_kind, |
876 size_t* element_size); | 876 size_t* element_size); |
877 | 877 |
878 // Used in runtime.cc and hydrogen's VisitArrayLiteral. | 878 // Used in runtime.cc and hydrogen's VisitArrayLiteral. |
879 MUST_USE_RESULT static MaybeHandle<Object> CreateArrayLiteralBoilerplate( | 879 MUST_USE_RESULT static MaybeHandle<Object> CreateArrayLiteralBoilerplate( |
880 Isolate* isolate, Handle<FixedArray> literals, | 880 Isolate* isolate, Handle<FixedArray> literals, |
881 Handle<FixedArray> elements); | 881 Handle<FixedArray> elements); |
| 882 |
| 883 static void WeakCollectionInitialize( |
| 884 Isolate* isolate, Handle<JSWeakCollection> weak_collection); |
| 885 static void WeakCollectionSet(Handle<JSWeakCollection> weak_collection, |
| 886 Handle<Object> key, Handle<Object> value); |
| 887 static bool WeakCollectionDelete(Handle<JSWeakCollection> weak_collection, |
| 888 Handle<Object> key); |
882 }; | 889 }; |
883 | 890 |
884 | 891 |
885 std::ostream& operator<<(std::ostream&, Runtime::FunctionId); | 892 std::ostream& operator<<(std::ostream&, Runtime::FunctionId); |
886 | 893 |
887 //--------------------------------------------------------------------------- | 894 //--------------------------------------------------------------------------- |
888 // Constants used by interface to runtime functions. | 895 // Constants used by interface to runtime functions. |
889 | 896 |
890 class AllocateDoubleAlignFlag : public BitField<bool, 0, 1> {}; | 897 class AllocateDoubleAlignFlag : public BitField<bool, 0, 1> {}; |
891 class AllocateTargetSpace : public BitField<AllocationSpace, 1, 3> {}; | 898 class AllocateTargetSpace : public BitField<AllocationSpace, 1, 3> {}; |
892 | 899 |
893 class DeclareGlobalsEvalFlag : public BitField<bool, 0, 1> {}; | 900 class DeclareGlobalsEvalFlag : public BitField<bool, 0, 1> {}; |
894 class DeclareGlobalsNativeFlag : public BitField<bool, 1, 1> {}; | 901 class DeclareGlobalsNativeFlag : public BitField<bool, 1, 1> {}; |
895 class DeclareGlobalsStrictMode : public BitField<StrictMode, 2, 1> {}; | 902 class DeclareGlobalsStrictMode : public BitField<StrictMode, 2, 1> {}; |
896 | 903 |
897 } // namespace internal | 904 } // namespace internal |
898 } // namespace v8 | 905 } // namespace v8 |
899 | 906 |
900 #endif // V8_RUNTIME_RUNTIME_H_ | 907 #endif // V8_RUNTIME_RUNTIME_H_ |
OLD | NEW |