Index: runtime/vm/flag_list.h |
diff --git a/runtime/vm/flag_list.h b/runtime/vm/flag_list.h |
index 6b2e6315e9fdb2aa977f38f2c39054e4e05993f7..94c0425f66125575d39d604d7cbd924e5ace8bbd 100644 |
--- a/runtime/vm/flag_list.h |
+++ b/runtime/vm/flag_list.h |
@@ -41,164 +41,126 @@ |
// D(name, type, default_value, comment) |
// C(name, precompiled_value, product_value, type, default_value, comment) |
#define FLAG_LIST(P, R, D, C) \ |
-P(background_compilation, bool, USING_MULTICORE, \ |
- "Run optimizing compilation in background") \ |
-R(background_compilation_stop_alot, false, bool, false, \ |
- "Stress test system: stop background compiler often.") \ |
-P(background_finalization, bool, USING_MULTICORE, \ |
- "Run weak handle finalizers in background") \ |
-R(break_at_isolate_spawn, false, bool, false, \ |
- "Insert a one-time breakpoint at the entrypoint for all spawned isolates") \ |
-C(collect_code, false, true, bool, true, \ |
- "Attempt to GC infrequently used code.") \ |
-P(collect_dynamic_function_names, bool, true, \ |
- "Collects all dynamic function names to identify unique targets") \ |
-R(concurrent_sweep, USING_MULTICORE, bool, USING_MULTICORE, \ |
- "Concurrent sweep for old generation.") \ |
-R(dedup_instructions, true, bool, false, \ |
- "Canonicalize instructions when precompiling.") \ |
-C(deoptimize_alot, false, false, bool, false, \ |
- "Deoptimizes we are about to return to Dart code from native entries.") \ |
-C(deoptimize_every, 0, 0, int, 0, \ |
- "Deoptimize on every N stack overflow checks") \ |
-R(disable_alloc_stubs_after_gc, false, bool, false, \ |
- "Stress testing flag.") \ |
-R(disassemble, false, bool, false, \ |
- "Disassemble dart code.") \ |
-R(disassemble_optimized, false, bool, false, \ |
- "Disassemble optimized code.") \ |
-R(dump_megamorphic_stats, false, bool, false, \ |
- "Dump megamorphic cache statistics") \ |
-R(dump_symbol_stats, false, bool, false, \ |
- "Dump symbol table statistics") \ |
-R(enable_asserts, false, bool, false, \ |
- "Enable assert statements.") \ |
-C(enable_mirrors, false, false, bool, true, \ |
- "Disable to make importing dart:mirrors an error.") \ |
-R(enable_type_checks, false, bool, false, \ |
- "Enable type checks.") \ |
-R(error_on_bad_override, false, bool, false, \ |
- "Report error for bad overrides.") \ |
-R(error_on_bad_type, false, bool, false, \ |
- "Report error for malformed types.") \ |
-P(external_max_size, int, (kWordSize <= 4) ? 512 : 1024, \ |
- "Max total size of external allocations in MB, or 0 for unlimited," \ |
- "e.g: --external_max_size=1024 allows up to 1024MB of externals") \ |
-P(fields_may_be_reset, bool, false, \ |
- "Don't optimize away static field initialization") \ |
-C(force_clone_compiler_objects, false, false, bool, false, \ |
- "Force cloning of objects needed in compiler (ICData and Field).") \ |
-R(gc_at_alloc, false, bool, false, \ |
- "GC at every allocation.") \ |
-P(getter_setter_ratio, int, 13, \ |
- "Ratio of getter/setter usage used for double field unboxing heuristics") \ |
-P(guess_icdata_cid, bool, true, \ |
- "Artificially create type feedback for arithmetic etc. operations") \ |
-P(huge_method_cutoff_in_tokens, int, 20000, \ |
- "Huge method cutoff in tokens: Disables optimizations for huge methods.") \ |
-P(interpret_irregexp, bool, USING_DBC, \ |
- "Use irregexp bytecode interpreter") \ |
-P(lazy_dispatchers, bool, true, \ |
- "Generate dispatchers lazily") \ |
-P(link_natives_lazily, bool, false, \ |
- "Link native calls lazily") \ |
-C(load_deferred_eagerly, true, true, bool, false, \ |
- "Load deferred libraries eagerly.") \ |
-R(log_marker_tasks, false, bool, false, \ |
- "Log debugging information for old gen GC marking tasks.") \ |
-R(marker_tasks, USING_MULTICORE ? 2 : 0, int, USING_MULTICORE ? 2 : 0, \ |
- "The number of tasks to spawn during old gen GC marking (0 means " \ |
- "perform all marking on main thread).") \ |
-P(max_polymorphic_checks, int, 4, \ |
- "Maximum number of polymorphic check, otherwise it is megamorphic.") \ |
-P(max_equality_polymorphic_checks, int, 32, \ |
- "Maximum number of polymorphic checks in equality operator,") \ |
-P(merge_sin_cos, bool, false, \ |
- "Merge sin/cos into sincos") \ |
-P(new_gen_ext_limit, int, 64, \ |
- "maximum total external size (MB) in new gen before triggering GC") \ |
-P(new_gen_semi_max_size, int, (kWordSize <= 4) ? 16 : 32, \ |
- "Max size of new gen semi space in MB") \ |
-P(optimization_counter_threshold, int, 30000, \ |
- "Function's usage-counter value before it is optimized, -1 means never") \ |
-P(old_gen_heap_size, int, (kWordSize <= 4) ? 1536 : 0, \ |
- "Max size of old gen heap size in MB, or 0 for unlimited," \ |
- "e.g: --old_gen_heap_size=1024 allows up to 1024MB old gen heap") \ |
-R(pause_isolates_on_start, false, bool, false, \ |
- "Pause isolates before starting.") \ |
-R(pause_isolates_on_exit, false, bool, false, \ |
- "Pause isolates exiting.") \ |
-R(pause_isolates_on_unhandled_exceptions, false, bool, false, \ |
- "Pause isolates on unhandled exceptions.") \ |
-P(polymorphic_with_deopt, bool, true, \ |
- "Polymorphic calls with deoptimization / megamorphic call") \ |
-P(precompiled_mode, bool, false, \ |
- "Precompilation compiler mode") \ |
-C(precompiled_runtime, true, false, bool, false, \ |
- "Precompiled runtime mode") \ |
-R(print_ssa_liveranges, false, bool, false, \ |
- "Print live ranges after allocation.") \ |
-C(print_stop_message, false, false, bool, false, \ |
- "Print stop message.") \ |
-D(print_variable_descriptors, bool, false, \ |
- "Print variable descriptors in disassembly.") \ |
-R(profiler, false, bool, !USING_DBC && !USING_FUCHSIA, \ |
- "Enable the profiler.") \ |
-P(reorder_basic_blocks, bool, true, \ |
- "Reorder basic blocks") \ |
-R(support_ast_printer, false, bool, true, \ |
- "Support the AST printer.") \ |
-R(support_compiler_stats, false, bool, true, \ |
- "Support compiler stats.") \ |
-C(support_debugger, false, false, bool, true, \ |
- "Support the debugger.") \ |
-R(support_disassembler, false, bool, true, \ |
- "Support the disassembler.") \ |
-R(support_il_printer, false, bool, true, \ |
- "Support the IL printer.") \ |
-C(support_reload, false, false, bool, true, \ |
- "Support isolate reload.") \ |
-R(support_service, false, bool, true, \ |
- "Support the service protocol.") \ |
-R(support_timeline, false, bool, true, \ |
- "Support timeline.") \ |
-D(trace_cha, bool, false, \ |
- "Trace CHA operations") \ |
-D(trace_field_guards, bool, false, \ |
- "Trace changes in field's cids.") \ |
-D(trace_isolates, bool, false, \ |
- "Trace isolate creation and shut down.") \ |
-D(trace_handles, bool, false, \ |
- "Traces allocation of handles.") \ |
-D(trace_kernel_binary, bool, false, \ |
- "Trace Kernel reader/writer.") \ |
-D(trace_optimization, bool, false, \ |
- "Print optimization details.") \ |
-R(trace_profiler, false, bool, false, \ |
- "Profiler trace") \ |
-D(trace_profiler_verbose, bool, false, \ |
- "Verbose profiler trace") \ |
-D(trace_ssa_allocator, bool, false, \ |
- "Trace register allocation over SSA.") \ |
-D(trace_zones, bool, false, \ |
- "Traces allocation sizes in the zone.") \ |
-P(truncating_left_shift, bool, true, \ |
- "Optimize left shift to truncate if possible") \ |
-P(use_cha_deopt, bool, true, \ |
- "Use class hierarchy analysis even if it can cause deoptimization.") \ |
-P(use_field_guards, bool, !USING_DBC, \ |
- "Use field guards and track field types") \ |
-C(use_osr, false, true, bool, true, \ |
- "Use OSR") \ |
-P(verbose_gc, bool, false, \ |
- "Enables verbose GC.") \ |
-P(verbose_gc_hdr, int, 40, \ |
- "Print verbose GC header interval.") \ |
-R(verify_after_gc, false, bool, false, \ |
- "Enables heap verification after GC.") \ |
-R(verify_before_gc, false, bool, false, \ |
- "Enables heap verification before GC.") \ |
-D(verify_on_transition, bool, false, \ |
- "Verify on dart <==> VM.") \ |
+ P(background_compilation, bool, USING_MULTICORE, \ |
+ "Run optimizing compilation in background") \ |
+ R(background_compilation_stop_alot, false, bool, false, \ |
+ "Stress test system: stop background compiler often.") \ |
+ P(background_finalization, bool, USING_MULTICORE, \ |
+ "Run weak handle finalizers in background") \ |
+ R(break_at_isolate_spawn, false, bool, false, \ |
+ "Insert a one-time breakpoint at the entrypoint for all spawned isolates") \ |
+ C(collect_code, false, true, bool, true, \ |
+ "Attempt to GC infrequently used code.") \ |
+ P(collect_dynamic_function_names, bool, true, \ |
+ "Collects all dynamic function names to identify unique targets") \ |
+ R(concurrent_sweep, USING_MULTICORE, bool, USING_MULTICORE, \ |
+ "Concurrent sweep for old generation.") \ |
+ R(dedup_instructions, true, bool, false, \ |
+ "Canonicalize instructions when precompiling.") \ |
+ C(deoptimize_alot, false, false, bool, false, \ |
+ "Deoptimizes we are about to return to Dart code from native entries.") \ |
+ C(deoptimize_every, 0, 0, int, 0, \ |
+ "Deoptimize on every N stack overflow checks") \ |
+ R(disable_alloc_stubs_after_gc, false, bool, false, "Stress testing flag.") \ |
+ R(disassemble, false, bool, false, "Disassemble dart code.") \ |
+ R(disassemble_optimized, false, bool, false, "Disassemble optimized code.") \ |
+ R(dump_megamorphic_stats, false, bool, false, \ |
+ "Dump megamorphic cache statistics") \ |
+ R(dump_symbol_stats, false, bool, false, "Dump symbol table statistics") \ |
+ R(enable_asserts, false, bool, false, "Enable assert statements.") \ |
+ C(enable_mirrors, false, false, bool, true, \ |
+ "Disable to make importing dart:mirrors an error.") \ |
+ R(enable_type_checks, false, bool, false, "Enable type checks.") \ |
+ R(error_on_bad_override, false, bool, false, \ |
+ "Report error for bad overrides.") \ |
+ R(error_on_bad_type, false, bool, false, \ |
+ "Report error for malformed types.") \ |
+ P(external_max_size, int, (kWordSize <= 4) ? 512 : 1024, \ |
+ "Max total size of external allocations in MB, or 0 for unlimited," \ |
+ "e.g: --external_max_size=1024 allows up to 1024MB of externals") \ |
+ P(fields_may_be_reset, bool, false, \ |
+ "Don't optimize away static field initialization") \ |
+ C(force_clone_compiler_objects, false, false, bool, false, \ |
+ "Force cloning of objects needed in compiler (ICData and Field).") \ |
+ R(gc_at_alloc, false, bool, false, "GC at every allocation.") \ |
+ P(getter_setter_ratio, int, 13, \ |
+ "Ratio of getter/setter usage used for double field unboxing heuristics") \ |
+ P(guess_icdata_cid, bool, true, \ |
+ "Artificially create type feedback for arithmetic etc. operations") \ |
+ P(huge_method_cutoff_in_tokens, int, 20000, \ |
+ "Huge method cutoff in tokens: Disables optimizations for huge methods.") \ |
+ P(interpret_irregexp, bool, USING_DBC, "Use irregexp bytecode interpreter") \ |
+ P(lazy_dispatchers, bool, true, "Generate dispatchers lazily") \ |
+ P(link_natives_lazily, bool, false, "Link native calls lazily") \ |
+ C(load_deferred_eagerly, true, true, bool, false, \ |
+ "Load deferred libraries eagerly.") \ |
+ R(log_marker_tasks, false, bool, false, \ |
+ "Log debugging information for old gen GC marking tasks.") \ |
+ R(marker_tasks, USING_MULTICORE ? 2 : 0, int, USING_MULTICORE ? 2 : 0, \ |
+ "The number of tasks to spawn during old gen GC marking (0 means " \ |
+ "perform all marking on main thread).") \ |
+ P(max_polymorphic_checks, int, 4, \ |
+ "Maximum number of polymorphic check, otherwise it is megamorphic.") \ |
+ P(max_equality_polymorphic_checks, int, 32, \ |
+ "Maximum number of polymorphic checks in equality operator,") \ |
+ P(merge_sin_cos, bool, false, "Merge sin/cos into sincos") \ |
+ P(new_gen_ext_limit, int, 64, \ |
+ "maximum total external size (MB) in new gen before triggering GC") \ |
+ P(new_gen_semi_max_size, int, (kWordSize <= 4) ? 16 : 32, \ |
+ "Max size of new gen semi space in MB") \ |
+ P(optimization_counter_threshold, int, 30000, \ |
+ "Function's usage-counter value before it is optimized, -1 means never") \ |
+ P(old_gen_heap_size, int, (kWordSize <= 4) ? 1536 : 0, \ |
+ "Max size of old gen heap size in MB, or 0 for unlimited," \ |
+ "e.g: --old_gen_heap_size=1024 allows up to 1024MB old gen heap") \ |
+ R(pause_isolates_on_start, false, bool, false, \ |
+ "Pause isolates before starting.") \ |
+ R(pause_isolates_on_exit, false, bool, false, "Pause isolates exiting.") \ |
+ R(pause_isolates_on_unhandled_exceptions, false, bool, false, \ |
+ "Pause isolates on unhandled exceptions.") \ |
+ P(polymorphic_with_deopt, bool, true, \ |
+ "Polymorphic calls with deoptimization / megamorphic call") \ |
+ P(precompiled_mode, bool, false, "Precompilation compiler mode") \ |
+ C(precompiled_runtime, true, false, bool, false, "Precompiled runtime mode") \ |
+ R(print_ssa_liveranges, false, bool, false, \ |
+ "Print live ranges after allocation.") \ |
+ C(print_stop_message, false, false, bool, false, "Print stop message.") \ |
+ D(print_variable_descriptors, bool, false, \ |
+ "Print variable descriptors in disassembly.") \ |
+ R(profiler, false, bool, !USING_DBC && !USING_FUCHSIA, \ |
+ "Enable the profiler.") \ |
+ P(reorder_basic_blocks, bool, true, "Reorder basic blocks") \ |
+ R(support_ast_printer, false, bool, true, "Support the AST printer.") \ |
+ R(support_compiler_stats, false, bool, true, "Support compiler stats.") \ |
+ C(support_debugger, false, false, bool, true, "Support the debugger.") \ |
+ R(support_disassembler, false, bool, true, "Support the disassembler.") \ |
+ R(support_il_printer, false, bool, true, "Support the IL printer.") \ |
+ C(support_reload, false, false, bool, true, "Support isolate reload.") \ |
+ R(support_service, false, bool, true, "Support the service protocol.") \ |
+ R(support_timeline, false, bool, true, "Support timeline.") \ |
+ D(trace_cha, bool, false, "Trace CHA operations") \ |
+ D(trace_field_guards, bool, false, "Trace changes in field's cids.") \ |
+ D(trace_isolates, bool, false, "Trace isolate creation and shut down.") \ |
+ D(trace_handles, bool, false, "Traces allocation of handles.") \ |
+ D(trace_kernel_binary, bool, false, "Trace Kernel reader/writer.") \ |
+ D(trace_optimization, bool, false, "Print optimization details.") \ |
+ R(trace_profiler, false, bool, false, "Profiler trace") \ |
+ D(trace_profiler_verbose, bool, false, "Verbose profiler trace") \ |
+ D(trace_ssa_allocator, bool, false, "Trace register allocation over SSA.") \ |
+ D(trace_zones, bool, false, "Traces allocation sizes in the zone.") \ |
+ P(truncating_left_shift, bool, true, \ |
+ "Optimize left shift to truncate if possible") \ |
+ P(use_cha_deopt, bool, true, \ |
+ "Use class hierarchy analysis even if it can cause deoptimization.") \ |
+ P(use_field_guards, bool, !USING_DBC, \ |
+ "Use field guards and track field types") \ |
+ C(use_osr, false, true, bool, true, "Use OSR") \ |
+ P(verbose_gc, bool, false, "Enables verbose GC.") \ |
+ P(verbose_gc_hdr, int, 40, "Print verbose GC header interval.") \ |
+ R(verify_after_gc, false, bool, false, \ |
+ "Enables heap verification after GC.") \ |
+ R(verify_before_gc, false, bool, false, \ |
+ "Enables heap verification before GC.") \ |
+ D(verify_on_transition, bool, false, "Verify on dart <==> VM.") |
#endif // RUNTIME_VM_FLAG_LIST_H_ |