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 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
251 | 251 |
252 #define FLAG_SHIPPING_FEATURES(id, description) \ | 252 #define FLAG_SHIPPING_FEATURES(id, description) \ |
253 DEFINE_BOOL(id, true, "enable " #description) \ | 253 DEFINE_BOOL(id, true, "enable " #description) \ |
254 DEFINE_NEG_NEG_IMPLICATION(harmony_shipping, id) | 254 DEFINE_NEG_NEG_IMPLICATION(harmony_shipping, id) |
255 HARMONY_SHIPPING(FLAG_SHIPPING_FEATURES) | 255 HARMONY_SHIPPING(FLAG_SHIPPING_FEATURES) |
256 #undef FLAG_SHIPPING_FEATURES | 256 #undef FLAG_SHIPPING_FEATURES |
257 | 257 |
258 DEFINE_BOOL(future, false, | 258 DEFINE_BOOL(future, false, |
259 "Implies all staged features that we want to ship in the " | 259 "Implies all staged features that we want to ship in the " |
260 "not-too-far future") | 260 "not-too-far future") |
261 DEFINE_IMPLICATION(future, ignition_staging) | 261 DEFINE_IMPLICATION(future, turbo) |
| 262 |
| 263 DEFINE_IMPLICATION(turbo, ignition_staging) |
| 264 |
| 265 // TODO(rmcilroy): Remove ignition-staging and set these implications directly |
| 266 // with the turbo flag. |
| 267 DEFINE_BOOL(ignition_staging, false, "use ignition with all staged features") |
| 268 DEFINE_IMPLICATION(ignition_staging, ignition) |
| 269 DEFINE_IMPLICATION(ignition_staging, compiler_dispatcher) |
| 270 DEFINE_IMPLICATION(ignition_staging, validate_asm) |
262 | 271 |
263 // Flags for experimental implementation features. | 272 // Flags for experimental implementation features. |
264 DEFINE_BOOL(allocation_site_pretenuring, true, | 273 DEFINE_BOOL(allocation_site_pretenuring, true, |
265 "pretenure with allocation sites") | 274 "pretenure with allocation sites") |
266 DEFINE_BOOL(page_promotion, true, "promote pages based on utilization") | 275 DEFINE_BOOL(page_promotion, true, "promote pages based on utilization") |
267 DEFINE_INT(page_promotion_threshold, 70, | 276 DEFINE_INT(page_promotion_threshold, 70, |
268 "min percentage of live bytes on a page to enable fast evacuation") | 277 "min percentage of live bytes on a page to enable fast evacuation") |
269 DEFINE_BOOL(trace_pretenuring, false, | 278 DEFINE_BOOL(trace_pretenuring, false, |
270 "trace pretenuring decisions of HAllocate instructions") | 279 "trace pretenuring decisions of HAllocate instructions") |
271 DEFINE_BOOL(trace_pretenuring_statistics, false, | 280 DEFINE_BOOL(trace_pretenuring_statistics, false, |
(...skipping 21 matching lines...) Expand all Loading... |
293 "speed") | 302 "speed") |
294 | 303 |
295 DEFINE_VALUE_IMPLICATION(optimize_for_size, max_semi_space_size, 1) | 304 DEFINE_VALUE_IMPLICATION(optimize_for_size, max_semi_space_size, 1) |
296 | 305 |
297 // Flags for data representation optimizations | 306 // Flags for data representation optimizations |
298 DEFINE_BOOL(unbox_double_arrays, true, "automatically unbox arrays of doubles") | 307 DEFINE_BOOL(unbox_double_arrays, true, "automatically unbox arrays of doubles") |
299 DEFINE_BOOL(string_slices, true, "use string slices") | 308 DEFINE_BOOL(string_slices, true, "use string slices") |
300 | 309 |
301 // Flags for Ignition. | 310 // Flags for Ignition. |
302 DEFINE_BOOL(ignition, false, "use ignition interpreter") | 311 DEFINE_BOOL(ignition, false, "use ignition interpreter") |
303 DEFINE_BOOL(ignition_staging, false, "use ignition with all staged features") | |
304 DEFINE_IMPLICATION(ignition_staging, ignition) | |
305 DEFINE_IMPLICATION(ignition_staging, compiler_dispatcher) | |
306 DEFINE_STRING(ignition_filter, "*", "filter for ignition interpreter") | 312 DEFINE_STRING(ignition_filter, "*", "filter for ignition interpreter") |
307 DEFINE_BOOL(ignition_deadcode, true, | 313 DEFINE_BOOL(ignition_deadcode, true, |
308 "use ignition dead code elimination optimizer") | 314 "use ignition dead code elimination optimizer") |
309 DEFINE_BOOL(ignition_osr, true, "enable support for OSR from ignition code") | 315 DEFINE_BOOL(ignition_osr, true, "enable support for OSR from ignition code") |
310 DEFINE_BOOL(ignition_peephole, true, "use ignition peephole optimizer") | 316 DEFINE_BOOL(ignition_peephole, true, "use ignition peephole optimizer") |
311 DEFINE_BOOL(ignition_reo, true, "use ignition register equivalence optimizer") | 317 DEFINE_BOOL(ignition_reo, true, "use ignition register equivalence optimizer") |
312 DEFINE_BOOL(ignition_filter_expression_positions, true, | 318 DEFINE_BOOL(ignition_filter_expression_positions, true, |
313 "filter expression positions before the bytecode pipeline") | 319 "filter expression positions before the bytecode pipeline") |
314 DEFINE_BOOL(print_bytecode, false, | 320 DEFINE_BOOL(print_bytecode, false, |
315 "print bytecode generated by ignition interpreter") | 321 "print bytecode generated by ignition interpreter") |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
513 "start function for WASM text generation (inclusive)") | 519 "start function for WASM text generation (inclusive)") |
514 DEFINE_INT(trace_wasm_text_end, 0, | 520 DEFINE_INT(trace_wasm_text_end, 0, |
515 "end function for WASM text generation (exclusive)") | 521 "end function for WASM text generation (exclusive)") |
516 DEFINE_INT(skip_compiling_wasm_funcs, 0, "start compiling at function N") | 522 DEFINE_INT(skip_compiling_wasm_funcs, 0, "start compiling at function N") |
517 DEFINE_BOOL(wasm_break_on_decoder_error, false, | 523 DEFINE_BOOL(wasm_break_on_decoder_error, false, |
518 "debug break when wasm decoder encounters an error") | 524 "debug break when wasm decoder encounters an error") |
519 DEFINE_BOOL(wasm_loop_assignment_analysis, true, | 525 DEFINE_BOOL(wasm_loop_assignment_analysis, true, |
520 "perform loop assignment analysis for WASM") | 526 "perform loop assignment analysis for WASM") |
521 | 527 |
522 DEFINE_BOOL(validate_asm, false, "validate asm.js modules before compiling") | 528 DEFINE_BOOL(validate_asm, false, "validate asm.js modules before compiling") |
523 DEFINE_IMPLICATION(ignition_staging, validate_asm) | |
524 DEFINE_BOOL(suppress_asm_messages, false, | 529 DEFINE_BOOL(suppress_asm_messages, false, |
525 "don't emit asm.js related messages (for golden file testing)") | 530 "don't emit asm.js related messages (for golden file testing)") |
526 DEFINE_BOOL(trace_asm_time, false, "log asm.js timing info to the console") | 531 DEFINE_BOOL(trace_asm_time, false, "log asm.js timing info to the console") |
527 | 532 |
528 DEFINE_BOOL(dump_wasm_module, false, "dump WASM module bytes") | 533 DEFINE_BOOL(dump_wasm_module, false, "dump WASM module bytes") |
529 DEFINE_STRING(dump_wasm_module_path, NULL, "directory to dump wasm modules to") | 534 DEFINE_STRING(dump_wasm_module_path, NULL, "directory to dump wasm modules to") |
530 | 535 |
531 DEFINE_INT(typed_array_max_size_in_heap, 64, | 536 DEFINE_INT(typed_array_max_size_in_heap, 64, |
532 "threshold for in-heap typed array") | 537 "threshold for in-heap typed array") |
533 | 538 |
(...skipping 752 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1286 #undef DEFINE_ALIAS_FLOAT | 1291 #undef DEFINE_ALIAS_FLOAT |
1287 #undef DEFINE_ALIAS_ARGS | 1292 #undef DEFINE_ALIAS_ARGS |
1288 | 1293 |
1289 #undef FLAG_MODE_DECLARE | 1294 #undef FLAG_MODE_DECLARE |
1290 #undef FLAG_MODE_DEFINE | 1295 #undef FLAG_MODE_DEFINE |
1291 #undef FLAG_MODE_DEFINE_DEFAULTS | 1296 #undef FLAG_MODE_DEFINE_DEFAULTS |
1292 #undef FLAG_MODE_META | 1297 #undef FLAG_MODE_META |
1293 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 1298 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
1294 | 1299 |
1295 #undef COMMA | 1300 #undef COMMA |
OLD | NEW |