rev5804時点のDartVMに渡せるオプションを纏めてみました。
違う点がありましたら、ぜひ教えて下さい><
| オプション名 | 型 | デフォルト値 | コメント |
| deoptimization_counter_threshold | int | 5 | "How many times we allow deoptimization before we disallow certain optimizations" |
| disassemble | bool | false | "Disassemble dart code." |
| code_heap_size | int | Heap::kCodeHeapSizeInMB | "code heap size in MB, e.g: --code_heap_size=8 allocates a 8MB old gen heap" |
| compiler_stats | bool | false | "Compiler stat counters." |
| disable_privacy | bool | false | "Disable library privacy." |
| disassemble_stubs | bool | false | "Disassemble generated stubs." |
| enable_asserts | bool | false | "Enable assert statements." |
| enable_checked_mode | bool | false | "Enabled checked mode." (注釈: このオプションは、--enable_assertsと--enable_type_checksを同時に設定するのと同じ意味。) |
| enable_type_checks | bool | false | "Enable type checks." |
| gc_at_alloc | bool | false | "GC at every allocation." |
| generate_gdb_symbols | bool | false | "Generate symbols of generated dart functions for debugging with GDB" |
| ignore_unrecognized_flags | bool | false | "Ignore unrecognized flags." |
| inline_alloc | bool | true | "Inline allocation of objects." |
| inline_cache | bool | true | "enable inline caches" |
| intrinsify | bool | true | "Instrinsify when possible" |
| new_gen_heap_size | int | 32 | "new gen heap size in MB, e.g: --new_gen_heap_size=64 allocates a 64MB new gen heap" |
| old_gen_heap_size | int | Heap::kHeapSizeInMB | "old gen heap size in MB, e.g: --old_gen_heap_size=1024 allocates a 1024MB old gen heap" |
| optimization_counter_threshold | int | 2000 | "function's usage-counter value before it is optimized, -1 means never." |
| print_ast | bool | false | "Print abstract syntax tree." |
| print_bootstrap | bool | false | "Print the bootstrap source." |
| print_classes | bool | false | "Prints details about loaded classes." |
| print_flags | bool | false | "Print flags as they are being parsed." |
| print_flow_graph | bool | false | "Print the IR flow graph." |
| print_ic_in_optimized (TARGET_ARCH_IA32が定義されているときのみ) |
bool | false | "Debugging helper to identify potential performance pitfalls." |
| print_scopes | bool | false | "Print scopes of local variables." |
| print_stack_trace_at_throw | bool | false | "Prints a stack trace everytime a throw occurs." |
| print_stop_message | bool | true | "Print stop message." |
| print_tokens | bool | false | "Print scanned tokens." |
| report_usage_count | bool | false | "Track function usage and report." |
| silent_warnings | bool | false | "Silence warnings." |
| time_all | bool | false | "Time all functionality" |
| trace_bailout | bool | false | "Print bailout from new compiler." |
| trace_class_finalization | bool | false | "Trace class finalization." |
| trace_compiler | bool | false | "Trace compiler operations." |
| trace_deopt | bool | false | "Trace deoptimization" |
| trace_functions | bool | false | "Trace entry of each function." |
| trace_ic | bool | false | "trace IC handling" |
| trace_intrinsified_natives | bool | false | "Report if any of the intrinsified natives are called" |
| trace_isolates | bool | false | "Trace isolate creation and shut down." |
| trace_natives | bool | false | "Trace invocation of natives" |
| trace_optimization (TARGET_ARCH_IA32が定義されているときのみ) |
bool | false | "Trace optimizations." |
| trace_parser | bool | false | "Trace parser operations." |
| trace_patching | bool | false | "Trace patching of code." |
| trace_resolving | bool | false | "Trace resolving." |
| trace_runtime_calls | bool | false | "Trace runtime calls." |
| trace_type_checks | bool | false | "Trace runtime type checks." |
| trace_type_finalization | bool | false | "Trace type finalization." |
| use_new_compiler | bool | TARGET_ARCH_X64が定義されているときtrue。そうでないときにfalse。 | "Try to use the new compiler backend." |
| use_slow_path | bool | false | "Set to true for debugging & verifying the slow paths." |
| verbose_gc | bool | false | "Enables verbose GC." |
| verify_after_gc | bool | false | "Enables heap verification after GC." |
| verify_before_gc | bool | false | "Enables heap verification before GC." |
| verify_implements | bool | false | "Verify that all classes implement their interface." |
| verify_on_transition | bool | false | "Verify on dart <==> VM." |
| warning_as_error | bool | false | "Treat warnings as errors." |
| worker_timeout_millis | int | 5000 | "Free workers when they have been idle for this amount of time." |
おまけ:テスト用オプション(テスト順)
| オプション名 | 型 | デフォルト値 | コメント |
| basic_flag | bool | true | "Testing of a basic boolean flag." |
| parse_flag_bool_test | bool | true | "Flags::Parse (bool) testing" |
| string_opt_test | charp | NULL | "Testing: string option." |
| entrypoint_test | charp | "main" | "Testing: entrypoint" |
| counter | int | 100 | "Testing: int flag" |