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 237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
248 DEFINE_IMPLICATION(harmony, id) | 248 DEFINE_IMPLICATION(harmony, id) |
249 HARMONY_STAGED(FLAG_STAGED_FEATURES) | 249 HARMONY_STAGED(FLAG_STAGED_FEATURES) |
250 #undef FLAG_STAGED_FEATURES | 250 #undef FLAG_STAGED_FEATURES |
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 // Flags for future configurations. |
258 DEFINE_BOOL(future, false, | 259 DEFINE_BOOL(future, false, |
259 "Implies all staged features that we want to ship in the " | 260 "Implies all staged features that we want to ship in the " |
260 "not-too-far future") | 261 "not-too-far future") |
261 DEFINE_IMPLICATION(future, ignition_staging) | 262 DEFINE_IMPLICATION(future, ignition_staging) |
262 | 263 |
| 264 DEFINE_BOOL(ignition_staging, false, "use ignition with all staged features") |
| 265 DEFINE_IMPLICATION(ignition_staging, ignition) |
| 266 DEFINE_IMPLICATION(ignition_staging, compiler_dispatcher) |
| 267 DEFINE_IMPLICATION(ignition_staging, validate_asm) |
| 268 |
263 // Flags for experimental implementation features. | 269 // Flags for experimental implementation features. |
264 DEFINE_BOOL(allocation_site_pretenuring, true, | 270 DEFINE_BOOL(allocation_site_pretenuring, true, |
265 "pretenure with allocation sites") | 271 "pretenure with allocation sites") |
266 DEFINE_BOOL(page_promotion, true, "promote pages based on utilization") | 272 DEFINE_BOOL(page_promotion, true, "promote pages based on utilization") |
267 DEFINE_INT(page_promotion_threshold, 70, | 273 DEFINE_INT(page_promotion_threshold, 70, |
268 "min percentage of live bytes on a page to enable fast evacuation") | 274 "min percentage of live bytes on a page to enable fast evacuation") |
269 DEFINE_BOOL(trace_pretenuring, false, | 275 DEFINE_BOOL(trace_pretenuring, false, |
270 "trace pretenuring decisions of HAllocate instructions") | 276 "trace pretenuring decisions of HAllocate instructions") |
271 DEFINE_BOOL(trace_pretenuring_statistics, false, | 277 DEFINE_BOOL(trace_pretenuring_statistics, false, |
272 "trace allocation site pretenuring statistics") | 278 "trace allocation site pretenuring statistics") |
(...skipping 20 matching lines...) Expand all Loading... |
293 "speed") | 299 "speed") |
294 | 300 |
295 DEFINE_VALUE_IMPLICATION(optimize_for_size, max_semi_space_size, 1) | 301 DEFINE_VALUE_IMPLICATION(optimize_for_size, max_semi_space_size, 1) |
296 | 302 |
297 // Flags for data representation optimizations | 303 // Flags for data representation optimizations |
298 DEFINE_BOOL(unbox_double_arrays, true, "automatically unbox arrays of doubles") | 304 DEFINE_BOOL(unbox_double_arrays, true, "automatically unbox arrays of doubles") |
299 DEFINE_BOOL(string_slices, true, "use string slices") | 305 DEFINE_BOOL(string_slices, true, "use string slices") |
300 | 306 |
301 // Flags for Ignition. | 307 // Flags for Ignition. |
302 DEFINE_BOOL(ignition, false, "use ignition interpreter") | 308 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") | 309 DEFINE_STRING(ignition_filter, "*", "filter for ignition interpreter") |
307 DEFINE_BOOL(ignition_deadcode, true, | 310 DEFINE_BOOL(ignition_deadcode, true, |
308 "use ignition dead code elimination optimizer") | 311 "use ignition dead code elimination optimizer") |
309 DEFINE_BOOL(ignition_osr, true, "enable support for OSR from ignition code") | 312 DEFINE_BOOL(ignition_osr, true, "enable support for OSR from ignition code") |
310 DEFINE_BOOL(ignition_peephole, true, "use ignition peephole optimizer") | 313 DEFINE_BOOL(ignition_peephole, true, "use ignition peephole optimizer") |
311 DEFINE_BOOL(ignition_reo, true, "use ignition register equivalence optimizer") | 314 DEFINE_BOOL(ignition_reo, true, "use ignition register equivalence optimizer") |
312 DEFINE_BOOL(ignition_filter_expression_positions, true, | 315 DEFINE_BOOL(ignition_filter_expression_positions, true, |
313 "filter expression positions before the bytecode pipeline") | 316 "filter expression positions before the bytecode pipeline") |
314 DEFINE_BOOL(print_bytecode, false, | 317 DEFINE_BOOL(print_bytecode, false, |
315 "print bytecode generated by ignition interpreter") | 318 "print bytecode generated by ignition interpreter") |
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
511 "start function for WASM text generation (inclusive)") | 514 "start function for WASM text generation (inclusive)") |
512 DEFINE_INT(trace_wasm_text_end, 0, | 515 DEFINE_INT(trace_wasm_text_end, 0, |
513 "end function for WASM text generation (exclusive)") | 516 "end function for WASM text generation (exclusive)") |
514 DEFINE_INT(skip_compiling_wasm_funcs, 0, "start compiling at function N") | 517 DEFINE_INT(skip_compiling_wasm_funcs, 0, "start compiling at function N") |
515 DEFINE_BOOL(wasm_break_on_decoder_error, false, | 518 DEFINE_BOOL(wasm_break_on_decoder_error, false, |
516 "debug break when wasm decoder encounters an error") | 519 "debug break when wasm decoder encounters an error") |
517 DEFINE_BOOL(wasm_loop_assignment_analysis, true, | 520 DEFINE_BOOL(wasm_loop_assignment_analysis, true, |
518 "perform loop assignment analysis for WASM") | 521 "perform loop assignment analysis for WASM") |
519 | 522 |
520 DEFINE_BOOL(validate_asm, false, "validate asm.js modules before compiling") | 523 DEFINE_BOOL(validate_asm, false, "validate asm.js modules before compiling") |
521 DEFINE_IMPLICATION(ignition_staging, validate_asm) | |
522 DEFINE_BOOL(suppress_asm_messages, false, | 524 DEFINE_BOOL(suppress_asm_messages, false, |
523 "don't emit asm.js related messages (for golden file testing)") | 525 "don't emit asm.js related messages (for golden file testing)") |
524 DEFINE_BOOL(trace_asm_time, false, "log asm.js timing info to the console") | 526 DEFINE_BOOL(trace_asm_time, false, "log asm.js timing info to the console") |
525 | 527 |
526 DEFINE_BOOL(dump_wasm_module, false, "dump WASM module bytes") | 528 DEFINE_BOOL(dump_wasm_module, false, "dump WASM module bytes") |
527 DEFINE_STRING(dump_wasm_module_path, NULL, "directory to dump wasm modules to") | 529 DEFINE_STRING(dump_wasm_module_path, NULL, "directory to dump wasm modules to") |
528 | 530 |
529 DEFINE_INT(typed_array_max_size_in_heap, 64, | 531 DEFINE_INT(typed_array_max_size_in_heap, 64, |
530 "threshold for in-heap typed array") | 532 "threshold for in-heap typed array") |
531 | 533 |
(...skipping 746 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1278 #undef DEFINE_ALIAS_FLOAT | 1280 #undef DEFINE_ALIAS_FLOAT |
1279 #undef DEFINE_ALIAS_ARGS | 1281 #undef DEFINE_ALIAS_ARGS |
1280 | 1282 |
1281 #undef FLAG_MODE_DECLARE | 1283 #undef FLAG_MODE_DECLARE |
1282 #undef FLAG_MODE_DEFINE | 1284 #undef FLAG_MODE_DEFINE |
1283 #undef FLAG_MODE_DEFINE_DEFAULTS | 1285 #undef FLAG_MODE_DEFINE_DEFAULTS |
1284 #undef FLAG_MODE_META | 1286 #undef FLAG_MODE_META |
1285 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 1287 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
1286 | 1288 |
1287 #undef COMMA | 1289 #undef COMMA |
OLD | NEW |