OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // This file defines all of the flags. It is separated into different section, | 5 // This file defines all of the flags. It is separated into different section, |
6 // for Debug, Release, Logging and Profiling, etc. To add a new flag, find the | 6 // for Debug, Release, Logging and Profiling, etc. To add a new flag, find the |
7 // correct section, and use one of the DEFINE_ macros, without a trailing ';'. | 7 // correct section, and use one of the DEFINE_ macros, without a trailing ';'. |
8 // | 8 // |
9 // This include does not have a guard, because it is a template-style include, | 9 // This include does not have a guard, because it is a template-style include, |
10 // which can be included multiple times in different modes. It expects to have | 10 // which can be included multiple times in different modes. It expects to have |
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
349 DEFINE_BOOL(trace_environment_liveness, false, | 349 DEFINE_BOOL(trace_environment_liveness, false, |
350 "trace liveness of local variable slots") | 350 "trace liveness of local variable slots") |
351 DEFINE_BOOL(trace_hydrogen, false, "trace generated hydrogen to file") | 351 DEFINE_BOOL(trace_hydrogen, false, "trace generated hydrogen to file") |
352 DEFINE_STRING(trace_hydrogen_filter, "*", "hydrogen tracing filter") | 352 DEFINE_STRING(trace_hydrogen_filter, "*", "hydrogen tracing filter") |
353 DEFINE_BOOL(trace_hydrogen_stubs, false, "trace generated hydrogen for stubs") | 353 DEFINE_BOOL(trace_hydrogen_stubs, false, "trace generated hydrogen for stubs") |
354 DEFINE_STRING(trace_hydrogen_file, NULL, "trace hydrogen to given file name") | 354 DEFINE_STRING(trace_hydrogen_file, NULL, "trace hydrogen to given file name") |
355 DEFINE_STRING(trace_phase, "HLZ", "trace generated IR for specified phases") | 355 DEFINE_STRING(trace_phase, "HLZ", "trace generated IR for specified phases") |
356 DEFINE_BOOL(trace_inlining, false, "trace inlining decisions") | 356 DEFINE_BOOL(trace_inlining, false, "trace inlining decisions") |
357 DEFINE_BOOL(trace_load_elimination, false, "trace load elimination") | 357 DEFINE_BOOL(trace_load_elimination, false, "trace load elimination") |
358 DEFINE_BOOL(trace_store_elimination, false, "trace store elimination") | 358 DEFINE_BOOL(trace_store_elimination, false, "trace store elimination") |
| 359 DEFINE_BOOL(turbo_verify_store_elimination, false, |
| 360 "verify store elimination more rigorously") |
359 DEFINE_BOOL(trace_alloc, false, "trace register allocator") | 361 DEFINE_BOOL(trace_alloc, false, "trace register allocator") |
360 DEFINE_BOOL(trace_all_uses, false, "trace all use positions") | 362 DEFINE_BOOL(trace_all_uses, false, "trace all use positions") |
361 DEFINE_BOOL(trace_range, false, "trace range analysis") | 363 DEFINE_BOOL(trace_range, false, "trace range analysis") |
362 DEFINE_BOOL(trace_gvn, false, "trace global value numbering") | 364 DEFINE_BOOL(trace_gvn, false, "trace global value numbering") |
363 DEFINE_BOOL(trace_representation, false, "trace representation types") | 365 DEFINE_BOOL(trace_representation, false, "trace representation types") |
364 DEFINE_BOOL(trace_removable_simulates, false, "trace removable simulates") | 366 DEFINE_BOOL(trace_removable_simulates, false, "trace removable simulates") |
365 DEFINE_BOOL(trace_escape_analysis, false, "trace hydrogen escape analysis") | 367 DEFINE_BOOL(trace_escape_analysis, false, "trace hydrogen escape analysis") |
366 DEFINE_BOOL(trace_allocation_folding, false, "trace allocation folding") | 368 DEFINE_BOOL(trace_allocation_folding, false, "trace allocation folding") |
367 DEFINE_BOOL(trace_track_allocation_sites, false, | 369 DEFINE_BOOL(trace_track_allocation_sites, false, |
368 "trace the tracking of allocation sites") | 370 "trace the tracking of allocation sites") |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
418 DEFINE_BOOL(block_concurrent_recompilation, false, | 420 DEFINE_BOOL(block_concurrent_recompilation, false, |
419 "block queued jobs until released") | 421 "block queued jobs until released") |
420 | 422 |
421 DEFINE_BOOL(omit_map_checks_for_leaf_maps, true, | 423 DEFINE_BOOL(omit_map_checks_for_leaf_maps, true, |
422 "do not emit check maps for constant values that have a leaf map, " | 424 "do not emit check maps for constant values that have a leaf map, " |
423 "deoptimize the optimized code if the layout of the maps changes.") | 425 "deoptimize the optimized code if the layout of the maps changes.") |
424 | 426 |
425 // Flags for TurboFan. | 427 // Flags for TurboFan. |
426 DEFINE_BOOL(turbo, false, "enable TurboFan compiler") | 428 DEFINE_BOOL(turbo, false, "enable TurboFan compiler") |
427 DEFINE_IMPLICATION(turbo, turbo_asm_deoptimization) | 429 DEFINE_IMPLICATION(turbo, turbo_asm_deoptimization) |
428 DEFINE_IMPLICATION(turbo, turbo_store_elimination) | |
429 DEFINE_IMPLICATION(turbo, turbo_loop_peeling) | 430 DEFINE_IMPLICATION(turbo, turbo_loop_peeling) |
430 DEFINE_BOOL(turbo_from_bytecode, false, "enable building graphs from bytecode") | 431 DEFINE_BOOL(turbo_from_bytecode, false, "enable building graphs from bytecode") |
431 DEFINE_BOOL(turbo_sp_frame_access, false, | 432 DEFINE_BOOL(turbo_sp_frame_access, false, |
432 "use stack pointer-relative access to frame wherever possible") | 433 "use stack pointer-relative access to frame wherever possible") |
433 DEFINE_BOOL(turbo_preprocess_ranges, true, | 434 DEFINE_BOOL(turbo_preprocess_ranges, true, |
434 "run pre-register allocation heuristics") | 435 "run pre-register allocation heuristics") |
435 DEFINE_BOOL(turbo_loop_stackcheck, true, "enable stack checks in loops") | 436 DEFINE_BOOL(turbo_loop_stackcheck, true, "enable stack checks in loops") |
436 DEFINE_STRING(turbo_filter, "~~", "optimization filter for TurboFan compiler") | 437 DEFINE_STRING(turbo_filter, "~~", "optimization filter for TurboFan compiler") |
437 DEFINE_BOOL(trace_turbo, false, "trace generated TurboFan IR") | 438 DEFINE_BOOL(trace_turbo, false, "trace generated TurboFan IR") |
438 DEFINE_BOOL(trace_turbo_graph, false, "trace generated TurboFan graphs") | 439 DEFINE_BOOL(trace_turbo_graph, false, "trace generated TurboFan graphs") |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
480 DEFINE_BOOL(turbo_loop_variable, false, "Turbofan loop variable optimization") | 481 DEFINE_BOOL(turbo_loop_variable, false, "Turbofan loop variable optimization") |
481 DEFINE_BOOL(turbo_cf_optimization, true, "optimize control flow in TurboFan") | 482 DEFINE_BOOL(turbo_cf_optimization, true, "optimize control flow in TurboFan") |
482 DEFINE_BOOL(turbo_frame_elision, true, "elide frames in TurboFan") | 483 DEFINE_BOOL(turbo_frame_elision, true, "elide frames in TurboFan") |
483 DEFINE_BOOL(turbo_cache_shared_code, true, "cache context-independent code") | 484 DEFINE_BOOL(turbo_cache_shared_code, true, "cache context-independent code") |
484 DEFINE_BOOL(turbo_preserve_shared_code, false, "keep context-independent code") | 485 DEFINE_BOOL(turbo_preserve_shared_code, false, "keep context-independent code") |
485 DEFINE_BOOL(turbo_escape, false, "enable escape analysis") | 486 DEFINE_BOOL(turbo_escape, false, "enable escape analysis") |
486 DEFINE_BOOL(turbo_instruction_scheduling, false, | 487 DEFINE_BOOL(turbo_instruction_scheduling, false, |
487 "enable instruction scheduling in TurboFan") | 488 "enable instruction scheduling in TurboFan") |
488 DEFINE_BOOL(turbo_stress_instruction_scheduling, false, | 489 DEFINE_BOOL(turbo_stress_instruction_scheduling, false, |
489 "randomly schedule instructions to stress dependency tracking") | 490 "randomly schedule instructions to stress dependency tracking") |
490 DEFINE_BOOL(turbo_store_elimination, false, | 491 DEFINE_BOOL(turbo_store_elimination, true, |
491 "enable store-store elimination in TurboFan") | 492 "enable store-store elimination in TurboFan") |
492 | 493 |
493 // Flags to help platform porters | 494 // Flags to help platform porters |
494 DEFINE_BOOL(minimal, false, | 495 DEFINE_BOOL(minimal, false, |
495 "simplifies execution model to make porting " | 496 "simplifies execution model to make porting " |
496 "easier (e.g. always use Ignition, never use Crankshaft") | 497 "easier (e.g. always use Ignition, never use Crankshaft") |
497 DEFINE_IMPLICATION(minimal, ignition) | 498 DEFINE_IMPLICATION(minimal, ignition) |
498 DEFINE_NEG_IMPLICATION(minimal, crankshaft) | 499 DEFINE_NEG_IMPLICATION(minimal, crankshaft) |
499 DEFINE_NEG_IMPLICATION(minimal, use_ic) | 500 DEFINE_NEG_IMPLICATION(minimal, use_ic) |
500 | 501 |
(...skipping 706 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1207 #undef DEFINE_ALIAS_FLOAT | 1208 #undef DEFINE_ALIAS_FLOAT |
1208 #undef DEFINE_ALIAS_ARGS | 1209 #undef DEFINE_ALIAS_ARGS |
1209 | 1210 |
1210 #undef FLAG_MODE_DECLARE | 1211 #undef FLAG_MODE_DECLARE |
1211 #undef FLAG_MODE_DEFINE | 1212 #undef FLAG_MODE_DEFINE |
1212 #undef FLAG_MODE_DEFINE_DEFAULTS | 1213 #undef FLAG_MODE_DEFINE_DEFAULTS |
1213 #undef FLAG_MODE_META | 1214 #undef FLAG_MODE_META |
1214 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 1215 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
1215 | 1216 |
1216 #undef COMMA | 1217 #undef COMMA |
OLD | NEW |