diff options
author | Michaël Zasso <targos@protonmail.com> | 2017-05-02 10:50:00 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2017-05-06 20:02:35 +0200 |
commit | 60d1aac8d225e844e68ae48e8f3d58802e635fbe (patch) | |
tree | 922f347dd054db18d88666fad7181e5a777f4022 /deps/v8/src/flag-definitions.h | |
parent | 73d9c0f903ae371cd5011af64c3a6f69a1bda978 (diff) | |
download | node-new-60d1aac8d225e844e68ae48e8f3d58802e635fbe.tar.gz |
deps: update V8 to 5.8.283.38
PR-URL: https://github.com/nodejs/node/pull/12784
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Diffstat (limited to 'deps/v8/src/flag-definitions.h')
-rw-r--r-- | deps/v8/src/flag-definitions.h | 352 |
1 files changed, 180 insertions, 172 deletions
diff --git a/deps/v8/src/flag-definitions.h b/deps/v8/src/flag-definitions.h index 39534f9301..e6e9b7eb7a 100644 --- a/deps/v8/src/flag-definitions.h +++ b/deps/v8/src/flag-definitions.h @@ -159,6 +159,7 @@ struct MaybeBoolFlag { #define DEFINE_MAYBE_BOOL(nam, cmt) \ FLAG(MAYBE_BOOL, MaybeBoolFlag, nam, {false COMMA false}, cmt) #define DEFINE_INT(nam, def, cmt) FLAG(INT, int, nam, def, cmt) +#define DEFINE_UINT(nam, def, cmt) FLAG(UINT, unsigned int, nam, def, cmt) #define DEFINE_FLOAT(nam, def, cmt) FLAG(FLOAT, double, nam, def, cmt) #define DEFINE_STRING(nam, def, cmt) FLAG(STRING, const char*, nam, def, cmt) #define DEFINE_ARGS(nam, cmt) FLAG(ARGS, JSArguments, nam, {0 COMMA NULL}, cmt) @@ -196,38 +197,36 @@ DEFINE_IMPLICATION(es_staging, move_object_start) #define HARMONY_INPROGRESS(V) \ V(harmony_array_prototype_values, "harmony Array.prototype.values") \ V(harmony_function_sent, "harmony function.sent") \ + V(harmony_tailcalls, "harmony tail calls") \ V(harmony_sharedarraybuffer, "harmony sharedarraybuffer") \ - V(harmony_simd, "harmony simd") \ V(harmony_do_expressions, "harmony do-expressions") \ V(harmony_regexp_named_captures, "harmony regexp named captures") \ V(harmony_regexp_property, "harmony unicode regexp property classes") \ + V(harmony_function_tostring, "harmony Function.prototype.toString") \ V(harmony_class_fields, "harmony public fields in class literals") \ - V(harmony_object_spread, "harmony object spread") + V(harmony_async_iteration, "harmony async iteration") \ + V(harmony_dynamic_import, "harmony dynamic import") \ + V(harmony_promise_finally, "harmony Promise.prototype.finally") // Features that are complete (but still behind --harmony/es-staging flag). -#define HARMONY_STAGED_BASE(V) \ - V(harmony_regexp_lookbehind, "harmony regexp lookbehind") \ - V(harmony_restrictive_generators, \ - "harmony restrictions on generator declarations") \ - V(harmony_tailcalls, "harmony tail calls") \ - V(harmony_trailing_commas, \ - "harmony trailing commas in function parameter lists") - -#ifdef V8_I18N_SUPPORT -#define HARMONY_STAGED(V) \ - HARMONY_STAGED_BASE(V) \ - V(icu_case_mapping, "case mapping with ICU rather than Unibrow") -#else -#define HARMONY_STAGED(V) HARMONY_STAGED_BASE(V) -#endif +#define HARMONY_STAGED(V) \ + V(harmony_regexp_lookbehind, "harmony regexp lookbehind") \ + V(harmony_restrictive_generators, \ + "harmony restrictions on generator declarations") \ + V(harmony_object_rest_spread, "harmony object rest spread properties") \ + V(harmony_template_escapes, \ + "harmony invalid escapes in tagged template literals") // Features that are shipping (turned on by default, but internal flag remains). -#define HARMONY_SHIPPING_BASE(V) +#define HARMONY_SHIPPING_BASE(V) \ + V(harmony_trailing_commas, \ + "harmony trailing commas in function parameter lists") #ifdef V8_I18N_SUPPORT -#define HARMONY_SHIPPING(V) \ - HARMONY_SHIPPING_BASE(V) \ - V(datetime_format_to_parts, "Intl.DateTimeFormat.formatToParts") +#define HARMONY_SHIPPING(V) \ + HARMONY_SHIPPING_BASE(V) \ + V(datetime_format_to_parts, "Intl.DateTimeFormat.formatToParts") \ + V(icu_case_mapping, "case mapping with ICU rather than Unibrow") #else #define HARMONY_SHIPPING(V) HARMONY_SHIPPING_BASE(V) #endif @@ -258,14 +257,27 @@ HARMONY_SHIPPING(FLAG_SHIPPING_FEATURES) DEFINE_BOOL(future, false, "Implies all staged features that we want to ship in the " "not-too-far future") -DEFINE_IMPLICATION(future, ignition_staging) +DEFINE_IMPLICATION(future, turbo) + +DEFINE_IMPLICATION(turbo, ignition_staging) +DEFINE_IMPLICATION(turbo, enable_fast_array_builtins) +DEFINE_IMPLICATION(turbo, thin_strings) + +// TODO(rmcilroy): Remove ignition-staging and set these implications directly +// with the turbo flag. +DEFINE_BOOL(ignition_staging, false, "use ignition with all staged features") +DEFINE_IMPLICATION(ignition_staging, ignition) +DEFINE_IMPLICATION(ignition_staging, compiler_dispatcher) // Flags for experimental implementation features. DEFINE_BOOL(allocation_site_pretenuring, true, "pretenure with allocation sites") +DEFINE_BOOL(mark_shared_functions_for_tier_up, true, + "mark shared functions for tier up") DEFINE_BOOL(page_promotion, true, "promote pages based on utilization") DEFINE_INT(page_promotion_threshold, 70, "min percentage of live bytes on a page to enable fast evacuation") +DEFINE_BOOL(smi_binop, true, "support smi representation in binary operations") DEFINE_BOOL(trace_pretenuring, false, "trace pretenuring decisions of HAllocate instructions") DEFINE_BOOL(trace_pretenuring_statistics, false, @@ -280,12 +292,7 @@ DEFINE_IMPLICATION(track_computed_fields, track_fields) DEFINE_BOOL(track_field_types, true, "track field types") DEFINE_IMPLICATION(track_field_types, track_fields) DEFINE_IMPLICATION(track_field_types, track_heap_object_fields) -DEFINE_BOOL(smi_binop, true, "support smi representation in binary operations") -DEFINE_BOOL(mark_shared_functions_for_tier_up, false, - "mark shared functions for tier up") - -// Flags for strongly rooting literal arrays in the feedback vector. -DEFINE_BOOL(trace_strong_rooted_literals, false, "trace literal rooting") +DEFINE_BOOL(type_profile, false, "collect type information") // Flags for optimization types. DEFINE_BOOL(optimize_for_size, false, @@ -300,10 +307,6 @@ DEFINE_BOOL(string_slices, true, "use string slices") // Flags for Ignition. DEFINE_BOOL(ignition, false, "use ignition interpreter") -DEFINE_BOOL(ignition_staging, false, "use ignition with all staged features") -DEFINE_IMPLICATION(ignition_staging, ignition) -DEFINE_IMPLICATION(ignition_staging, compiler_dispatcher) -DEFINE_STRING(ignition_filter, "*", "filter for ignition interpreter") DEFINE_BOOL(ignition_deadcode, true, "use ignition dead code elimination optimizer") DEFINE_BOOL(ignition_osr, true, "enable support for OSR from ignition code") @@ -313,6 +316,8 @@ DEFINE_BOOL(ignition_filter_expression_positions, true, "filter expression positions before the bytecode pipeline") DEFINE_BOOL(print_bytecode, false, "print bytecode generated by ignition interpreter") +DEFINE_STRING(print_bytecode_filter, "*", + "filter for selecting which functions to print bytecode") DEFINE_BOOL(trace_ignition, false, "trace the bytecodes executed by the ignition interpreter") DEFINE_BOOL(trace_ignition_codegen, false, @@ -434,7 +439,6 @@ DEFINE_BOOL(turbo_sp_frame_access, false, "use stack pointer-relative access to frame wherever possible") DEFINE_BOOL(turbo_preprocess_ranges, true, "run pre-register allocation heuristics") -DEFINE_BOOL(turbo_loop_stackcheck, true, "enable stack checks in loops") DEFINE_STRING(turbo_filter, "~~", "optimization filter for TurboFan compiler") DEFINE_BOOL(trace_turbo, false, "trace generated TurboFan IR") DEFINE_BOOL(trace_turbo_graph, false, "trace generated TurboFan graphs") @@ -452,9 +456,16 @@ DEFINE_BOOL(turbo_asm, true, "enable TurboFan for asm.js code") DEFINE_BOOL(turbo_verify, DEBUG_BOOL, "verify TurboFan graphs at each phase") DEFINE_STRING(turbo_verify_machine_graph, nullptr, "verify TurboFan machine graph before instruction selection") -DEFINE_BOOL(csa_verify, DEBUG_BOOL, +#ifdef ENABLE_VERIFY_CSA +DEFINE_BOOL(verify_csa, DEBUG_BOOL, "verify TurboFan machine graph of code stubs") -DEFINE_BOOL(trace_csa_verify, false, "trace code stubs verification") +#else +// Define the flag as read-only-false so that code still compiles even in the +// non-ENABLE_VERIFY_CSA configuration. +DEFINE_BOOL_READONLY(verify_csa, false, + "verify TurboFan machine graph of code stubs") +#endif +DEFINE_BOOL(trace_verify_csa, false, "trace code stubs verification") DEFINE_STRING(csa_trap_on_node, nullptr, "trigger break point when a node with given id is created in " "given stub. The format is: StubName,NodeId") @@ -486,8 +497,8 @@ DEFINE_BOOL(turbo_stress_instruction_scheduling, false, "randomly schedule instructions to stress dependency tracking") DEFINE_BOOL(turbo_store_elimination, true, "enable store-store elimination in TurboFan") -DEFINE_BOOL(turbo_lower_create_closure, false, - "enable inline allocation for closure instantiation") +// TODO(turbofan): Rename --crankshaft to --optimize eventually. +DEFINE_IMPLICATION(turbo, crankshaft) // Flags to help platform porters DEFINE_BOOL(minimal, false, @@ -499,10 +510,16 @@ DEFINE_NEG_IMPLICATION(minimal, use_ic) // Flags for native WebAssembly. DEFINE_BOOL(expose_wasm, true, "expose WASM interface to JavaScript") +DEFINE_BOOL(assume_asmjs_origin, false, + "force wasm decoder to assume input is internal asm-wasm format") DEFINE_BOOL(wasm_disable_structured_cloning, false, "disable WASM structured cloning") DEFINE_INT(wasm_num_compilation_tasks, 10, "number of parallel compilation tasks for wasm") +DEFINE_UINT(wasm_max_mem_pages, v8::internal::wasm::kV8MaxWasmMemoryPages, + "maximum memory size of a wasm instance") +DEFINE_UINT(wasm_max_table_size, v8::internal::wasm::kV8MaxWasmTableSize, + "maximum table size of a wasm instance") DEFINE_BOOL(trace_wasm_encoder, false, "trace encoding of wasm code") DEFINE_BOOL(trace_wasm_decoder, false, "trace decoding of wasm code") DEFINE_BOOL(trace_wasm_decode_time, false, "trace decoding time of wasm code") @@ -522,7 +539,6 @@ DEFINE_BOOL(wasm_loop_assignment_analysis, true, "perform loop assignment analysis for WASM") DEFINE_BOOL(validate_asm, false, "validate asm.js modules before compiling") -DEFINE_IMPLICATION(ignition_staging, validate_asm) DEFINE_BOOL(suppress_asm_messages, false, "don't emit asm.js related messages (for golden file testing)") DEFINE_BOOL(trace_asm_time, false, "log asm.js timing info to the console") @@ -555,10 +571,12 @@ DEFINE_BOOL(wasm_guard_pages, false, "add guard pages to the end of WebWassembly memory" " (experimental, no effect on 32-bit)") DEFINE_IMPLICATION(wasm_trap_handler, wasm_guard_pages) -DEFINE_BOOL(wasm_trap_if, false, +DEFINE_BOOL(wasm_trap_if, true, "enable the use of the trap_if operator for traps") DEFINE_BOOL(wasm_code_fuzzer_gen_test, false, "Generate a test case when running the wasm-code fuzzer") +DEFINE_BOOL(print_wasm_code, false, "Print WebAssembly code") + // Profiler flags. DEFINE_INT(frame_count, 1, "number of stack frames inspected by the profiler") // 0x1800 fits in the immediate field of an ARM instruction. @@ -573,6 +591,112 @@ DEFINE_INT(self_opt_count, 130, "call count before self-optimization") DEFINE_BOOL(trace_opt_verbose, false, "extra verbose compilation tracing") DEFINE_IMPLICATION(trace_opt_verbose, trace_opt) +// Garbage collections flags. +DEFINE_INT(min_semi_space_size, 0, + "min size of a semi-space (in MBytes), the new space consists of two" + "semi-spaces") +DEFINE_INT(max_semi_space_size, 0, + "max size of a semi-space (in MBytes), the new space consists of two" + "semi-spaces") +DEFINE_INT(semi_space_growth_factor, 2, "factor by which to grow the new space") +DEFINE_BOOL(experimental_new_space_growth_heuristic, false, + "Grow the new space based on the percentage of survivors instead " + "of their absolute value.") +DEFINE_INT(max_old_space_size, 0, "max size of the old space (in Mbytes)") +DEFINE_INT(initial_old_space_size, 0, "initial old space size (in Mbytes)") +DEFINE_INT(max_executable_size, 0, "max size of executable memory (in Mbytes)") +DEFINE_BOOL(gc_global, false, "always perform global GCs") +DEFINE_INT(gc_interval, -1, "garbage collect after <n> allocations") +DEFINE_INT(retain_maps_for_n_gc, 2, + "keeps maps alive for <n> old space garbage collections") +DEFINE_BOOL(trace_gc, false, + "print one trace line following each garbage collection") +DEFINE_BOOL(trace_gc_nvp, false, + "print one detailed trace line in name=value format " + "after each garbage collection") +DEFINE_BOOL(trace_gc_ignore_scavenger, false, + "do not print trace line after scavenger collection") +DEFINE_BOOL(trace_idle_notification, false, + "print one trace line following each idle notification") +DEFINE_BOOL(trace_idle_notification_verbose, false, + "prints the heap state used by the idle notification") +DEFINE_BOOL(trace_gc_verbose, false, + "print more details following each garbage collection") +DEFINE_INT(trace_allocation_stack_interval, -1, + "print stack trace after <n> free-list allocations") +DEFINE_BOOL(trace_fragmentation, false, "report fragmentation for old space") +DEFINE_BOOL(trace_fragmentation_verbose, false, + "report fragmentation for old space (detailed)") +DEFINE_BOOL(trace_evacuation, false, "report evacuation statistics") +DEFINE_BOOL(trace_mutator_utilization, false, + "print mutator utilization, allocation speed, gc speed") +DEFINE_BOOL(flush_code, true, "flush code that we expect not to use again") +DEFINE_BOOL(trace_code_flushing, false, "trace code flushing progress") +DEFINE_BOOL(age_code, true, + "track un-executed functions to age code and flush only " + "old code (required for code flushing)") +DEFINE_BOOL(incremental_marking, true, "use incremental marking") +DEFINE_BOOL(incremental_marking_wrappers, true, + "use incremental marking for marking wrappers") +DEFINE_INT(min_progress_during_incremental_marking_finalization, 32, + "keep finalizing incremental marking as long as we discover at " + "least this many unmarked objects") +DEFINE_INT(max_incremental_marking_finalization_rounds, 3, + "at most try this many times to finalize incremental marking") +DEFINE_BOOL(minor_mc, false, "perform young generation mark compact GCs") +DEFINE_NEG_IMPLICATION(minor_mc, incremental_marking) +DEFINE_BOOL(black_allocation, true, "use black allocation") +DEFINE_BOOL(concurrent_sweeping, true, "use concurrent sweeping") +DEFINE_BOOL(parallel_compaction, true, "use parallel compaction") +DEFINE_BOOL(parallel_pointer_update, true, + "use parallel pointer update during compaction") +DEFINE_BOOL(trace_incremental_marking, false, + "trace progress of the incremental marking") +DEFINE_BOOL(track_gc_object_stats, false, + "track object counts and memory usage") +DEFINE_BOOL(trace_gc_object_stats, false, + "trace object counts and memory usage") +DEFINE_INT(gc_stats, 0, "Used by tracing internally to enable gc statistics") +DEFINE_IMPLICATION(trace_gc_object_stats, track_gc_object_stats) +DEFINE_VALUE_IMPLICATION(track_gc_object_stats, gc_stats, 1) +DEFINE_VALUE_IMPLICATION(trace_gc_object_stats, gc_stats, 1) +DEFINE_NEG_IMPLICATION(trace_gc_object_stats, incremental_marking) +DEFINE_BOOL(track_detached_contexts, true, + "track native contexts that are expected to be garbage collected") +DEFINE_BOOL(trace_detached_contexts, false, + "trace native contexts that are expected to be garbage collected") +DEFINE_IMPLICATION(trace_detached_contexts, track_detached_contexts) +#ifdef VERIFY_HEAP +DEFINE_BOOL(verify_heap, false, "verify heap pointers before and after GC") +#endif +DEFINE_BOOL(move_object_start, true, "enable moving of object starts") +DEFINE_BOOL(memory_reducer, true, "use memory reducer") +DEFINE_INT(heap_growing_percent, 0, + "specifies heap growing factor as (1 + heap_growing_percent/100)") +DEFINE_INT(v8_os_page_size, 0, "override OS page size (in KBytes)") +DEFINE_BOOL(always_compact, false, "Perform compaction on every full GC") +DEFINE_BOOL(never_compact, false, + "Never perform compaction on full GC - testing only") +DEFINE_BOOL(compact_code_space, true, "Compact code space on full collections") +DEFINE_BOOL(cleanup_code_caches_at_gc, true, + "Flush code caches in maps during mark compact cycle.") +DEFINE_BOOL(use_marking_progress_bar, true, + "Use a progress bar to scan large objects in increments when " + "incremental marking is active.") +DEFINE_BOOL(zap_code_space, DEBUG_BOOL, + "Zap free memory in code space with 0xCC while sweeping.") +DEFINE_BOOL(force_marking_deque_overflows, false, + "force overflows of marking deque by reducing it's size " + "to 64 words") +DEFINE_BOOL(stress_compaction, false, + "stress the GC compactor to flush out bugs (implies " + "--force_marking_deque_overflows)") +DEFINE_BOOL(manual_evacuation_candidates_selection, false, + "Test mode only flag. It allows an unit test to select evacuation " + "candidates pages (requires --stress_compaction).") +DEFINE_BOOL(fast_promotion_new_space, false, + "fast promote new space on high survival rates") + // assembler-ia32.cc / assembler-arm.cc / assembler-x64.cc DEFINE_BOOL(debug_code, DEBUG_BOOL, "generate extra code (assertions) for debugging") @@ -613,10 +737,12 @@ DEFINE_BOOL(enable_regexp_unaligned_accesses, true, // api.cc DEFINE_BOOL(script_streaming, true, "enable parsing on background") +DEFINE_BOOL(disable_old_api_accessors, false, + "Disable old-style API accessors whose setters trigger through the " + "prototype chain") // bootstrapper.cc DEFINE_STRING(expose_natives_as, NULL, "expose natives in global object") -DEFINE_STRING(expose_debug_as, NULL, "expose debug in global object") DEFINE_BOOL(expose_free_buffer, false, "expose freeBuffer extension") DEFINE_BOOL(expose_gc, false, "expose gc extension") DEFINE_STRING(expose_gc_as, NULL, @@ -630,6 +756,7 @@ DEFINE_BOOL(builtins_in_stack_traces, false, "show built-in functions in stack traces") // builtins.cc +DEFINE_BOOL(enable_fast_array_builtins, false, "use optimized builtins") DEFINE_BOOL(allow_unsafe_function_constructor, false, "allow invoking the function constructor without security checks") @@ -677,6 +804,8 @@ DEFINE_BOOL(cache_prototype_transitions, true, "cache prototype transitions") // compiler-dispatcher.cc DEFINE_BOOL(compiler_dispatcher, false, "enable compiler dispatcher") +DEFINE_BOOL(compiler_dispatcher_eager_inner, false, + "enable background compilation of eager inner functions") DEFINE_BOOL(trace_compiler_dispatcher, false, "trace compiler dispatcher activity") @@ -702,8 +831,6 @@ DEFINE_IMPLICATION(trace_array_abuse, trace_external_array_abuse) // debugger DEFINE_BOOL(trace_debug_json, false, "trace debugging JSON request/response") DEFINE_BOOL(enable_liveedit, true, "enable liveedit experimental feature") -DEFINE_BOOL(side_effect_free_debug_evaluate, false, - "use side-effect-free debug-evaluate for testing") DEFINE_BOOL( trace_side_effect_free_debug_evaluate, false, "print debug messages for side-effect-free debug-evaluate for testing") @@ -724,101 +851,6 @@ DEFINE_BOOL(verify_operand_stack_depth, false, "emit debug code that verifies the static tracking of the operand " "stack depth") -// heap.cc -DEFINE_INT(min_semi_space_size, 0, - "min size of a semi-space (in MBytes), the new space consists of two" - "semi-spaces") -DEFINE_INT(max_semi_space_size, 0, - "max size of a semi-space (in MBytes), the new space consists of two" - "semi-spaces") -DEFINE_INT(semi_space_growth_factor, 2, "factor by which to grow the new space") -DEFINE_BOOL(experimental_new_space_growth_heuristic, false, - "Grow the new space based on the percentage of survivors instead " - "of their absolute value.") -DEFINE_INT(max_old_space_size, 0, "max size of the old space (in Mbytes)") -DEFINE_INT(initial_old_space_size, 0, "initial old space size (in Mbytes)") -DEFINE_INT(max_executable_size, 0, "max size of executable memory (in Mbytes)") -DEFINE_BOOL(gc_global, false, "always perform global GCs") -DEFINE_INT(gc_interval, -1, "garbage collect after <n> allocations") -DEFINE_INT(retain_maps_for_n_gc, 2, - "keeps maps alive for <n> old space garbage collections") -DEFINE_BOOL(trace_gc, false, - "print one trace line following each garbage collection") -DEFINE_BOOL(trace_gc_nvp, false, - "print one detailed trace line in name=value format " - "after each garbage collection") -DEFINE_BOOL(trace_gc_ignore_scavenger, false, - "do not print trace line after scavenger collection") -DEFINE_BOOL(trace_idle_notification, false, - "print one trace line following each idle notification") -DEFINE_BOOL(trace_idle_notification_verbose, false, - "prints the heap state used by the idle notification") -DEFINE_BOOL(print_max_heap_committed, false, - "print statistics of the maximum memory committed for the heap " - "in name=value format on exit") -DEFINE_BOOL(trace_gc_verbose, false, - "print more details following each garbage collection") -DEFINE_INT(trace_allocation_stack_interval, -1, - "print stack trace after <n> free-list allocations") -DEFINE_BOOL(trace_fragmentation, false, "report fragmentation for old space") -DEFINE_BOOL(trace_fragmentation_verbose, false, - "report fragmentation for old space (detailed)") -DEFINE_BOOL(trace_evacuation, false, "report evacuation statistics") -DEFINE_BOOL(trace_mutator_utilization, false, - "print mutator utilization, allocation speed, gc speed") -DEFINE_BOOL(weak_embedded_maps_in_optimized_code, true, - "make maps embedded in optimized code weak") -DEFINE_BOOL(weak_embedded_objects_in_optimized_code, true, - "make objects embedded in optimized code weak") -DEFINE_BOOL(flush_code, true, "flush code that we expect not to use again") -DEFINE_BOOL(trace_code_flushing, false, "trace code flushing progress") -DEFINE_BOOL(age_code, true, - "track un-executed functions to age code and flush only " - "old code (required for code flushing)") -DEFINE_BOOL(incremental_marking, true, "use incremental marking") -DEFINE_BOOL(incremental_marking_wrappers, true, - "use incremental marking for marking wrappers") -DEFINE_BOOL(object_grouping_in_incremental_finalization, true, - "enable object grouping in incremental finalization") -DEFINE_INT(min_progress_during_incremental_marking_finalization, 32, - "keep finalizing incremental marking as long as we discover at " - "least this many unmarked objects") -DEFINE_INT(max_incremental_marking_finalization_rounds, 3, - "at most try this many times to finalize incremental marking") -DEFINE_BOOL(minor_mc, false, "perform young generation mark compact GCs") -DEFINE_NEG_IMPLICATION(minor_mc, incremental_marking) -DEFINE_BOOL(black_allocation, true, "use black allocation") -DEFINE_BOOL(concurrent_sweeping, true, "use concurrent sweeping") -DEFINE_BOOL(parallel_compaction, true, "use parallel compaction") -DEFINE_BOOL(parallel_pointer_update, true, - "use parallel pointer update during compaction") -DEFINE_BOOL(trace_incremental_marking, false, - "trace progress of the incremental marking") -DEFINE_BOOL(track_gc_object_stats, false, - "track object counts and memory usage") -DEFINE_BOOL(trace_gc_object_stats, false, - "trace object counts and memory usage") -DEFINE_INT(gc_stats, 0, "Used by tracing internally to enable gc statistics") -DEFINE_IMPLICATION(trace_gc_object_stats, track_gc_object_stats) -DEFINE_VALUE_IMPLICATION(track_gc_object_stats, gc_stats, 1) -DEFINE_VALUE_IMPLICATION(trace_gc_object_stats, gc_stats, 1) -DEFINE_NEG_IMPLICATION(trace_gc_object_stats, incremental_marking) -DEFINE_BOOL(track_detached_contexts, true, - "track native contexts that are expected to be garbage collected") -DEFINE_BOOL(trace_detached_contexts, false, - "trace native contexts that are expected to be garbage collected") -DEFINE_IMPLICATION(trace_detached_contexts, track_detached_contexts) -#ifdef VERIFY_HEAP -DEFINE_BOOL(verify_heap, false, "verify heap pointers before and after GC") -#endif -DEFINE_BOOL(move_object_start, true, "enable moving of object starts") -DEFINE_BOOL(memory_reducer, true, "use memory reducer") -DEFINE_INT(heap_growing_percent, 0, - "specifies heap growing factor as (1 + heap_growing_percent/100)") - -// spaces.cc -DEFINE_INT(v8_os_page_size, 0, "override OS page size (in KBytes)") - // execution.cc, messages.cc DEFINE_BOOL(clear_exceptions_on_js_entry, false, "clear pending exceptions when entering JavaScript") @@ -847,31 +879,18 @@ DEFINE_BOOL(use_idle_notification, true, // ic.cc DEFINE_BOOL(use_ic, true, "use inline caching") DEFINE_BOOL(trace_ic, false, "trace inline cache state transitions") +DEFINE_IMPLICATION(trace_ic, log_code) DEFINE_INT(ic_stats, 0, "inline cache state transitions statistics") DEFINE_VALUE_IMPLICATION(trace_ic, ic_stats, 1) +DEFINE_BOOL_READONLY(track_constant_fields, false, + "enable constant field tracking") // macro-assembler-ia32.cc DEFINE_BOOL(native_code_counters, false, "generate extra code for manipulating stats counters") -// mark-compact.cc -DEFINE_BOOL(always_compact, false, "Perform compaction on every full GC") -DEFINE_BOOL(never_compact, false, - "Never perform compaction on full GC - testing only") -DEFINE_BOOL(compact_code_space, true, "Compact code space on full collections") -DEFINE_BOOL(cleanup_code_caches_at_gc, true, - "Flush inline caches prior to mark compact collection and " - "flush code caches in maps during mark compact cycle.") -DEFINE_BOOL(use_marking_progress_bar, true, - "Use a progress bar to scan large objects in increments when " - "incremental marking is active.") -DEFINE_BOOL(zap_code_space, DEBUG_BOOL, - "Zap free memory in code space with 0xCC while sweeping.") -DEFINE_INT(random_seed, 0, - "Default seed for initializing random generator " - "(0, the default, means to use system random).") - // objects.cc +DEFINE_BOOL(thin_strings, false, "Enable ThinString support") DEFINE_BOOL(trace_weak_arrays, false, "Trace WeakFixedArray usage") DEFINE_BOOL(trace_prototype_users, false, "Trace updates to prototype user tracking") @@ -885,10 +904,13 @@ DEFINE_BOOL(trace_maps, false, "trace map creation") DEFINE_BOOL(allow_natives_syntax, false, "allow natives syntax") DEFINE_BOOL(trace_parse, false, "trace parsing and preparsing") DEFINE_BOOL(trace_preparse, false, "trace preparsing decisions") -DEFINE_BOOL(lazy_inner_functions, false, "enable lazy parsing inner functions") +DEFINE_BOOL(lazy_inner_functions, true, "enable lazy parsing inner functions") DEFINE_BOOL(aggressive_lazy_inner_functions, false, "even lazier inner function parsing") DEFINE_IMPLICATION(aggressive_lazy_inner_functions, lazy_inner_functions) +DEFINE_BOOL(preparser_scope_analysis, false, + "perform scope analysis for preparsed inner functions") +DEFINE_IMPLICATION(preparser_scope_analysis, lazy_inner_functions) // simulator-arm.cc, simulator-arm64.cc and simulator-mips.cc DEFINE_BOOL(trace_sim, false, "Trace simulator execution") @@ -932,6 +954,9 @@ DEFINE_BOOL(randomize_hashes, true, DEFINE_INT(hash_seed, 0, "Fixed seed to use to hash property keys (0 means random)" "(with snapshots this option cannot override the baked-in seed)") +DEFINE_INT(random_seed, 0, + "Default seed for initializing random generator " + "(0, the default, means to use system random).") DEFINE_BOOL(trace_rail, false, "trace RAIL mode") DEFINE_BOOL(print_all_exceptions, false, "print exception object and stack trace on each thrown exception") @@ -969,23 +994,6 @@ DEFINE_STRING(startup_blob, NULL, DEFINE_BOOL(profile_hydrogen_code_stub_compilation, false, "Print the time it takes to lazily compile hydrogen code stubs.") -// mark-compact.cc -DEFINE_BOOL(force_marking_deque_overflows, false, - "force overflows of marking deque by reducing it's size " - "to 64 words") - -DEFINE_BOOL(stress_compaction, false, - "stress the GC compactor to flush out bugs (implies " - "--force_marking_deque_overflows)") - -DEFINE_BOOL(manual_evacuation_candidates_selection, false, - "Test mode only flag. It allows an unit test to select evacuation " - "candidates pages (requires --stress_compaction).") - -DEFINE_BOOL(disable_old_api_accessors, false, - "Disable old-style API accessors whose setters trigger through the " - "prototype chain") - // // Dev shell flags // |