| Index: src/flag-definitions.h
|
| diff --git a/src/flag-definitions.h b/src/flag-definitions.h
|
| index 0bbcd7f1dee50beab1b36b0590f0f228a431209b..3bdcc5af08c3931cfb0c7bcf6763da0014a38709 100644
|
| --- a/src/flag-definitions.h
|
| +++ b/src/flag-definitions.h
|
| @@ -224,6 +224,8 @@ DEFINE_bool(allocation_site_pretenuring, true,
|
| "pretenure with allocation sites")
|
| DEFINE_bool(trace_pretenuring, false,
|
| "trace pretenuring decisions of HAllocate instructions")
|
| +DEFINE_bool(trace_pretenuring_statistics, false,
|
| + "trace allocation site pretenuring statistics")
|
| DEFINE_bool(track_fields, true, "track fields with only smi values")
|
| DEFINE_bool(track_double_fields, true, "track fields with double values")
|
| DEFINE_bool(track_heap_object_fields, true, "track fields with heap values")
|
| @@ -247,10 +249,14 @@ DEFINE_bool(crankshaft, true, "use crankshaft")
|
| DEFINE_string(hydrogen_filter, "*", "optimization filter")
|
| DEFINE_bool(use_range, true, "use hydrogen range analysis")
|
| DEFINE_bool(use_gvn, true, "use hydrogen global value numbering")
|
| +DEFINE_int(gvn_iterations, 3, "maximum number of GVN fix-point iterations")
|
| DEFINE_bool(use_canonicalizing, true, "use hydrogen instruction canonicalizing")
|
| DEFINE_bool(use_inlining, true, "use function inlining")
|
| -DEFINE_bool(use_escape_analysis, false, "use hydrogen escape analysis")
|
| +DEFINE_bool(use_escape_analysis, true, "use hydrogen escape analysis")
|
| DEFINE_bool(use_allocation_folding, true, "use allocation folding")
|
| +DEFINE_bool(use_local_allocation_folding, false, "only fold in basic blocks")
|
| +DEFINE_bool(use_write_barrier_elimination, true,
|
| + "eliminate write barriers targeting allocations in optimized code")
|
| DEFINE_int(max_inlining_levels, 5, "maximum number of inlining levels")
|
| DEFINE_int(max_inlined_source_size, 600,
|
| "maximum source size in bytes considered for a single inlining")
|
| @@ -349,12 +355,10 @@ DEFINE_bool(omit_map_checks_for_leaf_maps, true,
|
| "do not emit check maps for constant values that have a leaf map, "
|
| "deoptimize the optimized code if the layout of the maps changes.")
|
|
|
| -DEFINE_bool(new_string_add, true, "enable new string addition")
|
| -
|
| // Profiler flags.
|
| DEFINE_int(frame_count, 1, "number of stack frames inspected by the profiler")
|
| - // 0x1700 fits in the immediate field of an ARM instruction.
|
| -DEFINE_int(interrupt_budget, 0x1700,
|
| + // 0x1800 fits in the immediate field of an ARM instruction.
|
| +DEFINE_int(interrupt_budget, 0x1800,
|
| "execution budget before interrupt is triggered")
|
| DEFINE_int(type_info_threshold, 25,
|
| "percentage of ICs that must have type info to allow optimization")
|
| @@ -394,6 +398,8 @@ DEFINE_bool(enable_32dregs, ENABLE_32DREGS_DEFAULT,
|
| "enable use of d16-d31 registers on ARM - this requires VFP3")
|
| DEFINE_bool(enable_vldr_imm, false,
|
| "enable use of constant pools for double immediate (ARM only)")
|
| +DEFINE_bool(force_long_branches, false,
|
| + "force all emitted branches to be in long mode (MIPS only)")
|
|
|
| // bootstrapper.cc
|
| DEFINE_string(expose_natives_as, NULL, "expose natives in global object")
|
| @@ -414,10 +420,6 @@ DEFINE_bool(disable_native_files, false, "disable builtin natives files")
|
| // builtins-ia32.cc
|
| DEFINE_bool(inline_new, true, "use fast inline allocation")
|
|
|
| -// checks.cc
|
| -DEFINE_bool(stack_trace_on_abort, true,
|
| - "print a stack trace if an assertion failure occurs")
|
| -
|
| // codegen-ia32.cc / codegen-arm.cc
|
| DEFINE_bool(trace_codegen, false,
|
| "print name of functions for which code is generated")
|
| @@ -468,7 +470,7 @@ DEFINE_bool(debugger_auto_break, true,
|
| "automatically set the debug break flag when debugger commands are "
|
| "in the queue")
|
| DEFINE_bool(enable_liveedit, true, "enable liveedit experimental feature")
|
| -DEFINE_bool(break_on_abort, true, "always cause a debug break before aborting")
|
| +DEFINE_bool(hard_abort, true, "abort by crashing")
|
|
|
| // execution.cc
|
| // Slightly less than 1MB on 64-bit, since Windows' default stack size for
|
| @@ -533,6 +535,7 @@ DEFINE_bool(parallel_sweeping, true, "enable parallel sweeping")
|
| DEFINE_bool(concurrent_sweeping, false, "enable concurrent sweeping")
|
| DEFINE_int(sweeper_threads, 0,
|
| "number of parallel and concurrent sweeping threads")
|
| +DEFINE_bool(job_based_sweeping, false, "enable job based sweeping")
|
| #ifdef VERIFY_HEAP
|
| DEFINE_bool(verify_heap, false, "verify heap pointers before and after GC")
|
| #endif
|
| @@ -569,6 +572,8 @@ DEFINE_bool(cleanup_code_caches_at_gc, true,
|
| 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, true,
|
| + "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).")
|
| @@ -580,21 +585,36 @@ DEFINE_bool(use_verbose_printer, true, "allows verbose printing")
|
| DEFINE_bool(allow_natives_syntax, false, "allow natives syntax")
|
| DEFINE_bool(trace_parse, false, "trace parsing and preparsing")
|
|
|
| -DEFINE_bool(trace_lexer, false, "trace lexing")
|
| -
|
| -// simulator-arm.cc and simulator-mips.cc
|
| +// simulator-arm.cc, simulator-a64.cc and simulator-mips.cc
|
| DEFINE_bool(trace_sim, false, "Trace simulator execution")
|
| +DEFINE_bool(debug_sim, false, "Enable debugging the simulator")
|
| DEFINE_bool(check_icache, false,
|
| "Check icache flushes in ARM and MIPS simulator")
|
| DEFINE_int(stop_sim_at, 0, "Simulator stop after x number of instructions")
|
| +#ifdef V8_TARGET_ARCH_A64
|
| +DEFINE_int(sim_stack_alignment, 16,
|
| + "Stack alignment in bytes in simulator. This must be a power of two "
|
| + "and it must be at least 16. 16 is default.")
|
| +#else
|
| DEFINE_int(sim_stack_alignment, 8,
|
| "Stack alingment in bytes in simulator (4 or 8, 8 is default)")
|
| +#endif
|
| +DEFINE_int(sim_stack_size, 2 * MB / KB,
|
| + "Stack size of the A64 simulator in kBytes (default is 2 MB)")
|
| +DEFINE_bool(log_regs_modified, true,
|
| + "When logging register values, only print modified registers.")
|
| +DEFINE_bool(log_colour, true,
|
| + "When logging, try to use coloured output.")
|
| +DEFINE_bool(ignore_asm_unimplemented_break, false,
|
| + "Don't break for ASM_UNIMPLEMENTED_BREAK macros.")
|
| +DEFINE_bool(trace_sim_messages, false,
|
| + "Trace simulator debug messages. Implied by --trace-sim.")
|
|
|
| // isolate.cc
|
| +DEFINE_bool(stack_trace_on_illegal, false,
|
| + "print stack trace when an illegal exception is thrown")
|
| DEFINE_bool(abort_on_uncaught_exception, false,
|
| "abort program (dump core) when an uncaught exception is thrown")
|
| -DEFINE_bool(trace_exception, false,
|
| - "print stack trace when throwing exceptions")
|
| DEFINE_bool(randomize_hashes, true,
|
| "randomize hashes to avoid predictable hash collisions "
|
| "(with snapshots this option cannot override the baked-in seed)")
|
| @@ -799,6 +819,11 @@ DEFINE_bool(log_timer_events, false,
|
| "Time events including external callbacks.")
|
| DEFINE_implication(log_timer_events, log_internal_timer_events)
|
| DEFINE_implication(log_internal_timer_events, prof)
|
| +DEFINE_bool(log_instruction_stats, false, "Log AArch64 instruction statistics.")
|
| +DEFINE_string(log_instruction_file, "a64_inst.csv",
|
| + "AArch64 instruction statistics log file.")
|
| +DEFINE_int(log_instruction_period, 1 << 22,
|
| + "AArch64 instruction statistics logging period.")
|
|
|
| DEFINE_bool(redirect_code_traces, false,
|
| "output deopt information and disassembly into file "
|
| @@ -806,6 +831,9 @@ DEFINE_bool(redirect_code_traces, false,
|
| DEFINE_string(redirect_code_traces_to, NULL,
|
| "output deopt information and disassembly into the given file")
|
|
|
| +DEFINE_bool(hydrogen_track_positions, false,
|
| + "track source code positions when building IR")
|
| +
|
| //
|
| // Disassembler only flags
|
| //
|
| @@ -838,8 +866,6 @@ DEFINE_bool(print_unopt_code, false, "print unoptimized code before "
|
| "printing optimized code based on it")
|
| DEFINE_bool(print_code_verbose, false, "print more information for code")
|
| DEFINE_bool(print_builtin_code, false, "print generated code for builtins")
|
| -DEFINE_bool(emit_opt_code_positions, false,
|
| - "annotate optimize code with source code positions")
|
|
|
| #ifdef ENABLE_DISASSEMBLER
|
| DEFINE_bool(sodium, false, "print generated code output suitable for use with "
|
| @@ -848,7 +874,7 @@ DEFINE_bool(sodium, false, "print generated code output suitable for use with "
|
| DEFINE_implication(sodium, print_code_stubs)
|
| DEFINE_implication(sodium, print_code)
|
| DEFINE_implication(sodium, print_opt_code)
|
| -DEFINE_implication(sodium, emit_opt_code_positions)
|
| +DEFINE_implication(sodium, hydrogen_track_positions)
|
| DEFINE_implication(sodium, code_comments)
|
|
|
| DEFINE_bool(print_all_code, false, "enable all flags related to printing code")
|
|
|