| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 304 "when picking a function to optimize, watch for shared function " | 304 "when picking a function to optimize, watch for shared function " |
| 305 "info, not JSFunction itself") | 305 "info, not JSFunction itself") |
| 306 DEFINE_bool(cache_optimized_code, true, | 306 DEFINE_bool(cache_optimized_code, true, |
| 307 "cache optimized code for closures") | 307 "cache optimized code for closures") |
| 308 DEFINE_bool(flush_optimized_code_cache, true, | 308 DEFINE_bool(flush_optimized_code_cache, true, |
| 309 "flushes the cache of optimized code for closures on every GC") | 309 "flushes the cache of optimized code for closures on every GC") |
| 310 DEFINE_bool(inline_construct, true, "inline constructor calls") | 310 DEFINE_bool(inline_construct, true, "inline constructor calls") |
| 311 DEFINE_bool(inline_arguments, true, "inline functions with arguments object") | 311 DEFINE_bool(inline_arguments, true, "inline functions with arguments object") |
| 312 DEFINE_bool(inline_accessors, true, "inline JavaScript accessors") | 312 DEFINE_bool(inline_accessors, true, "inline JavaScript accessors") |
| 313 DEFINE_int(loop_weight, 1, "loop weight for representation inference") | 313 DEFINE_int(loop_weight, 1, "loop weight for representation inference") |
| 314 DEFINE_int(escape_analysis_iterations, 1, | 314 DEFINE_int(escape_analysis_iterations, 2, |
| 315 "maximum number of escape analysis fix-point iterations") | 315 "maximum number of escape analysis fix-point iterations") |
| 316 | 316 |
| 317 DEFINE_bool(optimize_for_in, true, | 317 DEFINE_bool(optimize_for_in, true, |
| 318 "optimize functions containing for-in loops") | 318 "optimize functions containing for-in loops") |
| 319 DEFINE_bool(opt_safe_uint32_operations, true, | 319 DEFINE_bool(opt_safe_uint32_operations, true, |
| 320 "allow uint32 values on optimize frames if they are used only in " | 320 "allow uint32 values on optimize frames if they are used only in " |
| 321 "safe operations") | 321 "safe operations") |
| 322 | 322 |
| 323 DEFINE_bool(concurrent_recompilation, true, | 323 DEFINE_bool(concurrent_recompilation, true, |
| 324 "optimizing hot functions asynchronously on a separate thread") | 324 "optimizing hot functions asynchronously on a separate thread") |
| 325 DEFINE_bool(trace_concurrent_recompilation, false, | 325 DEFINE_bool(trace_concurrent_recompilation, false, |
| 326 "track concurrent recompilation") | 326 "track concurrent recompilation") |
| 327 DEFINE_int(concurrent_recompilation_queue_length, 8, | 327 DEFINE_int(concurrent_recompilation_queue_length, 8, |
| 328 "the length of the concurrent compilation queue") | 328 "the length of the concurrent compilation queue") |
| 329 DEFINE_int(concurrent_recompilation_delay, 0, | 329 DEFINE_int(concurrent_recompilation_delay, 0, |
| 330 "artificial compilation delay in ms") | 330 "artificial compilation delay in ms") |
| 331 DEFINE_bool(block_concurrent_recompilation, false, | 331 DEFINE_bool(block_concurrent_recompilation, false, |
| 332 "block queued jobs until released") | 332 "block queued jobs until released") |
| 333 DEFINE_bool(concurrent_osr, false, | 333 DEFINE_bool(concurrent_osr, false, |
| 334 "concurrent on-stack replacement") | 334 "concurrent on-stack replacement") |
| 335 DEFINE_implication(concurrent_osr, concurrent_recompilation) | 335 DEFINE_implication(concurrent_osr, concurrent_recompilation) |
| 336 | 336 |
| 337 DEFINE_bool(omit_map_checks_for_leaf_maps, true, | 337 DEFINE_bool(omit_map_checks_for_leaf_maps, true, |
| 338 "do not emit check maps for constant values that have a leaf map, " | 338 "do not emit check maps for constant values that have a leaf map, " |
| 339 "deoptimize the optimized code if the layout of the maps changes.") | 339 "deoptimize the optimized code if the layout of the maps changes.") |
| 340 | 340 |
| 341 DEFINE_bool(new_string_add, false, "enable new string addition") |
| 342 |
| 341 // Experimental profiler changes. | 343 // Experimental profiler changes. |
| 342 DEFINE_bool(experimental_profiler, true, "enable all profiler experiments") | 344 DEFINE_bool(experimental_profiler, true, "enable all profiler experiments") |
| 343 DEFINE_bool(watch_ic_patching, false, "profiler considers IC stability") | 345 DEFINE_bool(watch_ic_patching, false, "profiler considers IC stability") |
| 344 DEFINE_int(frame_count, 1, "number of stack frames inspected by the profiler") | 346 DEFINE_int(frame_count, 1, "number of stack frames inspected by the profiler") |
| 345 DEFINE_bool(self_optimization, false, | 347 DEFINE_bool(self_optimization, false, |
| 346 "primitive functions trigger their own optimization") | 348 "primitive functions trigger their own optimization") |
| 347 DEFINE_bool(direct_self_opt, false, | 349 DEFINE_bool(direct_self_opt, false, |
| 348 "call recompile stub directly when self-optimizing") | 350 "call recompile stub directly when self-optimizing") |
| 349 DEFINE_bool(retry_self_opt, false, "re-try self-optimization if it failed") | 351 DEFINE_bool(retry_self_opt, false, "re-try self-optimization if it failed") |
| 350 DEFINE_bool(interrupt_at_exit, false, | 352 DEFINE_bool(interrupt_at_exit, false, |
| (...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 495 DEFINE_int(gc_interval, -1, "garbage collect after <n> allocations") | 497 DEFINE_int(gc_interval, -1, "garbage collect after <n> allocations") |
| 496 DEFINE_bool(trace_gc, false, | 498 DEFINE_bool(trace_gc, false, |
| 497 "print one trace line following each garbage collection") | 499 "print one trace line following each garbage collection") |
| 498 DEFINE_bool(trace_gc_nvp, false, | 500 DEFINE_bool(trace_gc_nvp, false, |
| 499 "print one detailed trace line in name=value format " | 501 "print one detailed trace line in name=value format " |
| 500 "after each garbage collection") | 502 "after each garbage collection") |
| 501 DEFINE_bool(trace_gc_ignore_scavenger, false, | 503 DEFINE_bool(trace_gc_ignore_scavenger, false, |
| 502 "do not print trace line after scavenger collection") | 504 "do not print trace line after scavenger collection") |
| 503 DEFINE_bool(print_cumulative_gc_stat, false, | 505 DEFINE_bool(print_cumulative_gc_stat, false, |
| 504 "print cumulative GC statistics in name=value format on exit") | 506 "print cumulative GC statistics in name=value format on exit") |
| 507 DEFINE_bool(print_max_heap_committed, false, |
| 508 "print statistics of the maximum memory committed for the heap " |
| 509 "in name=value format on exit") |
| 505 DEFINE_bool(trace_gc_verbose, false, | 510 DEFINE_bool(trace_gc_verbose, false, |
| 506 "print more details following each garbage collection") | 511 "print more details following each garbage collection") |
| 507 DEFINE_bool(trace_fragmentation, false, | 512 DEFINE_bool(trace_fragmentation, false, |
| 508 "report fragmentation for old pointer and data pages") | 513 "report fragmentation for old pointer and data pages") |
| 509 DEFINE_bool(trace_external_memory, false, | 514 DEFINE_bool(trace_external_memory, false, |
| 510 "print amount of external allocated memory after each time " | 515 "print amount of external allocated memory after each time " |
| 511 "it is adjusted.") | 516 "it is adjusted.") |
| 512 DEFINE_bool(collect_maps, true, | 517 DEFINE_bool(collect_maps, true, |
| 513 "garbage collect maps from which no objects can be reached") | 518 "garbage collect maps from which no objects can be reached") |
| 514 DEFINE_bool(weak_embedded_maps_in_optimized_code, true, | 519 DEFINE_bool(weak_embedded_maps_in_optimized_code, true, |
| (...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 691 // Debug only flags | 696 // Debug only flags |
| 692 // | 697 // |
| 693 #undef FLAG | 698 #undef FLAG |
| 694 #ifdef DEBUG | 699 #ifdef DEBUG |
| 695 #define FLAG FLAG_FULL | 700 #define FLAG FLAG_FULL |
| 696 #else | 701 #else |
| 697 #define FLAG FLAG_READONLY | 702 #define FLAG FLAG_READONLY |
| 698 #endif | 703 #endif |
| 699 | 704 |
| 700 // checks.cc | 705 // checks.cc |
| 706 #ifdef ENABLE_SLOW_ASSERTS |
| 701 DEFINE_bool(enable_slow_asserts, false, | 707 DEFINE_bool(enable_slow_asserts, false, |
| 702 "enable asserts that are slow to execute") | 708 "enable asserts that are slow to execute") |
| 709 #endif |
| 703 | 710 |
| 704 // codegen-ia32.cc / codegen-arm.cc / macro-assembler-*.cc | 711 // codegen-ia32.cc / codegen-arm.cc / macro-assembler-*.cc |
| 705 DEFINE_bool(print_source, false, "pretty print source code") | 712 DEFINE_bool(print_source, false, "pretty print source code") |
| 706 DEFINE_bool(print_builtin_source, false, | 713 DEFINE_bool(print_builtin_source, false, |
| 707 "pretty print source code for builtins") | 714 "pretty print source code for builtins") |
| 708 DEFINE_bool(print_ast, false, "print source AST") | 715 DEFINE_bool(print_ast, false, "print source AST") |
| 709 DEFINE_bool(print_builtin_ast, false, "print source AST for builtins") | 716 DEFINE_bool(print_builtin_ast, false, "print source AST for builtins") |
| 710 DEFINE_string(stop_at, "", "function name where to insert a breakpoint") | 717 DEFINE_string(stop_at, "", "function name where to insert a breakpoint") |
| 711 DEFINE_bool(trap_on_abort, false, "replace aborts by breakpoints") | 718 DEFINE_bool(trap_on_abort, false, "replace aborts by breakpoints") |
| 712 | 719 |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 785 DEFINE_bool(logfile_per_isolate, true, "Separate log files for each isolate.") | 792 DEFINE_bool(logfile_per_isolate, true, "Separate log files for each isolate.") |
| 786 DEFINE_bool(ll_prof, false, "Enable low-level linux profiler.") | 793 DEFINE_bool(ll_prof, false, "Enable low-level linux profiler.") |
| 787 DEFINE_string(gc_fake_mmap, "/tmp/__v8_gc__", | 794 DEFINE_string(gc_fake_mmap, "/tmp/__v8_gc__", |
| 788 "Specify the name of the file for fake gc mmap used in ll_prof") | 795 "Specify the name of the file for fake gc mmap used in ll_prof") |
| 789 DEFINE_bool(log_internal_timer_events, false, "Time internal events.") | 796 DEFINE_bool(log_internal_timer_events, false, "Time internal events.") |
| 790 DEFINE_bool(log_timer_events, false, | 797 DEFINE_bool(log_timer_events, false, |
| 791 "Time events including external callbacks.") | 798 "Time events including external callbacks.") |
| 792 DEFINE_implication(log_timer_events, log_internal_timer_events) | 799 DEFINE_implication(log_timer_events, log_internal_timer_events) |
| 793 DEFINE_implication(log_internal_timer_events, prof) | 800 DEFINE_implication(log_internal_timer_events, prof) |
| 794 | 801 |
| 802 DEFINE_bool(redirect_code_traces, false, |
| 803 "output deopt information and disassembly into file " |
| 804 "code-<pid>-<isolate id>.asm") |
| 805 DEFINE_string(redirect_code_traces_to, NULL, |
| 806 "output deopt information and disassembly into the given file") |
| 807 |
| 795 // | 808 // |
| 796 // Disassembler only flags | 809 // Disassembler only flags |
| 797 // | 810 // |
| 798 #undef FLAG | 811 #undef FLAG |
| 799 #ifdef ENABLE_DISASSEMBLER | 812 #ifdef ENABLE_DISASSEMBLER |
| 800 #define FLAG FLAG_FULL | 813 #define FLAG FLAG_FULL |
| 801 #else | 814 #else |
| 802 #define FLAG FLAG_READONLY | 815 #define FLAG FLAG_READONLY |
| 803 #endif | 816 #endif |
| 804 | 817 |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 879 #undef DEFINE_ALIAS_float | 892 #undef DEFINE_ALIAS_float |
| 880 #undef DEFINE_ALIAS_args | 893 #undef DEFINE_ALIAS_args |
| 881 | 894 |
| 882 #undef FLAG_MODE_DECLARE | 895 #undef FLAG_MODE_DECLARE |
| 883 #undef FLAG_MODE_DEFINE | 896 #undef FLAG_MODE_DEFINE |
| 884 #undef FLAG_MODE_DEFINE_DEFAULTS | 897 #undef FLAG_MODE_DEFINE_DEFAULTS |
| 885 #undef FLAG_MODE_META | 898 #undef FLAG_MODE_META |
| 886 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 899 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
| 887 | 900 |
| 888 #undef COMMA | 901 #undef COMMA |
| OLD | NEW |