| OLD | NEW |
| 1 // Copyright 2008 the V8 project authors. All rights reserved. | 1 // Copyright 2010 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 |
| 11 // with the distribution. | 11 // with the distribution. |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 #define DEFINE_int(nam, def, cmt) FLAG(INT, int, nam, def, cmt) | 89 #define DEFINE_int(nam, def, cmt) FLAG(INT, int, nam, def, cmt) |
| 90 #define DEFINE_float(nam, def, cmt) FLAG(FLOAT, double, nam, def, cmt) | 90 #define DEFINE_float(nam, def, cmt) FLAG(FLOAT, double, nam, def, cmt) |
| 91 #define DEFINE_string(nam, def, cmt) FLAG(STRING, const char*, nam, def, cmt) | 91 #define DEFINE_string(nam, def, cmt) FLAG(STRING, const char*, nam, def, cmt) |
| 92 #define DEFINE_args(nam, def, cmt) FLAG(ARGS, JSArguments, nam, def, cmt) | 92 #define DEFINE_args(nam, def, cmt) FLAG(ARGS, JSArguments, nam, def, cmt) |
| 93 | 93 |
| 94 // | 94 // |
| 95 // Flags in all modes. | 95 // Flags in all modes. |
| 96 // | 96 // |
| 97 #define FLAG FLAG_FULL | 97 #define FLAG FLAG_FULL |
| 98 | 98 |
| 99 // Flags for Crankshaft. |
| 100 #ifdef V8_TARGET_ARCH_IA32 |
| 101 DEFINE_bool(crankshaft, true, "use crankshaft") |
| 102 #else |
| 103 DEFINE_bool(crankshaft, false, "use crankshaft") |
| 104 #endif |
| 105 DEFINE_string(hydrogen_filter, "", "hydrogen use/trace filter") |
| 106 DEFINE_bool(use_hydrogen, true, "use generated hydrogen for compilation") |
| 107 DEFINE_bool(build_lithium, true, "use lithium chunk builder") |
| 108 DEFINE_bool(alloc_lithium, true, "use lithium register allocator") |
| 109 DEFINE_bool(use_lithium, true, "use lithium code generator") |
| 110 DEFINE_bool(use_range, true, "use hydrogen range analysis") |
| 111 DEFINE_bool(eliminate_dead_phis, true, "eliminate dead phis") |
| 112 DEFINE_bool(use_gvn, true, "use hydrogen global value numbering") |
| 113 DEFINE_bool(use_peeling, false, "use loop peeling") |
| 114 DEFINE_bool(use_canonicalizing, true, "use hydrogen instruction canonicalizing") |
| 115 DEFINE_bool(use_inlining, true, "use function inlining") |
| 116 DEFINE_bool(limit_inlining, true, "limit code size growth from inlining") |
| 117 DEFINE_bool(eliminate_empty_blocks, true, "eliminate empty blocks") |
| 118 DEFINE_bool(loop_invariant_code_motion, true, "loop invariant code motion") |
| 119 DEFINE_bool(time_hydrogen, false, "timing for hydrogen") |
| 120 DEFINE_bool(trace_hydrogen, false, "trace generated hydrogen to file") |
| 121 DEFINE_bool(trace_inlining, false, "trace inlining decisions") |
| 122 DEFINE_bool(trace_alloc, false, "trace register allocator") |
| 123 DEFINE_bool(trace_range, false, "trace range analysis") |
| 124 DEFINE_bool(trace_gvn, false, "trace global value numbering") |
| 125 DEFINE_bool(trace_environment, false, "trace lithium environments") |
| 126 DEFINE_bool(trace_representation, false, "trace representation types") |
| 127 DEFINE_bool(stress_pointer_maps, false, "pointer map for every instruction") |
| 128 DEFINE_bool(stress_environments, false, "environment for every instruction") |
| 129 DEFINE_int(deopt_every_n_times, |
| 130 0, |
| 131 "deoptimize every n times a deopt point is passed") |
| 132 DEFINE_bool(process_arguments_object, true, "try to deal with arguments object") |
| 133 DEFINE_bool(trap_on_deopt, false, "put a break point before deoptimizing") |
| 134 DEFINE_bool(deoptimize_uncommon_cases, true, "deoptimize uncommon cases") |
| 135 DEFINE_bool(polymorphic_inlining, true, "polymorphic inlining") |
| 136 DEFINE_bool(aggressive_loop_invariant_motion, true, |
| 137 "aggressive motion of instructions out of loops") |
| 138 #ifdef V8_TARGET_ARCH_IA32 |
| 139 DEFINE_bool(use_osr, true, "use on-stack replacement") |
| 140 #else |
| 141 DEFINE_bool(use_osr, false, "use on-stack replacement") |
| 142 #endif |
| 143 DEFINE_bool(trace_osr, false, "trace on-stack replacement") |
| 144 |
| 99 // assembler-ia32.cc / assembler-arm.cc / assembler-x64.cc | 145 // assembler-ia32.cc / assembler-arm.cc / assembler-x64.cc |
| 100 DEFINE_bool(debug_code, false, | 146 DEFINE_bool(debug_code, false, |
| 101 "generate extra code (comments, assertions) for debugging") | 147 "generate extra code (assertions) for debugging") |
| 148 DEFINE_bool(code_comments, false, "emit comments in code disassembly") |
| 102 DEFINE_bool(emit_branch_hints, false, "emit branch hints") | 149 DEFINE_bool(emit_branch_hints, false, "emit branch hints") |
| 103 DEFINE_bool(peephole_optimization, true, | 150 DEFINE_bool(peephole_optimization, true, |
| 104 "perform peephole optimizations in assembly code") | 151 "perform peephole optimizations in assembly code") |
| 105 DEFINE_bool(print_peephole_optimization, false, | 152 DEFINE_bool(print_peephole_optimization, false, |
| 106 "print peephole optimizations in assembly code") | 153 "print peephole optimizations in assembly code") |
| 107 DEFINE_bool(enable_sse2, true, | 154 DEFINE_bool(enable_sse2, true, |
| 108 "enable use of SSE2 instructions if available") | 155 "enable use of SSE2 instructions if available") |
| 109 DEFINE_bool(enable_sse3, true, | 156 DEFINE_bool(enable_sse3, true, |
| 110 "enable use of SSE3 instructions if available") | 157 "enable use of SSE3 instructions if available") |
| 111 DEFINE_bool(enable_sse4_1, true, | 158 DEFINE_bool(enable_sse4_1, true, |
| (...skipping 27 matching lines...) Expand all Loading... |
| 139 | 186 |
| 140 // codegen-ia32.cc / codegen-arm.cc | 187 // codegen-ia32.cc / codegen-arm.cc |
| 141 DEFINE_bool(trace, false, "trace function calls") | 188 DEFINE_bool(trace, false, "trace function calls") |
| 142 DEFINE_bool(defer_negation, true, "defer negation operation") | 189 DEFINE_bool(defer_negation, true, "defer negation operation") |
| 143 DEFINE_bool(mask_constants_with_cookie, | 190 DEFINE_bool(mask_constants_with_cookie, |
| 144 true, | 191 true, |
| 145 "use random jit cookie to mask large constants") | 192 "use random jit cookie to mask large constants") |
| 146 | 193 |
| 147 // codegen.cc | 194 // codegen.cc |
| 148 DEFINE_bool(lazy, true, "use lazy compilation") | 195 DEFINE_bool(lazy, true, "use lazy compilation") |
| 196 DEFINE_bool(trace_opt, false, "trace lazy optimization") |
| 197 DEFINE_bool(opt, true, "use adaptive optimizations") |
| 198 DEFINE_bool(opt_eagerly, false, "be more eager when adaptively optimizing") |
| 199 DEFINE_bool(always_opt, false, "always try to optimize functions") |
| 200 DEFINE_bool(prepare_always_opt, false, "prepare for turning on always opt") |
| 149 DEFINE_bool(debug_info, true, "add debug information to compiled functions") | 201 DEFINE_bool(debug_info, true, "add debug information to compiled functions") |
| 202 DEFINE_bool(deopt, true, "support deoptimization") |
| 203 DEFINE_bool(trace_deopt, false, "trace deoptimization") |
| 150 | 204 |
| 151 // compiler.cc | 205 // compiler.cc |
| 152 DEFINE_bool(strict, false, "strict error checking") | 206 DEFINE_bool(strict, false, "strict error checking") |
| 153 DEFINE_int(min_preparse_length, 1024, | 207 DEFINE_int(min_preparse_length, 1024, |
| 154 "minimum length for automatic enable preparsing") | 208 "minimum length for automatic enable preparsing") |
| 155 DEFINE_bool(full_compiler, true, "enable dedicated backend for run-once code") | 209 DEFINE_bool(full_compiler, true, "enable dedicated backend for run-once code") |
| 156 DEFINE_bool(always_full_compiler, false, | 210 DEFINE_bool(always_full_compiler, false, |
| 157 "try to use the dedicated run-once backend for all code") | 211 "try to use the dedicated run-once backend for all code") |
| 158 DEFINE_bool(trace_bailout, false, | 212 DEFINE_bool(trace_bailout, false, |
| 159 "print reasons for falling back to using the classic V8 backend") | 213 "print reasons for falling back to using the classic V8 backend") |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 360 DEFINE_bool(debug_serialization, false, | 414 DEFINE_bool(debug_serialization, false, |
| 361 "write debug information into the snapshot.") | 415 "write debug information into the snapshot.") |
| 362 | 416 |
| 363 // spaces.cc | 417 // spaces.cc |
| 364 DEFINE_bool(collect_heap_spill_statistics, false, | 418 DEFINE_bool(collect_heap_spill_statistics, false, |
| 365 "report heap spill statistics along with heap_stats " | 419 "report heap spill statistics along with heap_stats " |
| 366 "(requires heap_stats)") | 420 "(requires heap_stats)") |
| 367 | 421 |
| 368 DEFINE_bool(trace_isolates, false, "trace isolate state changes") | 422 DEFINE_bool(trace_isolates, false, "trace isolate state changes") |
| 369 | 423 |
| 424 // VM state |
| 425 DEFINE_bool(log_state_changes, false, "Log state changes.") |
| 426 |
| 370 // Regexp | 427 // Regexp |
| 371 DEFINE_bool(regexp_possessive_quantifier, | 428 DEFINE_bool(regexp_possessive_quantifier, |
| 372 false, | 429 false, |
| 373 "enable possessive quantifier syntax for testing") | 430 "enable possessive quantifier syntax for testing") |
| 374 DEFINE_bool(trace_regexp_bytecodes, false, "trace regexp bytecode execution") | 431 DEFINE_bool(trace_regexp_bytecodes, false, "trace regexp bytecode execution") |
| 375 DEFINE_bool(trace_regexp_assembler, | 432 DEFINE_bool(trace_regexp_assembler, |
| 376 false, | 433 false, |
| 377 "trace regexp macro assembler calls.") | 434 "trace regexp macro assembler calls.") |
| 378 | 435 |
| 379 // | 436 // |
| (...skipping 12 matching lines...) Expand all Loading... |
| 392 DEFINE_bool(log_all, false, "Log all events to the log file.") | 449 DEFINE_bool(log_all, false, "Log all events to the log file.") |
| 393 DEFINE_bool(log_runtime, false, "Activate runtime system %Log call.") | 450 DEFINE_bool(log_runtime, false, "Activate runtime system %Log call.") |
| 394 DEFINE_bool(log_api, false, "Log API events to the log file.") | 451 DEFINE_bool(log_api, false, "Log API events to the log file.") |
| 395 DEFINE_bool(log_code, false, | 452 DEFINE_bool(log_code, false, |
| 396 "Log code events to the log file without profiling.") | 453 "Log code events to the log file without profiling.") |
| 397 DEFINE_bool(log_gc, false, | 454 DEFINE_bool(log_gc, false, |
| 398 "Log heap samples on garbage collection for the hp2ps tool.") | 455 "Log heap samples on garbage collection for the hp2ps tool.") |
| 399 DEFINE_bool(log_handles, false, "Log global handle events.") | 456 DEFINE_bool(log_handles, false, "Log global handle events.") |
| 400 DEFINE_bool(log_snapshot_positions, false, | 457 DEFINE_bool(log_snapshot_positions, false, |
| 401 "log positions of (de)serialized objects in the snapshot.") | 458 "log positions of (de)serialized objects in the snapshot.") |
| 402 DEFINE_bool(log_state_changes, false, "Log state changes.") | |
| 403 DEFINE_bool(log_suspect, false, "Log suspect operations.") | 459 DEFINE_bool(log_suspect, false, "Log suspect operations.") |
| 404 DEFINE_bool(log_producers, false, "Log stack traces of JS objects allocations.") | 460 DEFINE_bool(log_producers, false, "Log stack traces of JS objects allocations.") |
| 405 DEFINE_bool(compress_log, false, | 461 DEFINE_bool(compress_log, false, |
| 406 "Compress log to save space (makes log less human-readable).") | 462 "Compress log to save space (makes log less human-readable).") |
| 407 DEFINE_bool(prof, false, | 463 DEFINE_bool(prof, false, |
| 408 "Log statistical profiling information (implies --log-code).") | 464 "Log statistical profiling information (implies --log-code).") |
| 409 DEFINE_bool(prof_auto, true, | 465 DEFINE_bool(prof_auto, true, |
| 410 "Used with --prof, starts profiling automatically") | 466 "Used with --prof, starts profiling automatically") |
| 411 DEFINE_bool(prof_lazy, false, | 467 DEFINE_bool(prof_lazy, false, |
| 412 "Used with --prof, only does sampling and logging" | 468 "Used with --prof, only does sampling and logging" |
| (...skipping 28 matching lines...) Expand all Loading... |
| 441 #define FLAG FLAG_FULL | 497 #define FLAG FLAG_FULL |
| 442 #else | 498 #else |
| 443 #define FLAG FLAG_READONLY | 499 #define FLAG FLAG_READONLY |
| 444 #endif | 500 #endif |
| 445 | 501 |
| 446 // code-stubs.cc | 502 // code-stubs.cc |
| 447 DEFINE_bool(print_code_stubs, false, "print code stubs") | 503 DEFINE_bool(print_code_stubs, false, "print code stubs") |
| 448 | 504 |
| 449 // codegen-ia32.cc / codegen-arm.cc | 505 // codegen-ia32.cc / codegen-arm.cc |
| 450 DEFINE_bool(print_code, false, "print generated code") | 506 DEFINE_bool(print_code, false, "print generated code") |
| 507 DEFINE_bool(print_opt_code, false, "print optimized code") |
| 508 DEFINE_bool(print_code_verbose, false, "print more information for code") |
| 451 DEFINE_bool(print_builtin_code, false, "print generated code for builtins") | 509 DEFINE_bool(print_builtin_code, false, "print generated code for builtins") |
| 452 | 510 |
| 453 // Cleanup... | 511 // Cleanup... |
| 454 #undef FLAG_FULL | 512 #undef FLAG_FULL |
| 455 #undef FLAG_READONLY | 513 #undef FLAG_READONLY |
| 456 #undef FLAG | 514 #undef FLAG |
| 457 | 515 |
| 458 #undef DEFINE_bool | 516 #undef DEFINE_bool |
| 459 #undef DEFINE_int | 517 #undef DEFINE_int |
| 460 #undef DEFINE_string | 518 #undef DEFINE_string |
| 461 | 519 |
| 462 #undef FLAG_MODE_DECLARE | 520 #undef FLAG_MODE_DECLARE |
| 463 #undef FLAG_MODE_DEFINE | 521 #undef FLAG_MODE_DEFINE |
| 464 #undef FLAG_MODE_DEFINE_DEFAULTS | 522 #undef FLAG_MODE_DEFINE_DEFAULTS |
| 465 #undef FLAG_MODE_META | 523 #undef FLAG_MODE_META |
| OLD | NEW |