| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -38,7 +38,7 @@ | |||
| 38 | 38 | ||
| 39 | 39 | # Reset this number to 0 on major V8 upgrades. | |
| 40 | 40 | # Increment by one for each non-official patch applied to deps/v8. | |
| 41 | - 'v8_embedder_string': '-node.19', | ||
| 41 | + 'v8_embedder_string': '-node.20', | ||
| 42 | 42 | ||
| 43 | 43 | ##### V8 defaults for Node.js ##### | |
| 44 | 44 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1819,8 +1819,14 @@ class V8_EXPORT ScriptCompiler { | |||
| 1819 | 1819 | Local<String> arguments[], size_t context_extension_count, | |
| 1820 | 1820 | Local<Object> context_extensions[], | |
| 1821 | 1821 | CompileOptions options = kNoCompileOptions, | |
| 1822 | - NoCacheReason no_cache_reason = kNoCacheNoReason, | ||
| 1823 | - Local<ScriptOrModule>* script_or_module_out = nullptr); | ||
| 1822 | + NoCacheReason no_cache_reason = kNoCacheNoReason); | ||
| 1823 | + | ||
| 1824 | + static V8_WARN_UNUSED_RESULT MaybeLocal<Function> CompileFunctionInContext( | ||
| 1825 | + Local<Context> context, Source* source, size_t arguments_count, | ||
| 1826 | + Local<String> arguments[], size_t context_extension_count, | ||
| 1827 | + Local<Object> context_extensions[], CompileOptions options, | ||
| 1828 | + NoCacheReason no_cache_reason, | ||
| 1829 | + Local<ScriptOrModule>* script_or_module_out); | ||
| 1824 | 1830 | ||
| 1825 | 1831 | /** | |
| 1826 | 1832 | * Creates and returns code cache for the specified unbound_script. | |
@@ -3481,13 +3487,17 @@ enum class IntegrityLevel { kFrozen, kSealed }; | |||
| 3481 | 3487 | */ | |
| 3482 | 3488 | class V8_EXPORT Object : public Value { | |
| 3483 | 3489 | public: | |
| 3490 | + V8_DEPRECATED("Use maybe version", | ||
| 3491 | + bool Set(Local<Value> key, Local<Value> value)); | ||
| 3484 | 3492 | /** | |
| 3485 | 3493 | * Set only return Just(true) or Empty(), so if it should never fail, use | |
| 3486 | 3494 | * result.Check(). | |
| 3487 | 3495 | */ | |
| 3488 | 3496 | V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, | |
| 3489 | 3497 | Local<Value> key, Local<Value> value); | |
| 3490 | 3498 | ||
| 3499 | + V8_DEPRECATED("Use maybe version", | ||
| 3500 | + bool Set(uint32_t index, Local<Value> value)); | ||
| 3491 | 3501 | V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index, | |
| 3492 | 3502 | Local<Value> value); | |
| 3493 | 3503 | ||
@@ -3532,9 +3542,11 @@ class V8_EXPORT Object : public Value { | |||
| 3532 | 3542 | Local<Context> context, Local<Name> key, | |
| 3533 | 3543 | PropertyDescriptor& descriptor); // NOLINT(runtime/references) | |
| 3534 | 3544 | ||
| 3545 | + V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key)); | ||
| 3535 | 3546 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context, | |
| 3536 | 3547 | Local<Value> key); | |
| 3537 | 3548 | ||
| 3549 | + V8_DEPRECATED("Use maybe version", Local<Value> Get(uint32_t index)); | ||
| 3538 | 3550 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context, | |
| 3539 | 3551 | uint32_t index); | |
| 3540 | 3552 | ||
@@ -6683,26 +6695,7 @@ V8_INLINE Local<Boolean> False(Isolate* isolate); | |||
| 6683 | 6695 | */ | |
| 6684 | 6696 | class V8_EXPORT ResourceConstraints { | |
| 6685 | 6697 | public: | |
| 6686 | - /** | ||
| 6687 | - * Configures the constraints with reasonable default values based on the | ||
| 6688 | - * provided heap size limit. The heap size includes both the young and | ||
| 6689 | - * the old generation. | ||
| 6690 | - * | ||
| 6691 | - * \param initial_heap_size_in_bytes The initial heap size or zero. | ||
| 6692 | - * By default V8 starts with a small heap and dynamically grows it to | ||
| 6693 | - * match the set of live objects. This may lead to ineffective | ||
| 6694 | - * garbage collections at startup if the live set is large. | ||
| 6695 | - * Setting the initial heap size avoids such garbage collections. | ||
| 6696 | - * Note that this does not affect young generation garbage collections. | ||
| 6697 | - * | ||
| 6698 | - * \param maximum_heap_size_in_bytes The hard limit for the heap size. | ||
| 6699 | - * When the heap size approaches this limit, V8 will perform series of | ||
| 6700 | - * garbage collections and invoke the NearHeapLimitCallback. If the garbage | ||
| 6701 | - * collections do not help and the callback does not increase the limit, | ||
| 6702 | - * then V8 will crash with V8::FatalProcessOutOfMemory. | ||
| 6703 | - */ | ||
| 6704 | - void ConfigureDefaultsFromHeapSize(size_t initial_heap_size_in_bytes, | ||
| 6705 | - size_t maximum_heap_size_in_bytes); | ||
| 6698 | + ResourceConstraints(); | ||
| 6706 | 6699 | ||
| 6707 | 6700 | /** | |
| 6708 | 6701 | * Configures the constraints with reasonable default values based on the | |
@@ -6726,8 +6719,12 @@ class V8_EXPORT ResourceConstraints { | |||
| 6726 | 6719 | * The amount of virtual memory reserved for generated code. This is relevant | |
| 6727 | 6720 | * for 64-bit architectures that rely on code range for calls in code. | |
| 6728 | 6721 | */ | |
| 6729 | - size_t code_range_size_in_bytes() const { return code_range_size_; } | ||
| 6730 | - void set_code_range_size_in_bytes(size_t limit) { code_range_size_ = limit; } | ||
| 6722 | + size_t code_range_size_in_bytes() const { | ||
| 6723 | + return code_range_size_ * kMB; | ||
| 6724 | + } | ||
| 6725 | + void set_code_range_size_in_bytes(size_t limit) { | ||
| 6726 | + code_range_size_ = limit / kMB; | ||
| 6727 | + } | ||
| 6731 | 6728 | ||
| 6732 | 6729 | /** | |
| 6733 | 6730 | * The maximum size of the old generation. | |
@@ -6737,60 +6734,60 @@ class V8_EXPORT ResourceConstraints { | |||
| 6737 | 6734 | * increase the limit, then V8 will crash with V8::FatalProcessOutOfMemory. | |
| 6738 | 6735 | */ | |
| 6739 | 6736 | size_t max_old_generation_size_in_bytes() const { | |
| 6740 | - return max_old_generation_size_; | ||
| 6737 | + return max_old_space_size_ * kMB; | ||
| 6741 | 6738 | } | |
| 6742 | 6739 | void set_max_old_generation_size_in_bytes(size_t limit) { | |
| 6743 | - max_old_generation_size_ = limit; | ||
| 6740 | + max_old_space_size_ = limit / kMB; | ||
| 6744 | 6741 | } | |
| 6745 | 6742 | ||
| 6746 | 6743 | /** | |
| 6747 | 6744 | * The maximum size of the young generation, which consists of two semi-spaces | |
| 6748 | 6745 | * and a large object space. This affects frequency of Scavenge garbage | |
| 6749 | 6746 | * collections and should be typically much smaller that the old generation. | |
| 6750 | 6747 | */ | |
| 6751 | - size_t max_young_generation_size_in_bytes() const { | ||
| 6752 | - return max_young_generation_size_; | ||
| 6753 | - } | ||
| 6754 | - void set_max_young_generation_size_in_bytes(size_t limit) { | ||
| 6755 | - max_young_generation_size_ = limit; | ||
| 6756 | - } | ||
| 6748 | + size_t max_young_generation_size_in_bytes() const; | ||
| 6749 | + void set_max_young_generation_size_in_bytes(size_t limit); | ||
| 6757 | 6750 | ||
| 6758 | 6751 | size_t initial_old_generation_size_in_bytes() const { | |
| 6759 | - return initial_old_generation_size_; | ||
| 6752 | + return 0; | ||
| 6760 | 6753 | } | |
| 6761 | 6754 | void set_initial_old_generation_size_in_bytes(size_t initial_size) { | |
| 6762 | - initial_old_generation_size_ = initial_size; | ||
| 6755 | + // Not available on Node 12. | ||
| 6763 | 6756 | } | |
| 6764 | 6757 | ||
| 6765 | 6758 | size_t initial_young_generation_size_in_bytes() const { | |
| 6766 | - return initial_young_generation_size_; | ||
| 6759 | + return 0; | ||
| 6767 | 6760 | } | |
| 6768 | 6761 | void set_initial_young_generation_size_in_bytes(size_t initial_size) { | |
| 6769 | - initial_young_generation_size_ = initial_size; | ||
| 6762 | + // Not available on Node 12. | ||
| 6770 | 6763 | } | |
| 6771 | 6764 | ||
| 6772 | 6765 | /** | |
| 6773 | 6766 | * Deprecated functions. Do not use in new code. | |
| 6774 | 6767 | */ | |
| 6775 | 6768 | V8_DEPRECATE_SOON("Use code_range_size_in_bytes.", | |
| 6776 | 6769 | size_t code_range_size() const) { | |
| 6777 | - return code_range_size_ / kMB; | ||
| 6770 | + return code_range_size_; | ||
| 6778 | 6771 | } | |
| 6779 | 6772 | V8_DEPRECATE_SOON("Use set_code_range_size_in_bytes.", | |
| 6780 | 6773 | void set_code_range_size(size_t limit_in_mb)) { | |
| 6781 | - code_range_size_ = limit_in_mb * kMB; | ||
| 6774 | + code_range_size_ = limit_in_mb; | ||
| 6782 | 6775 | } | |
| 6783 | 6776 | V8_DEPRECATE_SOON("Use max_young_generation_size_in_bytes.", | |
| 6784 | - size_t max_semi_space_size_in_kb() const); | ||
| 6777 | + size_t max_semi_space_size_in_kb() const) { | ||
| 6778 | + return max_semi_space_size_in_kb_; | ||
| 6779 | + } | ||
| 6785 | 6780 | V8_DEPRECATE_SOON("Use set_max_young_generation_size_in_bytes.", | |
| 6786 | - void set_max_semi_space_size_in_kb(size_t limit_in_kb)); | ||
| 6781 | + void set_max_semi_space_size_in_kb(size_t limit_in_kb)) { | ||
| 6782 | + max_semi_space_size_in_kb_ = limit_in_kb; | ||
| 6783 | + } | ||
| 6787 | 6784 | V8_DEPRECATE_SOON("Use max_old_generation_size_in_bytes.", | |
| 6788 | 6785 | size_t max_old_space_size() const) { | |
| 6789 | - return max_old_generation_size_ / kMB; | ||
| 6786 | + return max_old_space_size_; | ||
| 6790 | 6787 | } | |
| 6791 | 6788 | V8_DEPRECATE_SOON("Use set_max_old_generation_size_in_bytes.", | |
| 6792 | 6789 | void set_max_old_space_size(size_t limit_in_mb)) { | |
| 6793 | - max_old_generation_size_ = limit_in_mb * kMB; | ||
| 6790 | + max_old_space_size_ = limit_in_mb; | ||
| 6794 | 6791 | } | |
| 6795 | 6792 | V8_DEPRECATE_SOON("Zone does not pool memory any more.", | |
| 6796 | 6793 | size_t max_zone_pool_size() const) { | |
@@ -6803,13 +6800,15 @@ class V8_EXPORT ResourceConstraints { | |||
| 6803 | 6800 | ||
| 6804 | 6801 | private: | |
| 6805 | 6802 | static constexpr size_t kMB = 1048576u; | |
| 6803 | + | ||
| 6804 | + // max_semi_space_size_ is in KB | ||
| 6805 | + size_t max_semi_space_size_in_kb_ = 0; | ||
| 6806 | + | ||
| 6807 | + // The remaining limits are in MB | ||
| 6808 | + size_t max_old_space_size_ = 0; | ||
| 6809 | + uint32_t* stack_limit_ = nullptr; | ||
| 6806 | 6810 | size_t code_range_size_ = 0; | |
| 6807 | - size_t max_old_generation_size_ = 0; | ||
| 6808 | - size_t max_young_generation_size_ = 0; | ||
| 6809 | 6811 | size_t max_zone_pool_size_ = 0; | |
| 6810 | - size_t initial_old_generation_size_ = 0; | ||
| 6811 | - size_t initial_young_generation_size_ = 0; | ||
| 6812 | - uint32_t* stack_limit_ = nullptr; | ||
| 6813 | 6812 | }; | |
| 6814 | 6813 | ||
| 6815 | 6814 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -238,10 +238,18 @@ namespace v8 { | |||
| 238 | 238 | #define RETURN_ON_FAILED_EXECUTION_PRIMITIVE(T) \ | |
| 239 | 239 | EXCEPTION_BAILOUT_CHECK_SCOPED_DO_NOT_USE(isolate, Nothing<T>()) | |
| 240 | 240 | ||
| 241 | + #define RETURN_TO_LOCAL_UNCHECKED(maybe_local, T) \ | ||
| 242 | + return maybe_local.FromMaybe(Local<T>()); | ||
| 243 | + | ||
| 241 | 244 | #define RETURN_ESCAPED(value) return handle_scope.Escape(value); | |
| 242 | 245 | ||
| 243 | 246 | namespace { | |
| 244 | 247 | ||
| 248 | + Local<Context> ContextFromNeverReadOnlySpaceObject( | ||
| 249 | + i::Handle<i::JSReceiver> obj) { | ||
| 250 | + return reinterpret_cast<v8::Isolate*>(obj->GetIsolate())->GetCurrentContext(); | ||
| 251 | + } | ||
| 252 | + | ||
| 245 | 253 | class InternalEscapableScope : public v8::EscapableHandleScope { | |
| 246 | 254 | public: | |
| 247 | 255 | explicit inline InternalEscapableScope(i::Isolate* isolate) | |
@@ -964,31 +972,7 @@ Extension::Extension(const char* name, const char* source, int dep_count, | |||
| 964 | 972 | CHECK(source != nullptr || source_length_ == 0); | |
| 965 | 973 | } | |
| 966 | 974 | ||
| 967 | - void ResourceConstraints::ConfigureDefaultsFromHeapSize( | ||
| 968 | - size_t initial_heap_size_in_bytes, size_t maximum_heap_size_in_bytes) { | ||
| 969 | - CHECK_LE(initial_heap_size_in_bytes, maximum_heap_size_in_bytes); | ||
| 970 | - if (maximum_heap_size_in_bytes == 0) { | ||
| 971 | - return; | ||
| 972 | - } | ||
| 973 | - size_t young_generation, old_generation; | ||
| 974 | - i::Heap::GenerationSizesFromHeapSize(maximum_heap_size_in_bytes, | ||
| 975 | - &young_generation, &old_generation); | ||
| 976 | - set_max_young_generation_size_in_bytes( | ||
| 977 | - i::Max(young_generation, i::Heap::MinYoungGenerationSize())); | ||
| 978 | - set_max_old_generation_size_in_bytes( | ||
| 979 | - i::Max(old_generation, i::Heap::MinOldGenerationSize())); | ||
| 980 | - if (initial_heap_size_in_bytes > 0) { | ||
| 981 | - i::Heap::GenerationSizesFromHeapSize(initial_heap_size_in_bytes, | ||
| 982 | - &young_generation, &old_generation); | ||
| 983 | - // We do not set lower bounds for the initial sizes. | ||
| 984 | - set_initial_young_generation_size_in_bytes(young_generation); | ||
| 985 | - set_initial_old_generation_size_in_bytes(old_generation); | ||
| 986 | - } | ||
| 987 | - if (i::kRequiresCodeRange) { | ||
| 988 | - set_code_range_size_in_bytes( | ||
| 989 | - i::Min(i::kMaximalCodeRangeSize, maximum_heap_size_in_bytes)); | ||
| 990 | - } | ||
| 991 | - } | ||
| 975 | + ResourceConstraints::ResourceConstraints() {} | ||
| 992 | 976 | ||
| 993 | 977 | void ResourceConstraints::ConfigureDefaults(uint64_t physical_memory, | |
| 994 | 978 | uint64_t virtual_memory_limit) { | |
@@ -1006,15 +990,14 @@ void ResourceConstraints::ConfigureDefaults(uint64_t physical_memory, | |||
| 1006 | 990 | } | |
| 1007 | 991 | } | |
| 1008 | 992 | ||
| 1009 | - size_t ResourceConstraints::max_semi_space_size_in_kb() const { | ||
| 1010 | - return i::Heap::SemiSpaceSizeFromYoungGenerationSize( | ||
| 1011 | - max_young_generation_size_) / | ||
| 1012 | - i::KB; | ||
| 993 | + size_t ResourceConstraints::max_young_generation_size_in_bytes() const { | ||
| 994 | + return i::Heap::YoungGenerationSizeFromSemiSpaceSize( | ||
| 995 | + max_semi_space_size_in_kb_ * i::KB); | ||
| 1013 | 996 | } | |
| 1014 | 997 | ||
| 1015 | - void ResourceConstraints::set_max_semi_space_size_in_kb(size_t limit_in_kb) { | ||
| 1016 | - set_max_young_generation_size_in_bytes( | ||
| 1017 | - i::Heap::YoungGenerationSizeFromSemiSpaceSize(limit_in_kb * i::KB)); | ||
| 998 | + void ResourceConstraints::set_max_young_generation_size_in_bytes(size_t limit) { | ||
| 999 | + max_semi_space_size_in_kb_ = | ||
| 1000 | + i::Heap::SemiSpaceSizeFromYoungGenerationSize(limit) / i::KB; | ||
| 1018 | 1001 | } | |
| 1019 | 1002 | ||
| 1020 | 1003 | i::Address* V8::GlobalizeReference(i::Isolate* isolate, i::Address* obj) { | |
@@ -2518,6 +2501,16 @@ bool IsIdentifier(i::Isolate* isolate, i::Handle<i::String> string) { | |||
| 2518 | 2501 | } | |
| 2519 | 2502 | } // anonymous namespace | |
| 2520 | 2503 | ||
| 2504 | + MaybeLocal<Function> ScriptCompiler::CompileFunctionInContext( | ||
| 2505 | + Local<Context> v8_context, Source* source, size_t arguments_count, | ||
| 2506 | + Local<String> arguments[], size_t context_extension_count, | ||
| 2507 | + Local<Object> context_extensions[], CompileOptions options, | ||
| 2508 | + NoCacheReason no_cache_reason) { | ||
| 2509 | + return ScriptCompiler::CompileFunctionInContext( | ||
| 2510 | + v8_context, source, arguments_count, arguments, context_extension_count, | ||
| 2511 | + context_extensions, options, no_cache_reason, nullptr); | ||
| 2512 | + } | ||
| 2513 | + | ||
| 2521 | 2514 | MaybeLocal<Function> ScriptCompiler::CompileFunctionInContext( | |
| 2522 | 2515 | Local<Context> v8_context, Source* source, size_t arguments_count, | |
| 2523 | 2516 | Local<String> arguments[], size_t context_extension_count, | |
@@ -3988,6 +3981,11 @@ Maybe<bool> v8::Object::Set(v8::Local<v8::Context> context, | |||
| 3988 | 3981 | return Just(true); | |
| 3989 | 3982 | } | |
| 3990 | 3983 | ||
| 3984 | + bool v8::Object::Set(v8::Local<Value> key, v8::Local<Value> value) { | ||
| 3985 | + auto context = ContextFromNeverReadOnlySpaceObject(Utils::OpenHandle(this)); | ||
| 3986 | + return Set(context, key, value).FromMaybe(false); | ||
| 3987 | + } | ||
| 3988 | + | ||
| 3991 | 3989 | Maybe<bool> v8::Object::Set(v8::Local<v8::Context> context, uint32_t index, | |
| 3992 | 3990 | v8::Local<Value> value) { | |
| 3993 | 3991 | auto isolate = reinterpret_cast<i::Isolate*>(context->GetIsolate()); | |
@@ -4001,6 +3999,11 @@ Maybe<bool> v8::Object::Set(v8::Local<v8::Context> context, uint32_t index, | |||
| 4001 | 3999 | return Just(true); | |
| 4002 | 4000 | } | |
| 4003 | 4001 | ||
| 4002 | + bool v8::Object::Set(uint32_t index, v8::Local<Value> value) { | ||
| 4003 | + auto context = ContextFromNeverReadOnlySpaceObject(Utils::OpenHandle(this)); | ||
| 4004 | + return Set(context, index, value).FromMaybe(false); | ||
| 4005 | + } | ||
| 4006 | + | ||
| 4004 | 4007 | Maybe<bool> v8::Object::CreateDataProperty(v8::Local<v8::Context> context, | |
| 4005 | 4008 | v8::Local<Name> key, | |
| 4006 | 4009 | v8::Local<Value> value) { | |
@@ -4218,6 +4221,11 @@ MaybeLocal<Value> v8::Object::Get(Local<v8::Context> context, | |||
| 4218 | 4221 | RETURN_ESCAPED(Utils::ToLocal(result)); | |
| 4219 | 4222 | } | |
| 4220 | 4223 | ||
| 4224 | + Local<Value> v8::Object::Get(v8::Local<Value> key) { | ||
| 4225 | + auto context = ContextFromNeverReadOnlySpaceObject(Utils::OpenHandle(this)); | ||
| 4226 | + RETURN_TO_LOCAL_UNCHECKED(Get(context, key), Value); | ||
| 4227 | + } | ||
| 4228 | + | ||
| 4221 | 4229 | MaybeLocal<Value> v8::Object::Get(Local<Context> context, uint32_t index) { | |
| 4222 | 4230 | PREPARE_FOR_EXECUTION(context, Object, Get, Value); | |
| 4223 | 4231 | auto self = Utils::OpenHandle(this); | |
@@ -4228,6 +4236,11 @@ MaybeLocal<Value> v8::Object::Get(Local<Context> context, uint32_t index) { | |||
| 4228 | 4236 | RETURN_ESCAPED(Utils::ToLocal(result)); | |
| 4229 | 4237 | } | |
| 4230 | 4238 | ||
| 4239 | + Local<Value> v8::Object::Get(uint32_t index) { | ||
| 4240 | + auto context = ContextFromNeverReadOnlySpaceObject(Utils::OpenHandle(this)); | ||
| 4241 | + RETURN_TO_LOCAL_UNCHECKED(Get(context, index), Value); | ||
| 4242 | + } | ||
| 4243 | + | ||
| 4231 | 4244 | MaybeLocal<Value> v8::Object::GetPrivate(Local<Context> context, | |
| 4232 | 4245 | Local<Private> key) { | |
| 4233 | 4246 | return Get(context, Local<Value>(reinterpret_cast<Value*>(*key))); | |
@@ -10651,6 +10664,7 @@ void InvokeFunctionCallback(const v8::FunctionCallbackInfo<v8::Value>& info, | |||
| 10651 | 10664 | #undef EXCEPTION_BAILOUT_CHECK_SCOPED_DO_NOT_USE | |
| 10652 | 10665 | #undef RETURN_ON_FAILED_EXECUTION | |
| 10653 | 10666 | #undef RETURN_ON_FAILED_EXECUTION_PRIMITIVE | |
| 10667 | + #undef RETURN_TO_LOCAL_UNCHECKED | ||
| 10654 | 10668 | #undef RETURN_ESCAPED | |
| 10655 | 10669 | #undef SET_FIELD_WRAPPED | |
| 10656 | 10670 | #undef NEW_STRING | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -10,6 +10,7 @@ | |||
| 10 | 10 | ||
| 11 | 11 | namespace v8 { | |
| 12 | 12 | ||
| 13 | + /* These tests do not apply on Node 12. | ||
| 13 | 14 | TEST(ResourceConstraints, ConfigureDefaultsFromHeapSizeSmall) { | |
| 14 | 15 | const size_t KB = static_cast<size_t>(i::KB); | |
| 15 | 16 | const size_t MB = static_cast<size_t>(i::MB); | |
@@ -39,6 +40,7 @@ TEST(ResourceConstraints, ConfigureDefaultsFromHeapSizeLarge) { | |||
| 39 | 40 | ASSERT_EQ(3 * 512 * pm * KB, | |
| 40 | 41 | constraints.initial_young_generation_size_in_bytes()); | |
| 41 | 42 | } | |
| 43 | + */ | ||
| 42 | 44 | ||
| 43 | 45 | TEST(ResourceConstraints, ConfigureDefaults) { | |
| 44 | 46 | const size_t KB = static_cast<size_t>(i::KB); | |
| Back | FazBrowse Home | New Git URL |
0 commit comments