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 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
377 DEFINE_BOOL(concurrent_osr, true, "concurrent on-stack replacement") | 377 DEFINE_BOOL(concurrent_osr, true, "concurrent on-stack replacement") |
378 DEFINE_IMPLICATION(concurrent_osr, concurrent_recompilation) | 378 DEFINE_IMPLICATION(concurrent_osr, concurrent_recompilation) |
379 | 379 |
380 DEFINE_BOOL(omit_map_checks_for_leaf_maps, true, | 380 DEFINE_BOOL(omit_map_checks_for_leaf_maps, true, |
381 "do not emit check maps for constant values that have a leaf map, " | 381 "do not emit check maps for constant values that have a leaf map, " |
382 "deoptimize the optimized code if the layout of the maps changes.") | 382 "deoptimize the optimized code if the layout of the maps changes.") |
383 | 383 |
384 // Flags for TurboFan. | 384 // Flags for TurboFan. |
385 DEFINE_BOOL(turbo, false, "enable TurboFan compiler") | 385 DEFINE_BOOL(turbo, false, "enable TurboFan compiler") |
386 DEFINE_BOOL(turbo_greedy_regalloc, false, "use the greedy register allocator") | 386 DEFINE_BOOL(turbo_greedy_regalloc, false, "use the greedy register allocator") |
387 DEFINE_IMPLICATION(turbo, turbo_deoptimization) | 387 DEFINE_IMPLICATION(turbo, turbo_asm_deoptimization) |
388 DEFINE_STRING(turbo_filter, "~~", "optimization filter for TurboFan compiler") | 388 DEFINE_STRING(turbo_filter, "~~", "optimization filter for TurboFan compiler") |
389 DEFINE_BOOL(trace_turbo, false, "trace generated TurboFan IR") | 389 DEFINE_BOOL(trace_turbo, false, "trace generated TurboFan IR") |
390 DEFINE_BOOL(trace_turbo_graph, false, "trace generated TurboFan graphs") | 390 DEFINE_BOOL(trace_turbo_graph, false, "trace generated TurboFan graphs") |
391 DEFINE_IMPLICATION(trace_turbo_graph, trace_turbo) | 391 DEFINE_IMPLICATION(trace_turbo_graph, trace_turbo) |
392 DEFINE_STRING(trace_turbo_cfg_file, NULL, | 392 DEFINE_STRING(trace_turbo_cfg_file, NULL, |
393 "trace turbo cfg graph (for C1 visualizer) to a given file name") | 393 "trace turbo cfg graph (for C1 visualizer) to a given file name") |
394 DEFINE_BOOL(trace_turbo_types, true, "trace TurboFan's types") | 394 DEFINE_BOOL(trace_turbo_types, true, "trace TurboFan's types") |
395 DEFINE_BOOL(trace_turbo_scheduler, false, "trace TurboFan's scheduler") | 395 DEFINE_BOOL(trace_turbo_scheduler, false, "trace TurboFan's scheduler") |
396 DEFINE_BOOL(trace_turbo_reduction, false, "trace TurboFan's various reducers") | 396 DEFINE_BOOL(trace_turbo_reduction, false, "trace TurboFan's various reducers") |
397 DEFINE_BOOL(trace_turbo_jt, false, "trace TurboFan's jump threading") | 397 DEFINE_BOOL(trace_turbo_jt, false, "trace TurboFan's jump threading") |
398 DEFINE_BOOL(trace_turbo_ceq, false, "trace TurboFan's control equivalence") | 398 DEFINE_BOOL(trace_turbo_ceq, false, "trace TurboFan's control equivalence") |
399 DEFINE_BOOL(turbo_asm, true, "enable TurboFan for asm.js code") | 399 DEFINE_BOOL(turbo_asm, true, "enable TurboFan for asm.js code") |
| 400 DEFINE_BOOL(turbo_asm_deoptimization, false, |
| 401 "enable deoptimization in TurboFan for asm.js code") |
400 DEFINE_BOOL(turbo_verify, DEBUG_BOOL, "verify TurboFan graphs at each phase") | 402 DEFINE_BOOL(turbo_verify, DEBUG_BOOL, "verify TurboFan graphs at each phase") |
401 DEFINE_BOOL(turbo_stats, false, "print TurboFan statistics") | 403 DEFINE_BOOL(turbo_stats, false, "print TurboFan statistics") |
402 DEFINE_BOOL(turbo_splitting, true, "split nodes during scheduling in TurboFan") | 404 DEFINE_BOOL(turbo_splitting, true, "split nodes during scheduling in TurboFan") |
403 DEFINE_BOOL(turbo_types, true, "use typed lowering in TurboFan") | 405 DEFINE_BOOL(turbo_types, true, "use typed lowering in TurboFan") |
404 DEFINE_BOOL(turbo_type_feedback, false, "use type feedback in TurboFan") | 406 DEFINE_BOOL(turbo_type_feedback, false, "use type feedback in TurboFan") |
405 DEFINE_BOOL(turbo_allocate, false, "enable inline allocations in TurboFan") | 407 DEFINE_BOOL(turbo_allocate, false, "enable inline allocations in TurboFan") |
406 DEFINE_BOOL(turbo_source_positions, false, | 408 DEFINE_BOOL(turbo_source_positions, false, |
407 "track source code positions when building TurboFan IR") | 409 "track source code positions when building TurboFan IR") |
408 DEFINE_IMPLICATION(trace_turbo, turbo_source_positions) | 410 DEFINE_IMPLICATION(trace_turbo, turbo_source_positions) |
409 DEFINE_BOOL(context_specialization, false, | 411 DEFINE_BOOL(context_specialization, false, |
410 "enable context specialization in TurboFan") | 412 "enable context specialization in TurboFan") |
411 DEFINE_BOOL(turbo_deoptimization, false, "enable deoptimization in TurboFan") | |
412 DEFINE_BOOL(turbo_inlining, false, "enable inlining in TurboFan") | 413 DEFINE_BOOL(turbo_inlining, false, "enable inlining in TurboFan") |
413 DEFINE_BOOL(trace_turbo_inlining, false, "trace TurboFan inlining") | 414 DEFINE_BOOL(trace_turbo_inlining, false, "trace TurboFan inlining") |
414 DEFINE_BOOL(loop_assignment_analysis, true, "perform loop assignment analysis") | 415 DEFINE_BOOL(loop_assignment_analysis, true, "perform loop assignment analysis") |
415 DEFINE_BOOL(turbo_profiling, false, "enable profiling in TurboFan") | 416 DEFINE_BOOL(turbo_profiling, false, "enable profiling in TurboFan") |
416 DEFINE_BOOL(turbo_verify_allocation, DEBUG_BOOL, | 417 DEFINE_BOOL(turbo_verify_allocation, DEBUG_BOOL, |
417 "verify register allocation in TurboFan") | 418 "verify register allocation in TurboFan") |
418 DEFINE_BOOL(turbo_move_optimization, true, "optimize gap moves in TurboFan") | 419 DEFINE_BOOL(turbo_move_optimization, true, "optimize gap moves in TurboFan") |
419 DEFINE_BOOL(turbo_jt, true, "enable jump threading in TurboFan") | 420 DEFINE_BOOL(turbo_jt, true, "enable jump threading in TurboFan") |
420 DEFINE_BOOL(turbo_osr, true, "enable OSR in TurboFan") | 421 DEFINE_BOOL(turbo_osr, true, "enable OSR in TurboFan") |
421 DEFINE_BOOL(turbo_exceptions, false, "enable exception handling in TurboFan") | 422 DEFINE_BOOL(turbo_exceptions, false, "enable exception handling in TurboFan") |
(...skipping 643 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1065 #undef DEFINE_ALIAS_FLOAT | 1066 #undef DEFINE_ALIAS_FLOAT |
1066 #undef DEFINE_ALIAS_ARGS | 1067 #undef DEFINE_ALIAS_ARGS |
1067 | 1068 |
1068 #undef FLAG_MODE_DECLARE | 1069 #undef FLAG_MODE_DECLARE |
1069 #undef FLAG_MODE_DEFINE | 1070 #undef FLAG_MODE_DEFINE |
1070 #undef FLAG_MODE_DEFINE_DEFAULTS | 1071 #undef FLAG_MODE_DEFINE_DEFAULTS |
1071 #undef FLAG_MODE_META | 1072 #undef FLAG_MODE_META |
1072 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 1073 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
1073 | 1074 |
1074 #undef COMMA | 1075 #undef COMMA |
OLD | NEW |